返回市场
开放API-MCP代理服务器

开放API-MCP代理服务器

作者:JacerOmri6 星标更新:2025-04-28

项目介绍

🤖 OpenAPI MCP Server

asciicast

一个命令行工具,可以将任何OpenAPI服务转换为模型上下文协议(MCP)服务器,从而实现与支持MCP规范的AI代理和工具的无缝集成。

[!NOTE] 此工具仍处于早期开发阶段。 发展路线图在这里

什么是模型上下文协议(MCP)?

模型上下文协议(MCP)是一种标准化协议,用于AI代理与外部工具和服务进行交互。它提供了一种统一的方式,使AI模型能够通过统一接口发现、理解和利用各种能力,从而更容易构建能够与多个服务交互的AI应用程序。

什么是OpenAPI?

OpenAPI(以前称为Swagger)是一个机器可读接口文件的规范,用于描述、生成、消费和可视化RESTful Web服务。它允许人类和计算机在无需访问源代码或额外文档的情况下发现和理解服务的能力。

关于此项目

此中间件充当OpenAPI服务和MCP客户端之间的桥梁。它:

  1. 接受一个OpenAPI规范文件作为输入
  2. 自动生成一个符合MCP的服务器
  3. 将传入请求代理到实际的OpenAPI服务
  4. 在MCP和REST约定之间进行转换

这使得任何具有OpenAPI规范的现有REST API都可以立即被理解MCP的AI代理访问,而无需对原始服务进行任何修改。

安装

npm install -g openapi-mcp-proxy

使用

npx openapi-mcp-proxy --spec ./path/to/openapi.yml --target http://your-api.com --port 3000

选项

  • -s, --spec <path>(必需):指向您的OpenAPI规范文件的路径(环境变量:OMP_OPENAPI_SPEC_FILE
  • -t, --target <url>(可选):API服务的目标URL(默认值:"http://localhost:8080",环境变量:`OMP_TARGET_BASE_URL`)
  • -p, --port <number>(可选):运行MCP服务器的端口(默认值:"3000",环境变量:PORT
  • -V, --version:显示版本号
  • -h, --help:显示命令帮助

示例

启动Petstore API的MCP服务器

npx openapi-mcp-proxy --spec resources/petstore.openapi.yml --target https://petstore.swagger.io/v2

测试

MCP Inspector

要测试您的MCP服务器,您可以使用模型上下文协议:

  1. 安装MCP Inspector:
npx @modelcontextprotocol/inspector
  1. 启动您的MCP服务器
  2. 导航到检查器的UI,并填写正确的服务器路径/mcp结尾,如 http://localhost:3000/mcp
  3. 现在您可以与您的MCP服务器进行交互。MCP Inspector将向您展示关于请求和响应的详细信息。

使用VS Code

使用VS Code内置的代理模式更容易:

  1. 打开VS Code并启用代理模式:
    • 按下 Cmd/Ctrl + Shift + P
    • 输入 "Toggle GitHub Copilot Agent Mode"
    • 选择 "Enable"
  2. 添加您的MCP服务器:
    • 按下 Cmd/Ctrl + Shift + P
    • 输入 "MCP: add Server"
    • 输入您的MCP服务器URL,如 http://localhost:3000/mcp /mcp结尾
  3. 您的GitHub Copilot聊天应该会识别新的工具!
  4. 现在您可以通过VS Code的代理界面与您的MCP服务器进行交互。尝试询问它“现在有多少宠物可用?”

有关如何使用VS Code中的MCP服务器的更多信息,请参阅这里

贡献

欢迎贡献!请随意提交拉取请求。 发展路线图在这里

许可证

MIT