一个模型上下文协议(MCP)服务器,允许大型语言模型(LLMs)探索和与Swagger/OpenAPI规范进行交互。此服务器提供了加载API规范、浏览端点以及获取API操作详细信息的工具和资源。
npm install
npm run build
load_api将OpenAPI/Swagger规范加载到服务器中。
参数:
apiId (字符串):此API的唯一标识符source (字符串):指向OpenAPI/Swagger规范的URL或文件路径示例:
{
"name": "load_api",
"arguments": {
"apiId": "petstore",
"source": "https://petstore.swagger.io/v2/swagger.json"
}
}
get_endpoint_details获取特定API端点的详细信息。
参数:
apiId (字符串):已加载API的IDmethod (字符串):HTTP方法(GET、POST等)path (字符串):API端点路径natural (布尔值,可选):如果为true,则返回人类可读的摘要示例:
{
"name": "get_endpoint_details",
"arguments": {
"apiId": "petstore",
"method": "GET",
"path": "/pet/{petId}",
"natural": true
}
}
list_apis列出所有当前已加载的API规范。
参数: 无
search_endpoints搜索匹配特定模式的端点。
参数:
apiId (字符串):已加载API的IDpattern (字符串):用于匹配端点路径或描述的搜索模式示例:
{
"name": "search_endpoints",
"arguments": {
"apiId": "petstore",
"pattern": "pet"
}
}
swagger://{apiId}/load获取已加载API规范的概览信息。
swagger://{apiId}/endpoints获取API的所有可用端点列表。
swagger://{apiId}/endpoint/{method}/{path}获取特定端点的详细信息。
要使用此服务器与Claude Desktop,请在您的claude_desktop_config.json中添加以下内容:
{
"mcpServers": {
"swagger-explorer": {
"command": "node",
"args": ["/path/to/your/swagger-mcp-server/build/index.js"]
}
}
}
将/path/to/your/swagger-mcp-server替换为您项目的实际路径。
MIT许可证