MCP 支持
本文说明如何快速配置并部署由 Open WebUI 提供的 MCP(Model Context Protocol)到 OpenAPI 的代理服务器(mcpo)。你将了解如何把基于 MCP 的 tool server 暴露为标准且熟悉的 OpenAPI endpoints,供终端用户与开发者使用。
本页介绍的是 mcpo,即 MCP-to-OpenAPI bridge。如果你想了解 Open WebUI 原生的 MCP 支持,请参阅 Model Context Protocol (MCP)。
如果你通过 API Key 或 Auth Token 将 Open WebUI 连接到这个代理,你必须在 Open WebUI Docker 配置中设置 WEBUI_SECRET_KEY。如果该 key 发生变化(例如容器重启后变化),Open WebUI 将无法解密为该工具保存的凭证。
📌 什么是 MCP 代理服务器?
MCP-to-OpenAPI proxy server 允许你通过标准 REST / OpenAPI API 直接使用基于 MCP(Model Context Protocol)实现的 tool servers,而无需接触陌生或复杂的自定义协议。如果你是终端用户或应用开发者,这意味着你可以通过熟悉的 REST 风格 endpoint,轻松访问强大的 MCP 工具能力。
💡 为什么使用 mcpo?
虽然 MCP tool servers 很强大也很灵活,但它们通常通过标准输入 / 输出(stdio)通信——也就是常常运行在你的本地机器上,并直接访问文件系统、环境变量与其他系统能力。
这既是优势,也是一种限制。
如果你希望把主界面(例如 Open WebUI)部署在云上,很快就会遇到一个问题:你的云端实例没法直接通过 stdio 与本机上的 MCP server 通信。
这正是 mcpo 发挥作用的地方,它提供了一个极具实用性的解决方案。
MCP servers 通常依赖原始 stdio 通信,而这种方式:
- 🔓 在跨环境时天然不够安全
- ❌ 与多数现代工具、UI 或平台不兼容
- 🧩 缺乏认证、文档和错误处理等关键能力
mcpo 则解决了这些问题:
- ✅ 可立即与现有 OpenAPI 工具、SDK 与 clients 兼容
- 🛡 用安全、可扩展、基于标准的 HTTP endpoints 封装你的工具
- 🧠 自动为每个工具生成交互式 OpenAPI 文档,无需配置
- 🔌 只使用普通 HTTP——不需要 socket 配置、daemon 编排或平台特定 glue code
所以,虽然一开始看起来 mcpo 像是“又多加了一层”,但实际上它简化了整体系统,同时给你带来:
- 更好的集成 ✅
- 更好的安全性 ✅
- 更好的可扩展性 ✅
- 更好的开发者与用户体验 ✅
✨ 借助 mcpo,你那些原本只能本地使用的 AI 工具,通常无需改动 server 代码,就能立刻变成适合云端部署、界面接入和互操作的能力。