项目简介
此项目是一个命令行工具,它能够读取标准的OpenAPI(Swagger)规范文件,并根据其中的API端点、参数和安全配置,自动生成符合Model Context Protocol (MCP) 的服务器端代码。生成的MCP服务器充当大型语言模型(LLM)客户端与现有API之间的桥梁,使LLM能够通过MCP协议调用API提供的功能。
主要功能点
- 自动工具生成: 将OpenAPI规范中的每个API路径和方法转换为一个独立的MCP工具,包括其输入参数定义。
- 支持Stdio传输: 生成的服务器默认支持Stdio作为与MCP客户端通信的传输协议。
- 完整项目搭建: 生成包括服务器代码、依赖管理(package.json)、README、环境变量示例等在内的完整Node.js项目结构。
- 简易配置: 生成的服务器通过简单的环境变量进行配置,如API基础URL和认证信息。
- 处理安全机制: 根据OpenAPI定义的安全方案(如API Key, Basic Auth, Bearer Token),生成相应的认证逻辑并支持通过环境变量配置。
安装步骤
首先,确保你的系统已安装Node.js (16.x 或更高版本) 和 npm (7.x 或更高版本)。
通过npm全局安装该工具:
npm install -g openapi-mcpserver-generator
或者使用yarn或pnpm:
yarn global add openapi-mcpserver-generator # 或 pnpm add -g openapi-mcpserver-generator
基本使用方法
-
生成MCP服务器代码: 运行命令行工具,指定OpenAPI规范文件(本地路径或URL)和输出目录:
openapi-mcpserver-generator --openapi path/to/your/openapi.json --output ./my-api-mcp-server这将在指定的输出目录 ('./my-api-mcp-server') 生成一个包含MCP服务器代码及其配套文件的Node.js项目。
-
配置并运行生成的服务器:
- 进入生成的项目目录:
cd ./my-api-mcp-server - 安装项目依赖:
npm install - 创建 '.env' 配置文件:
cp .env.example .env - 编辑 '.env' 文件,配置你的API基础URL以及根据OpenAPI规范要求的任何认证信息(例如API Key、用户名、密码或Bearer Token)。'.env.example' 文件中包含了需要配置的环境变量格式示例。
- 启动生成的MCP服务器:
npm start - 如果生成了TypeScript版本,也可以先构建再运行:
npm run build cd dist node server.js
- 进入生成的项目目录:
服务器配置 (供MCP客户端使用)
生成的MCP服务器是一个独立的进程,需要通过MCP客户端(如支持MCP的LLM应用或代理工具)启动和连接。MCP客户端通常通过JSON格式的配置文件来管理其连接的MCP服务器。
对于通过此工具生成的MCP服务器,客户端配置文件中需要指定如何启动该服务器进程。配置通常包含服务器的名称、启动命令('command')及其参数列表('args')。
例如,一个典型的客户端配置条目可能看起来像这样(具体路径和参数请根据你的实际生成位置调整):
"服务器名称": { "command": "node可执行文件的路径", // 例如:/usr/local/bin/node 或 C:\Program Files\nodejs\node.exe "args": [ "生成的服务器主文件路径", // 例如:/path/to/your/my-api-mcp-server/server.js "run" // 传递给服务器脚本的启动参数(如果需要) ], // 其他可能的配置,如传输协议(transport,通常为stdio)等 }
你需要将上述结构的配置添加到你的MCP客户端的配置文件中,并根据生成的项目实际路径替换占位符。这样,MCP客户端就知道如何启动并连接到你的OpenAPI MCP服务器了。
信息
分类
开发者工具