📘 Overview:OpenCode MCP Overview →
你在远程服务器上用 OpenCode 排查一个 OOM 问题,看到一条不太熟悉的内核日志。以前只能复制错误信息、断开终端、切到本地浏览器搜索,再切回来。接上 Serp MCP Server 后,OpenCode 可以直接在终端里搜 Google,不需要离开命令行就能完成“看日志 → 搜资料 → 改代码”整条链路。
Google 搜索 MCP 适合在 OpenCode 里调试生产问题、做技术选型调研、查官方文档、找 GitHub issue,以及任何需要“搜索网页才能继续工作”的场景。
获取 API Token
使用 Google 搜索 MCP Server 之前,需要先准备一个 Ace Data Cloud API Token。OpenCode 和 Claude Code 共用一套 Token,获取流程一样:
- 打开 Ace Data Cloud 控制台 - 应用列表,获取您的 API Token,留作备用。
- 如果你尚未登录或注册,会自动跳转到登录页面;登录注册之后会自动返回当前页面。
- 首次申请时会有免费额度赠送,可以先免费体验 Google 搜索 MCP 服务。

一个 Token 可以使用 Ace Data Cloud 提供的全部 MCP Server,无需为 Google 搜索 单独申请。文档和截图里建议只展示脱敏形式,例如 YOUR_ACEDATACLOUD_API_KEY,不要把完整 Token 贴到公开仓库、Issue、截图或聊天记录里。
想用 Claude Desktop / Claude.ai 网页版直接 OAuth 一键授权?请看 Google 搜索 MCP 的 Claude.ai / Desktop 教程。
配置 OpenCode
OpenCode 用一份 opencode.json 描述所有 MCP Server,文件可以放在两处,按下面”作用范围”选一种即可。两种位置的字段结构完全相同,区别只是优先级。
强烈推荐先把 Token 写到环境变量里:
1 |
export ACEDATACLOUD_API_KEY="替换为你的真实 Token" |
然后在 opencode.json 里用 {env:ACEDATACLOUD_API_KEY} 占位符引用,避免真实 Token 写进文件。
全局:所有项目共用
文件位置:~/.config/opencode/opencode.json,适合”我自己的机器,一次配好,所有项目都能用”。
1 |
{ |
⚠️
"oauth": false不可省略。AceData 的 MCP Server 使用 Bearer Token 鉴权,不走 OAuth 流程;OpenCode 默认会把 401 当成 OAuth 挑战自动重定向,导致opencode mcp list出现SSE error: Non-200 status code (401)。显式声明"oauth": false让 OpenCode 直接以Authorization: Bearer ...调用,opencode mcp debug serp也会回显OAuth explicitly disabled,代表生效。
项目级:仅当前项目生效
文件位置:当前项目根目录下的 opencode.json,会覆盖全局配置。适合团队共享、单仓库定制,或者只在某个项目里临时启用某个 MCP。
1 |
{ |
如果项目级 opencode.json 会被提交到 Git,请确保用 {env:ACEDATACLOUD_API_KEY} 占位符而不是真实 Token,避免泄露。
💡 如果 Shell 里的
.env没有显式export,需要用set -a && source .env && set +a才能把变量传给 OpenCode 进程,否则opencode debug config会显示"Authorization": "Bearer "(占位符没解析)。
验证连接
配置后运行:
1 |
opencode mcp list |
看到 serp connected 即表示握手成功。失败时检查 ACEDATACLOUD_API_KEY 是否已导出、oauth 是否为 false,以及 Authorization 是否包含 Bearer 前缀。模型和工具 Schema 会持续变化,请从当前目录选择支持原生工具调用的模型。
典型场景
配置完成后,直接在 OpenCode 会话里用自然语言即可调用,无需先切到 /mcp:
调试生产问题
1 |
搜索 nginx 502 bad gateway response header too large 怎么解决 |
技术选型调研
1 |
搜索一下 2025 年 Python 异步 ORM 的性能对比,SQLAlchemy 2.0 async vs Tortoise ORM |
查官方文档
1 |
搜索 Kubernetes CronJob concurrencyPolicy 的官方文档,Forbid 和 Replace 的区别 |
工具列表
下表列出主要工具;可通过 curl -X POST https://serp.mcp.acedata.cloud/mcp -H 'Authorization: Bearer <token>' -H 'Accept: application/json' -H 'Content-Type: application/json' --data '{"jsonrpc":"2.0","id":1,"method":"tools/list"}' 获取当前完整清单:
| 工具 | 说明 |
|---|---|
| serp_google_search | Google 网页搜索,支持指定国家、语言、时间范围 |
| serp_google_images | Google 图片搜索 |
| serp_google_news | Google 新闻搜索 |
| serp_google_videos | Google 视频搜索 |
| serp_google_maps / serp_google_places | 地图 / 本地商户搜索 |