使用说明
打开API MCP服务器
这个项目是一个模型上下文协议(MCP)服务器,它基于OpenAPI(Swagger)规范动态加载和公开工具。它旨在帮助您通过标准接口与任何与OpenAPI兼容的API进行交互、检查和测试。
特性
- 动态Swagger/OpenAPI加载: 传递Swagger JSON URL作为命令行参数,以加载任何API并与之交互。
- API检验工具:
list_apis:列出所有可用的API路径。get_api_info:获取有关特定API终结点的详细信息,包括参数和请求/响应架构。list_endpoints:按方法或路径子字符串列出具有可选筛选的端点。load_swagger_spec:获取并返回完整的Swagger规格。readSwaggerSpec:获取并打印加载的Swagger规范。
- 请求正文示例生成: 对于具有请求体的端点,服务器会根据模式生成一个示例JSON有效负载。
- 标准I/O传输: 服务器通过stdin/stdout进行通信,使其易于与其他工具或自动化集成。
用法
1.安装依赖项
npm install
2.建设项目
npm run build
3.使用Swagger JSON URL运行服务器
node dist/index.js <swagger-json-url>
例子:
node dist/index.js http://your-server.com/swagger/v1/swagger.json
示例工具
- list_apis:返回已加载规范中的所有API路径。
- get_api_info:返回给定端点的详细信息(参数、请求/响应、示例正文)。
- list_endpoints:返回端点,可选择按HTTP方法或路径子字符串进行筛选。
- readSwaggerSpec:以JSON格式返回完整的Swagger规范。
发展
- 用TypeScript编写
- 用途
node-fetch对于HTTP请求 - 用途
zod用于模式验证
项目结构
src/index.ts:主服务器和工具逻辑dist/:编译的JavaScript输出.gitignore:标准节点/TypeScript忽略tsconfig.json:TypeScript配置
许可证
国际协调委员会
配置和CLI使用
您可以将此项目用作CLI工具来加载任何OpenAPI/Swagger规范并与之交互。您可以直接使用 npx 或者作为本地/全局包。
示例:与npx一起使用
npx @kawsar-ahmed/open-api-mcp-server http://your-server.com/swagger/v1/swagger.json
示例:在配置文件中使用(例如mcp.json)
您可以配置您的工具运行器(如Cursor或任何与MCP兼容的编排器)使用此服务器,配置如下:
{
"mcpServers": {
"swagger2": {
"command": "npx",
"args": ["@kawsar-ahmed/open-api-mcp-server", "http://your-server.com/swagger/v1/swagger.json"]
}
}
}
将URL替换为实际的Swagger/OpenAPI端点。
作者 Kawsar Ahmed
