OpenCode 对接 Flux MCP

OpenCode 对接 Flux MCP

💡 原文中文,约4000字,阅读约需10分钟。
📝

内容提要

本文介绍如何在OpenCode中配置Flux MCP Server,以调用Flux图像生成与编辑模型。需先获取Ace Data Cloud API Token,并在opencode.json中设置远程MCP,注意关闭OAuth并启用Bearer鉴权。配置成功后可用自然语言生成或编辑图片,建议使用OpenAI系列模型以确保工具调用稳定。

🔎

延伸解读

鉴权配置要点

OpenCode 默认将 401 响应视为 OAuth 挑战,而 AceData 的 Flux MCP 使用 Bearer Token 鉴权,因此必须在 opencode.json 中显式设置 "oauth": false,否则会出现 SSE error: Non-200 status code (401)。配置完成后,可通过 opencode mcp debug flux 验证,若输出 "OAuth explicitly disabled" 则表示生效。

Token 安全与作用域

建议将 API Token 写入环境变量,并在配置中使用 {env:ACEDATACLOUD_API_KEY} 占位符,避免明文泄露。全局配置位于 ~/.config/opencode/opencode.json,项目级配置位于项目根目录,后者会覆盖前者。若项目配置提交到 Git,务必使用占位符。注意 Shell 中需 export 变量,否则占位符无法解析。

模型选择建议

实测表明,在 OpenCode 中调用 Flux MCP 时,优先使用 OpenAI 系列模型(如 gpt-5-mini、gpt-5)可确保工具调用稳定。AceData 上的 Claude 系列模型通过 OpenAI 兼容接口暴露时,挂载多个 MCP 可能返回 "Improperly formed request" 错误,仅用于对话时则正常。

Q&A

如何在OpenCode中配置Flux MCP Server?

首先获取Ace Data Cloud API Token,然后将其写入环境变量ACEDATACLOUD_API_KEY。接着在opencode.json中配置远程MCP,设置type为remote,url为https://flux.mcp.acedata.cloud/mcp,enabled为true,oauth为false,并在headers中添加Authorization: Bearer {env:ACEDATACLOUD_API_KEY}。配置文件可放在全局(~/.config/opencode/opencode.json)或项目根目录。

为什么在OpenCode中配置Flux MCP时需要设置oauth为false?

因为AceData的MCP Server使用Bearer Token鉴权,不走OAuth流程。如果不设置oauth为false,OpenCode默认会把401响应当作OAuth挑战并自动重定向,导致连接错误(如SSE error: Non-200 status code (401))。显式设置oauth为false后,OpenCode会直接使用Authorization: Bearer头进行调用。

Flux MCP Server提供哪些工具?

Flux MCP Server实测暴露6个工具,主要工具包括flux_generate_image(文生图,支持Flux pro/dev/ultra)和flux_edit_image(对已有图按提示词编辑,支持Flux Kontext pro/max)。

在OpenCode中使用Flux MCP时,推荐使用哪些模型?

推荐使用OpenAI系列模型,如acedatacloud/gpt-5-mini或acedatacloud/gpt-5,因为Claude系列模型通过OpenAI兼容接口暴露时,工具调用经常返回Improperly formed request错误。只做对话不调用工具时,Claude模型可以正常使用。

如何获取Ace Data Cloud API Token?

打开Ace Data Cloud控制台的应用列表,获取API Token。如果未登录或注册,会自动跳转到登录页面,登录注册后返回当前页面。首次申请有免费额度赠送。一个Token可以使用AceData Cloud提供的全部11个MCP Server,无需为Flux单独申请。

Flux MCP可以用于哪些典型场景?

Flux MCP适合生成产品hero图、写实人像、商业广告素材,以及通过Kontext模型进行图片编辑,如换背景、换风格、改字。在OpenCode中可以用自然语言直接调用,例如生成赛博朋克风格城市夜景、将图片改成水彩画风格、生成产品hero图等。

如何验证Flux MCP是否配置成功?

运行opencode mcp list,如果看到✓ flux connected,说明接入成功。也可以运行opencode mcp debug flux查看详细信息,成功时日志会输出service=mcp key=flux transport=StreamableHTTP connected和toolCount=6。如果显示✗或unauthorized,需检查API Key设置、Token完整性及Authorization前缀。

如何安全地管理API Token,避免泄露?

强烈推荐将Token写入环境变量ACEDATACLOUD_API_KEY,然后在opencode.json中使用{env:ACEDATACLOUD_API_KEY}占位符引用,避免将真实Token写入文件。如果项目级opencode.json会提交到Git,务必使用占位符。另外,不要在公开仓库、Issue、截图或聊天记录中展示完整Token。

🏷️

标签

➡️

继续阅读