SuperAPI AI 工具集

MCP-Bridge

MCP-Bridge 是一个中间件代理,提供兼容 OpenAI API 的端点,让任何现有的 OpenAI 兼容客户端无需显式支持 MCP(Model Context Protocol)即可调用 MCP 工具。它位于 OpenAI API 与推理引擎之间,接收请求后自动补充 MCP 服务器上所有工具的调用定义,转发给推理引擎生成工具调用,再由 MCP-Bridge 管理实际工具调用,最后把结果返回给推理引擎以生成最终回复。支持带与不带 MCP 的非流式聊天补全、带 MCP 的流式聊天补全,以及供外部客户端使用的 SSE 桥接。项目推荐用 Docker 安装,也支持手动安装,并支持通过 config.json 配置、API Key 鉴权。注意:Open WebUI 自 v0.6.31 起原生支持 MCP,因此该项目已被视为软弃用。

访问官网

工具介绍

MCP-Bridge 是一个中间件,用于在 OpenAI API 与 MCP(Model Context Protocol,模型上下文协议)工具之间建立桥接,使开发者能够通过 OpenAI API 接口使用 MCP 工具。它的目标是在任何 OpenAI 兼容客户端中使用任意 MCP 工具,而无需客户端本身显式支持 MCP。

用途 MCP-Bridge 提供一组与 OpenAI API 兼容的端点,用于与 MCP 工具交互。官方给出的示例包括让 Open WebUI 使用官方的 MCP fetch 工具。

主要能力(当前已实现的功能)

  • 带 MCP 的非流式聊天补全
  • 带 MCP 的流式聊天补全
  • 不带 MCP 的非流式补全
  • 面向外部客户端的 SSE 桥接

计划中的功能

  • 流式补全(streaming completions)尚未实现
  • 计划支持 MCP 资源(MCP resources)

工作原理 应用位于 OpenAI API 与推理引擎之间。传入请求会被修改,加入 MCP 服务器上所有可用 MCP 工具的工具定义;请求随后被转发至推理引擎,推理引擎利用这些工具定义生成工具调用。MCP-Bridge 接着管理对工具的实际调用,再把工具调用结果加入请求并再次返回给推理引擎,以便 LLM 生成回复。最后,回复返回给 OpenAI API。

使用方式 推荐使用 Docker 安装,并提供了示例 compose.yml。注意这需要一个支持工具调用的推理引擎;官方表示已在 vLLM 上测试成功,ollama 也应兼容。

Docker 安装步骤:

  1. 克隆仓库。
  2. 编辑 compose.yml 文件。
  3. 在 compose.yml 中添加对 config.json 文件的引用,可选任一方式:
    • 将 config.json 放到与 compose.yml 相同的目录并使用卷挂载(需要手动添加卷);
    • 在环境变量中添加一个 http url,从该 url 下载 config.json;
    • 将 config JSON 直接作为环境变量添加。
  4. 运行服务。

手动安装(不使用 Docker): 需要安装依赖并在根目录创建 config.json,然后手动运行应用。应用运行后,即可通过 OpenAI API 与之交互。可访问 http://yourserver:8000/docs 查看文档;其中有一个端点可列出服务器上所有可用的 MCP 工具,用于测试配置是否正确。

REST API 端点 MCP-Bridge 暴露多个 REST API 端点,用于与所有原生 MCP 原语交互,从而在不牺牲功能的前提下,把处理 MCP 服务器的复杂性外包给 MCP-Bridge。具体用法可查看 openapi 文档。

SSE 桥接 MCP-Bridge 还提供面向外部客户端的 SSE 桥接,使显式支持 MCP 的外部聊天应用可以把 MCP-Bridge 当作 MCP 服务器使用。将客户端指向 SSE 端点(http://yourserver:8000/mcp-server/sse)即可看到服务器上所有可用的 MCP 工具。这也便于测试配置是否正常,可使用 wong2/mcp-cli 测试:npx @wong2/mcp-cli --sse http://localhost:8000/mcp-server/sse。若想在 Claude Desktop 或其他仅支持 STDIO 的 MCP 客户端中使用这些工具,可借助 lightconetech/mcp-gateway 之类的工具。

配置 要添加新的 MCP 服务器,请编辑 config.json 文件。

API Key 鉴权 MCP-Bridge 支持 API key 鉴权以保护服务器。在 config.json 中配置后,请求 MCP-Bridge 服务器时需在 Authorization 头中以 Bearer token 形式携带 API key。如果 api_key 字段为空或配置中不存在,则跳过鉴权,以保持向后兼容。

适用场景 适合希望让已有的、不支持 MCP 的 OpenAI 兼容客户端(如 Open WebUI 等)使用 MCP 工具的场景,也适合通过 REST API 或 SSE 桥接在外部应用中集成 MCP 能力。

限制与注意事项

  • 流式补全(streaming completions)尚未实现。
  • MCP 资源支持仍在计划中。
  • 需要一个支持工具调用的推理引擎。
  • 项目正在寻找新的维护者,可通过 Discord 或提交 issue 联系。
  • 由于 Open WebUI 自 v0.6.31 起原生支持 MCP,官方认为 MCP-Bridge 现已处于软弃用(soft deprecated)状态。

项目采用 MIT 许可证。若遇到问题,可提交 issue 或加入 Discord;官方还提供了其他文档。