OpenCode 本身擅长读代码、改文件、跑命令、解释报错;MCP 则让它在同一个终端会话里继续调用外部工具。AceData Cloud 把音乐、图片、视频、搜索、短链这些能力做成托管式远程 MCP Server,你不需要本地启动服务,也不需要为每个工具维护不同账号。
这篇是总览入口,重点帮你判断:OpenCode MCP 能做什么、该先接哪个服务、每个服务的详细教程在哪里。具体配置写法、Token 获取、global / project 两种位置的差异,放在下面每篇单服务文章里展开。
如果你的 OpenCode 还不能正常调用模型,请先看 OpenCode 终端配置教程。如果你想直接对接 Claude Code 而不是 OpenCode,请看 Claude Code MCP 总览。
为什么要在 OpenCode 里接 MCP
OpenCode 是完全开源的终端编程 Agent,它的强项是”原生终端体验 + 任意模型可换”。接入 MCP 之后,它可以把”写完代码 → 补 README 配图 → 做发布素材 → 查参考资料 → 压短链分享”这一长串本来需要切换浏览器和工具的工作,全部在终端会话里完成。
和 IDE 类工具相比,OpenCode 更适合:
- SSH 远程开发场景(无 GUI 也能完整使用 MCP)
- 用脚本/CI 把 MCP 调用拼接进自动化流程
- 喜欢键盘流、不希望被插件挡住屏幕的工程师
AceData Cloud 提供哪些 MCP Server
一个 AceData Cloud API Token 可以使用以下全部 MCP Server。你可以只接一个,也可以按工作流组合多个。
| MCP Server | 领域 | 适合做什么 | 工具数 | OpenCode 教程 |
|---|---|---|---|---|
| Suno | AI 音乐 | 写歌、配乐、歌词、翻唱、续写、人声分离 | 35 | 查看教程 |
| Midjourney | AI 绘画 | 文生图、混图、放大、编辑、生成视频 | 16 | 查看教程 |
| Flux | AI 绘画 | 快速出图、商用级图片、Kontext 图片编辑 | 6 | 查看教程 |
| Seedream | AI 绘画 | 中文 prompt 出图、商品图、海报、图片编辑 | 6 | 查看教程 |
| NanoBanana | AI 图片编辑 | 商品换景、虚拟试衣、人物/物体一致性编辑 | 4 | 查看教程 |
| Luma | AI 视频 | 文生视频、图生视频、视频延伸、首尾帧控制 | 8 | 查看教程 |
| Sora | AI 视频 | 高质量文生视频、图生视频、角色一致性 | 10 | 查看教程 |
| Veo | AI 视频 | Google Veo 视频、原生音频、1080p / 4K | 12 | 查看教程 |
| Seedance | AI 视频 | 动作视频、短视频、配音、竖屏素材 | 7 | 查看教程 |
| Google 搜索 | 实时搜索 | Google 网页、图片、新闻、地图、视频搜索 | 11 | 查看教程 |
| ShortURL | 效率工具 | 长链转短链、批量短链、分享链接整理 | 4 | 查看教程 |
上表的「工具数」是 2026-05-31 用 opencode mcp list + JSON-RPC tools/list 实测得到,11 个 MCP Server 共暴露 119 个工具。
推荐怎么选
如果你只是想先确认 MCP 能跑通,建议从 Google 搜索 MCP 或 ShortURL MCP 开始:调用快、结果直观、成本低。做内容和营销素材时,可以从 Flux / Seedream / Midjourney 里选一个图像服务;需要视频时再接 Luma / Sora / Veo / Seedance;需要音乐或 BGM 时接 Suno。
配置在哪里写
OpenCode 用同一份 opencode.json 描述供应商和 MCP。两种位置只是优先级不同:
- 全局:
~/.config/opencode/opencode.json,所有项目共用,适合”我自己的机器,一次配好”。 - 项目级:当前项目根目录下的
opencode.json,仅对该项目生效,会覆盖全局,适合团队共享或单仓库定制。
无论放在哪里,结构都是相同的,每个服务一段 mcp.<name> 配置:
1 |
{ |
字段说明:
| 字段 | 说明 |
|---|---|
type |
固定为 remote,代表远程托管 MCP Server |
url |
AceData 提供的对应服务地址 |
enabled |
是否启用,临时关闭某个 MCP 时改成 false 即可 |
oauth |
必须显式设为 false。AceData MCP 走 Bearer Token 鉴权,不走 OAuth;不写这一行时 OpenCode 会把 401 当成 OAuth 挑战,最终 opencode mcp list 报 SSE error: Non-200 status code (401) |
headers.Authorization |
Bearer <token>,推荐用 {env:ACEDATACLOUD_API_KEY} 占位符引用环境变量 |
{env:ACEDATACLOUD_API_KEY} 让 OpenCode 在启动时从环境变量里读取 Token,避免把真实 Token 直接写入文件。建议在 ~/.zshrc / ~/.bashrc 里 export ACEDATACLOUD_API_KEY="你的Token"。如果 Token 写在没有 export 的 .env 文件里,需要用 set -a && source .env && set +a 把它导出到 OpenCode 进程,否则 opencode debug config 会显示 "Authorization": "Bearer "(占位符未解析)。
配置示例里不会写完整 Token,只会用类似 357265014ad145fc8ab2.... 的形式展示。真实 Token 请只保存在你本机配置或私有环境变量中。
真实连通性验证
以下结果来自 OpenCode 1.15.13,在隔离临时目录中把 11 个 AceData MCP 同时写入 opencode.json,再运行 opencode mcp list 得到。Token 已脱敏(357265014ad145fc8ab2....),临时配置已删除。
1 |
$ opencode --version |
调试单个 MCP 连接:
1 |
opencode mcp debug shorturl |
选模型的实测建议
要在 OpenCode 中真正”对话 + 调用 MCP 工具”两件事一起做,模型选择有讲究。下面是用 AceData Token 实际测试得到的结论:
| 场景 | 推荐模型 | 说明 |
|---|---|---|
| 对话 + 大量 MCP 工具 | acedatacloud/gpt-5-mini 或 acedatacloud/gpt-5 |
实测可以正常发出工具调用,例如让 gpt-5 调用 shorturl_create 直接返回 https://surl.id/r/1uNdf1MEkM 短链 |
| 纯对话 / 阅读代码 / 不调用 MCP | acedatacloud/claude-sonnet-4-6、acedatacloud/claude-haiku-4-5-20251001 |
Claude 系列对自然语言任务表现更好 |
| 关掉 MCP、只做规划 | acedatacloud/claude-opus-4-7 |
适合架构、重构方案的深度思考 |
已知限制:当 opencode.json 中同时启用多个 MCP 时,Claude 系列模型容易在上游返回 Improperly formed request。原因是部分 MCP 工具的 JSON Schema(anyOf 等用法)超出了 Anthropic 接口的严格校验范围。要让 Claude 同时对话 + 调用工具,建议先在 opencode.json 中把暂时不用的 MCP 的 enabled 改成 false,只保留必要的几个;或者直接换成 OpenAI 系列模型作为对话模型。
常见工作流
终端里写 README 顺手生图
让 OpenCode 先读懂你新功能的 README 草稿,再调用 Midjourney / Flux / Seedream 生成 banner,最后把图片 URL 直接贴回 README。
远程服务器排查问题 + 搜资料
SSH 到服务器后启动 opencode,让它结合本地日志和 Google 搜索 MCP 找到匹配的社区帖子或 issue,再用 ShortURL MCP 把相关链接压成短链发到群里。
发版素材一条龙
让 OpenCode 根据 CHANGELOG 用 Suno 写一段 30 秒 BGM、用 Veo / Sora 生成预览视频、用 Flux 出一张主视觉,整个过程不离开终端。
下一步
从上面的表格里选一个服务进入单独教程,先在项目 opencode.json 里跑通单服务。确认 opencode mcp list 显示 ✓ connected 后,再决定是否把它升级到全局 ~/.config/opencode/opencode.json,让所有项目都能直接调用。