OpenAPI MCP Server

OpenAPI MCP Server

site icon
2025.04.29 0
TypeScriptAPI 代理自然语言交互开发工具开发效率
OpenAPI MCP Server 是一个基于 Model Context Protocol (MCP) 的代理服务器,用于将任何符合 OpenAPI v3.1 规范的 API 转换为 Claude Desktop 可以使用的工具。它允许用户通过自然语言与本地或远程的 API 进行交互,简化了 API 的测试和集成过程。
View on GitHub

Overview

基本能力

产品定位

OpenAPI MCP Server 是一个 API 代理工具,旨在通过自然语言简化 API 的测试、集成和文档探索。

核心功能

  1. API 工具转换:将 OpenAPI v3.1 规范的 API 端点转换为 Claude 可用的工具。
  2. 自然语言交互:允许用户通过自然语言命令与 API 交互,例如查询、上传文件等。
  3. 文件上传支持:支持处理 multipart/form-data 类型的文件上传请求。
  4. 程序化调用:提供 OpenAPIToMCPConverterHttpClient 类,支持以编程方式转换和调用 API。

适用场景

  1. 本地开发:测试和调试 API 端点,无需编写代码。
  2. API 集成:快速测试第三方 API 或原型化集成方案。
  3. 文档探索:通过自然语言提问了解 API 的功能和使用方式。

工具列表

  1. CLI 工具:用于测试 OpenAPI 端点的命令行工具,支持列出所有可用方法和调用特定方法。
  2. OpenAPIToMCPConverter:将 OpenAPI 规范转换为 MCP 工具格式的类。
  3. HttpClient:用于直接调用 API 的 HTTP 客户端类。

常见问题解答

  1. 支持哪些 OpenAPI 版本? 目前仅支持 OpenAPI v3.1。
  2. 文件上传的限制? 仅支持本地文件,不支持远程 URL。
  3. 如何处理大文件? 大文件会直接从磁盘流式传输,优化内存使用。

使用教程

使用依赖

  1. 确保已安装 Node.js 和 npm。
  2. 安装 pnpm(如果尚未安装): bash npm install -g pnpm

安装教程

  1. 克隆仓库或直接安装: bash pnpm install openapi-mcp-server
  2. 链接项目到全局 node_modules: bash npm link

调试方式

  1. 运行测试: bash pnpm test
  2. 构建项目: bash pnpm build
  3. 重启 Claude Desktop 以应用更改。

示例配置

claude_desktop_config.json 中添加以下配置:

{
  "mcpServers": {
    "petstore-api": {
      "command": "npx",
      "args": ["openapi-mcp-server", "/abs/path/to/petstore-openapi.json"]
    }
  }
}

许可证

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