genmux API 现已全面开放。 查看文档 →
genmux API

博客

genmux MCP 服务器:在 Claude、Cursor 和 OpenCode 里出图

2 分钟阅读作者 genmux API Team


Model Context Protocol(MCP)是把一组工具交给 AI 助手的标准做法:一个小服务器暴露出函数、资源和提示模板,任何 MCP 客户端——Claude Desktop、Claude Code、Cursor、OpenCode、Continue、Windsurf——都能在对话中途调用它们。@genmux/mcp 就是 genmux 的这个服务器:接上之后,「给价格页做一张 16:9 的主视觉,但先告诉我要花多少钱」就是你打给助手的一句话,而不是你要写的一段脚本。

安装:一条命令

服务器是一个 npm 包,用 npx 按需运行。唯一必填的配置是你的密钥:

bash
GENMUX_API_KEY=nb_live_... npx -y @genmux/mcp

环境变量:

变量默认值用途
GENMUX_API_KEY——(必填)你的 genmux 密钥;不会离开你的机器
GENMUX_API_BASEhttps://api.genmux.tech/v1指向预发环境时覆盖
GENMUX_OUTPUT_DIR./genmux-images当被要求保存时,generate_image 把文件写到哪里

你不用手动运行它;由客户端来启动。你要配置的是客户端。

各客户端代码片段

Claude Code 与 Claude Desktop

bash
claude mcp add genmux -e GENMUX_API_KEY=nb_live_... -- npx -y @genmux/mcp

Cursor —— 项目里的 .cursor/mcp.json(或 Cursor 设置里的全局那份):

json
{
  "mcpServers": {
    "genmux": {
      "command": "npx",
      "args": ["-y", "@genmux/mcp"],
      "env": { "GENMUX_API_KEY": "nb_live_..." }
    }
  }
}

OpenCode —— 在 opencode.json 里与 provider 块并列的一个 mcp 块:

json
{
  "mcp": {
    "genmux": {
      "type": "local",
      "command": ["npx", "-y", "@genmux/mcp"],
      "environment": { "GENMUX_API_KEY": "nb_live_..." }
    }
  }
}

Continue —— 写在 config.yaml 里:

yaml
mcpServers:
  - name: genmux
    command: npx
    args: ["-y", "@genmux/mcp"]
    env:
      GENMUX_API_KEY: nb_live_...

托管接入点,给没有 shell 的客户端

有些客户端无法拉起本地进程——浏览器里的助手、被严格管控的笔记本,或者不愿意把密钥散布到各处配置文件里的团队。对它们来说,同一个服务器以 Streamable HTTP 托管在 https://mcp.genmux.tech/mcp,用密钥作为 Bearer token 认证:

json
{
  "mcpServers": {
    "genmux": {
      "url": "https://mcp.genmux.tech/mcp",
      "headers": { "Authorization": "Bearer nb_live_..." }
    }
  }
}

在 Claude 的网页版和桌面版里,这对应一个填上该 URL 的「自定义连接器」。工具列表完全相同;区别只在密钥放在哪里。

服务器提供什么

工具——助手可以调用的:

工具作用
list_models带价格的目录;kind 可按图像/文本模型过滤
estimate_cost在真正执行之前,算出一个请求要花多少积分
generate_imagemodel、prompt、resolution、ratio、n、negative_prompt、reference_images、save——提交任务、等待、返回 URL(打开 save 时还返回文件路径)
get_generation按 id 取一个任务:状态、产出、费用
list_generations账户最近的任务
account_balance剩余积分

资源——助手可以读进上下文的文档:genmux://docs/llms.txt、genmux://docs/openapi.yaml、genmux://models,以及 genmux://snippets/python、/node、/curl、/openai-sdk 下的代码片段。

提示模板——两个:integrate-genmux(带着助手把 API 接进你的代码库,会用到那些片段)和 pick-a-model(问对问题,然后推荐一个模型和分辨率)。

这里刻意没有 chat 工具。你的助手本身就是一个对话模型;如果你想在里面用 DeepSeek 或 Qwen3,那走的是兼容 OpenAI 的接口,而不是 MCP——见 OpenCode 或 Continue 那两篇。

一个完整例子

在 Claude Code 里接好服务器,项目中有一个 public/ 目录:

你: 我需要一张价格页的主视觉——干净的等距插画,堆叠的硬币正在化成像素,深色背景,16:9。 用 nanobanana。先估个价,我说可以之前别生成。

助手会用 {"model": "nanobanana", "resolution": "1K", "ratio": "16:9", "n": 1} 调用 estimate_cost,然后回报:

助手: Nano Banana 上一张 1K 图片是 2 积分(按 Scale 单价约 $0.025);2K 版本需要 Nano Banana Pro,6 积分。你的余额是 1,184 积分。要按 1K 生成吗?

你: 好,保存到 public/hero-pricing.png。

它会带着 save: true 调用 generate_image,GENMUX_OUTPUT_DIR 指向 public/,等待任务完成(Nano Banana 在 1K 下几秒就好),然后带回文件路径、任务 id 和任务记录里的实际扣费。如果你要三个变体(n: 3),估价就变成 6 积分≈ $0.073 张 1K Nano Banana,助手应该在花掉之前先说出来。

一个好客户端应有的表现是:请求较贵时它会主动估价;你把模型名说得含糊(「那个 Pro 的」)时它会用 list_models;写集成代码之前它会去读 genmux://snippets/node,而不是凭空猜请求结构。最后这个习惯,integrate-genmux 提示模板把它写明了。

为什么这比一段 shell 脚本好

你当然可以把 curl 调用包成脚本让助手去跑。MCP 服务器多给了三样脚本给不了的东西:模型无需文档就能理解的带类型工具结构、作为一等步骤存在的 estimate_cost(这样助手会在花钱前先问),以及模型可以读来写出正确代码的资源。失败的任务会自动退款,所以助手把提示词写错不花钱——但助手在你只想要一张时生成了十张 4K 图,正是 estimate_cost 存在的理由。

开始使用

带上你的密钥执行 npx -y @genmux/mcp,配上上面任意一段客户端代码片段,你的助手就能列出模型、报出价格并生成图片,用的还是给 DeepSeek 和 Qwen3 付费的那个余额。模型详情和各分辨率价格见 Nano Banana 页面和价格页;MCP 页面保持着当前的工具列表和客户端片段,服务器封装的那套 REST API 记录在文档里。

关于作者

作者 genmux API Team — genmux API.

了解我们