mcpo

mcpo

site icon
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运行MCPO
  • pip install mcpo: 通过Python安装MCPO
  • docker 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

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。