
mcpo

2025.04.28
0
PythonOpenAPI代理HTTP服务器MCP工具集成开发效率
MCPO是一个简单的代理工具,能够将任何MCP工具暴露为兼容OpenAPI的HTTP服务器,使其能够通过标准的RESTful OpenAPI进行访问。这样,您的工具就可以无缝地与LLM代理和期望OpenAPI服务器的应用程序一起工作。MCPO解决了原生MCP服务器通过原始stdio通信的安全性和兼容性问题,提供了安全、稳定和可扩展的解决方案,无需额外配置即可自动生成交互式文档。
View on GitHub
Overview
基本能力
产品定位
MCPO旨在简化MCP工具的HTTP服务器化过程,使其能够通过OpenAPI标准与各种工具和应用程序无缝集成。
核心功能
- 将MCP工具暴露为OpenAPI兼容的HTTP服务器
- 自动生成交互式文档
- 支持多种MCP服务器类型(如stdio和sse)
- 提供安全性和稳定性增强
- 支持通过配置文件管理多个MCP工具
适用场景
- 需要将MCP工具集成到OpenAPI兼容环境中的场景
- 需要为MCP工具提供HTTP接口的场景
- 需要自动生成交互式文档的场景
工具列表
uvx mcpo
: 使用uvx运行MCPOpip install mcpo
: 通过Python安装MCPOdocker run -p 8000:8000 ghcr.io/open-webui/mcpo:main
: 通过Docker运行MCPO
常见问题解答
- 为什么使用MCPO而不是原生MCP? MCPO解决了原生MCP服务器通过原始stdio通信的安全性和兼容性问题,提供了更安全、更稳定的解决方案。
- 如何运行MCPO? 可以通过uvx、pip或Docker运行MCPO,具体命令见安装教程。
使用教程
使用依赖
- Python 3.8+
- uv(可选,但推荐用于性能和打包)
安装教程
# 使用uvx运行
uvx mcpo --port 8000 --api-key "top-secret" -- your_mcp_server_command
# 使用Python安装
pip install mcpo
mcpo --port 8000 --api-key "top-secret" -- your_mcp_server_command
# 使用Docker运行
docker run -p 8000:8000 ghcr.io/open-webui/mcpo:main --api-key "top-secret" -- your_mcp_server_command
调试方式
# 运行测试
uv run pytest