马大伟
英语| 中文
MCP服务器,用于加载和查询OpenAPI/Swagger文档。 当用户提供不完整的路径或关键字时,它支持模糊操作匹配。
特性
- 加载远程OpenAPI 3.x文档(JSON/YAML)
- 带TTL的内存文档缓存
- 按方法/标签/关键字列出/过滤操作
- 部分路径的模糊解析操作
- 检查完整的请求/响应详细信息
- 检查
components.schemas以及它们在哪里使用
工具
openapi.loadopenapi.healthopenapi.reloadopenapi.list_operationsopenapi.resolve_operationopenapi.get_operationopenapi.explain_operationopenapi.get_schema
openapi.explain_operation 是为“如何调用此API”答案而设计的,包括参数组、请求示例和响应示例。
令牌保存默认值:
openapi.resolve_operation:topK默认为3openapi.get_operation:默认为resolveRefs=false和responseFormat=compactopenapi.explain_operation:默认为resolveRefs=false和detailLevel=brief
需求
- Node.js 18+
- pnpm 10+
快速开始
pnpm install
pnpm dev构建并运行:
pnpm build
pnpm startCodex MCP配置示例
{
"mcpServers": {
"swagger-mcp": {
"command": "npx",
"args": ["-y", "swaggertools-mcp", "--docPath", "http://dev.manage.zw.uav.sczlcq.com/v3/api-docs"]
}
}
}如果您正在本地积极开发此仓库,您仍然可以使用 pnpm dev.
参数
openapi.load支持运行时输入:url,headers,forceRefreshurl(或启动--docPath回退)必须是http/httpsOpenAPI文档URL- 初创公司
--docPath是可选的,在以下情况下充当默认源openapi.load.url未提供 - 没有从加载默认的OpenAPI URL
.env或其他环境源
docId: "default" 行为
- 如果文档已经被加载,
default映射到最新加载的docId. - 若还没有加载文档,服务器将返回错误并要求调用
openapi.load第一。
故障排除
- 错误:
Document not found: default
- 呼叫 openapi.load 第一。 - 确保MCP启动参数包括 --docPath.
