Mcpo MCP Server

Mcpo MCP Server

mcpo是一款简单高效的代理工具,可将任何基于MCP协议的命令行工具快速转换为兼容OpenAPI的HTTP服务,实现标准化访问,便于与LLM代理和应用集成。

99 浏览
2025-12-13 发布

详细介绍

mcpo是一个专为MCP工具设计的代理服务工具,能够将任何遵循Model Context Protocol (MCP)协议的命令行工具即时转换为符合OpenAPI 3.0标准的HTTP服务。通过RESTful API方式暴露功能,使传统工具能无缝对接现代LLM应用和自动化流程。mcpo支持单命令代理和配置文件批量代理两种模式,具备自动文档生成、多工具并行代理、SSE流式支持和API密钥认证等核心功能。

核心功能

mcpo的核心功能包括:

  • OpenAPI自动转换:无需编写任何代码,自动将MCP工具转换为符合OpenAPI 3.0规范的HTTP服务。
  • 多工具并行代理:通过配置文件同时代理多个MCP工具,每个工具都有独立的API端点。
  • SSE流式支持:原生支持Server-Sent Events (SSE)协议的MCP工具,实现实时数据推送。
  • 开箱即用的安全:内置API密钥认证机制,保护服务端点不被未授权访问。
  • 自动文档生成:自动生成交互式Swagger UI文档,无需额外配置。

安装方法

mcpo可以通过Python的pip工具或uv工具进行安装。以下是具体的安装步骤:

pip install mcpo
# 或
uvx install mcpo

安装完成后,即可在命令行中使用mcpo命令。

使用方法

mcpo的使用非常简单,只需在命令行中指定要代理的MCP工具命令即可。以下是几种常见的使用方式:

mcpo --port 8000 --api-key 'your-key' -- your_mcp_tool --args

如果需要使用支持SSE的MCP服务器,可以指定服务器类型和端点:

mcpo --server-type sse --host your_sse_server_host:your_sse_server_port

此外,还可以通过配置文件管理多个工具:

mcpo --config servers.json

启动服务后,访问 http://localhost:8000/docs 即可查看自动生成的API文档。

使用示例

以下是两个具体的使用示例:

1. 时间服务代理

uvx mcpo --port 8000 -- uvx mcp-server-time --local-timez>

该命令将本地时间查询工具转换为API服务,可通过 GET / 获取当前上海时间。

2. 多工具配置

mcpo --config servers.json

通过配置文件 servers.json 同时代理多个工具,不同工具分别通过 /memory/time 等路径访问。

配置说明

mcpo支持多种配置选项,以下是常用参数说明:

  • --port:设置服务监听端口,如 8000
  • --api-key:设置API访问密钥,用于保护服务端点。
  • --server-type:指定服务器类型,可选值为 ssestandard(默认为 standard)。
  • --config:指定配置文件路径,用于批量代理多个工具。

使用场景

mcpo适用于以下场景:

  • 当需要将本地工具接入AI工作流或构建自动化管道时。
  • 需要为现有工具添加标准化API接口时。
  • 与Open WebUI等AI平台集成时。

注意事项

在使用mcpo时,需要注意以下几点:

  • mcpo作为代理层,不会影响原有工具的功能和逻辑。
  • 建议始终设置 --api-key 参数,并在客户端请求时携带 x-api-key 头以确保API访问安全。
  • mcpo完全支持Windows、macOS和Linux系统。

mcpo通过将MCP工具转换为标准的OpenAPI服务,提升了工具的可用性、安全性和互操作性,是构建现代AI工具链的重要工具。

openapi mcp restful api-proxy sse

相关服务推荐

查看更多