项目简介
'openapi-mcp-converter' 是一个工具,旨在将 OpenAPI 3.0 规范自动化转换为 Model Context Protocol (MCP) 服务器实例。转换后的 MCP 服务器可以无缝对接 LLM 客户端,将 OpenAPI 中定义的 API 接口作为工具提供给 LLM 使用,实现通过 MCP 协议调用外部 API 的能力。
主要功能点
- 自动化转换:能够自动解析和转换 OpenAPI 3.0 规范,无需手动编写 MCP 工具定义。
- 类型安全:基于 TypeScript 开发,保证了代码的类型安全和可靠性。
- 请求代理:自动处理 MCP 工具调用与底层 OpenAPI API 请求之间的参数映射和转换,简化了集成过程。
- 即插即用:转换后的 MCP 服务器可以直接运行,方便快速部署和使用。
安装步骤
- 确保已安装 Node.js (>= 18.x) 和 npm。
- 安装 'openapi-mcp-converter' npm 包:
npm install openapi-mcp-converter
服务器配置
以下 JSON 配置信息用于 MCP 客户端配置连接本 MCP 服务器。
{ "serverName": "OpenAPI-MCP-Server", // MCP 服务器名称,自定义,用于在客户端标识 "command": "node", // 启动服务器的命令,这里使用 Node.js 运行时 "args": [ "dist/example/index.js" // 启动参数,指向编译后的服务器入口文件。 // 首次使用需先执行 'npm run build' 编译项目,生成 dist 目录。 // 如果直接运行未编译的 TypeScript 文件,请使用 'ts-node' 或其他 TypeScript 运行时,并相应修改 args 参数。 ] }
配置说明:
- 'serverName': 为你的 MCP 服务器指定一个名称,这个名称将在 MCP 客户端中用于识别和管理不同的服务器连接。
- 'command': 指定启动 MCP 服务器的命令。由于本项目是 Node.js 应用,这里设置为 'node'。
- 'args': 一个字符串数组,包含了启动命令的参数。这里指向了编译后的 'example/index.js' 文件,该文件包含了启动 MCP 服务器的示例代码。
注意:
- 在配置 MCP 客户端之前,请务必先执行 'npm run build' 命令编译项目,确保 'dist' 目录下生成了编译后的 JavaScript 文件。
- 如果你的 OpenAPI 规范文件不是默认的 'openapi.json',你需要修改 'example/index.ts' 文件中的代码,指定你的 OpenAPI 文件路径。
基本使用方法
- 准备 OpenAPI 规范: 确保你有一个符合 OpenAPI 3.0 规范的 JSON 或 YAML 文件,并将其命名为 'openapi.json' 放置在项目根目录下(或修改 'example/index.ts' 中的文件路径)。
- 构建项目: 在项目根目录下运行 'npm run build' 命令,编译 TypeScript 代码到 'dist' 目录。
- 配置 MCP 客户端: 在你的 MCP 客户端中,根据上述提供的服务器配置信息,添加一个新的服务器连接。
- 启动 MCP 服务器: 当 MCP 客户端尝试连接该服务器时,客户端会根据配置信息执行 'node dist/example/index.js' 命令,启动 MCP 服务器。
- 使用 MCP 工具: 一旦服务器成功连接,LLM 客户端可以通过 MCP 协议发送 'ListTools' 请求获取由 OpenAPI 规范转换而来的工具列表。然后可以使用 'CallTool' 请求调用这些工具,工具名称对应 OpenAPI 规范中的 'operationId',工具的输入参数 (inputSchema) 会根据 OpenAPI 规范自动生成。
信息
分类
开发者工具