MCP Chat 入门:把 IDE Agent 变成 OpenAI 兼容 API

发布于 4 小时前  14 次阅读


MCP Chat 把 IDE 里的 AI(Cursor、Copilot、Windsurf 等)接到 Web 聊天界面,并对外提供 OpenAI / Anthropic 兼容 API。核心思路:让 Agent 进入 chat() 长循环,外部通过浏览器或标准 API 反复交互,而 IDE 侧往往只消耗「一次会话」额度。

MCP Chat Web UI 界面
MCP Chat Web 聊天界面(项目截图)

它能做什么

  • 浏览器里和 IDE Agent 对话,不受 IDE 窗口限制
  • /v1/chat/completions 对接 QQ 机器人、飞书、Continue、自动化脚本
  • 一次 Agent 会话 + 循环 chat(),变成个人 AI API 服务
MCP Chat 架构示意
IDE ↔ MCP ↔ Web UI / OpenAI API 架构示意

三步上手

  1. 启动服务git clonepip install mcp[cli] websocketspython server.py(默认 8080 端口)
  2. 配置 IDE:在 Cursor 的 ~/.cursor/mcp.json 写入 MCP 地址,对 Agent 说「调用 get_prompt,再 chat 与我对话」
  3. 开始用:打开 Web UI,或通过 OpenAI API 发请求

OpenAI 兼容 API

当 IDE 正在 chat() 循环中时,可用标准 OpenAI SDK 或 curl:

curl

curl https://127.0.0.1:8080/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{"model":"cascade","messages":[{"role":"user","content":"你好"}]}'

Python

from openai import OpenAI
client = OpenAI(base_url="https://127.0.0.1:8080/v1", api_key="no-key")
r = client.chat.completions.create(
    model="cascade",
    messages=[{"role": "user", "content": "你好"}]
)
print(r.choices[0].message.content)

还支持流式响应、/v1/responses、Anthropic 格式 /v1/messages,以及 GET /v1/models 列出模型。

QQ 机器人对接示例
通过 NapCat + OpenAI API 接入 QQ 机器人(项目截图)

工作原理

  1. IDE 调用 MCP 工具 chat(ai_message),消息推到 Web,并阻塞等待用户回复。
  2. 用户(或 API)回复后,工具把内容返回 Agent;Agent 处理后再调用 chat()
  3. 外部 API 请求注入当前循环,Agent 回复后包装成 OpenAI/Anthropic JSON 返回。

注意:没有 IDE 在线跑 chat() 时,API 会报 No active IDE session。看历史可以,但要 AI 回复必须 Agent 在循环里。

可选鉴权

启动时设置 MCP_API_KEY=your-secret-key,客户端 api_key 填同一值即可。

与不同 IDE 的配合

  • GitHub Copilot Agent:工具调用次数可设很高,适合长期 chat 循环
  • Cursor Pro:有额度,超额可能降速但通常可继续
  • Windsurf:消耗 credits
  • Claude Code:按 token 计费

典型场景

  • 个人 Web 助手:手机/浏览器发需求,家里 IDE Agent 执行
  • QQ 机器人:NapCat 指向 mcp-chat 的 OpenAI API
  • 团队 Continue 插件:共用一台 Agent 机器
  • CI:代码审查、批量文档(需 Agent 在线)

小结

MCP Chat 把「IDE 里的一次 Agent 会话」变成可复用的聊天界面 + 标准 API。开源仓库:github.com/maile456/mcp-chat


信息来源github.com