
swagger-mcp

2025.05.05
20
GoAPI 工具开发工具开发效率
`swagger-mcp` 是一个专为 Swagger UI 设计的工具,通过提取 `swagger.json` 文件并动态生成定义良好的 mcp 工具,这些工具可以在运行时被 MCP 客户端用于进一步的工具选择。该工具支持多种配置选项,包括不同的安全认证方式和运行模式(SSE 或 stdio)。
View on GitHub
Overview
基本能力
产品定位
swagger-mcp
是一个用于动态生成 MCP 工具的工具,专为 Swagger UI 设计,旨在简化 API 文档的利用和工具生成过程。
核心功能
- Swagger JSON 提取:从 Swagger UI 中提取
swagger.json
文件。 - 动态工具生成:根据提取的 Swagger JSON 动态生成 MCP 工具。
- 多种运行模式:支持 SSE 和 stdio 两种运行模式。
- 安全认证支持:支持 Basic Auth、API Key 和 Bearer Token 等多种安全认证方式。
- 配置灵活:提供多种配置选项,如基础 URL 覆盖、SSE 服务器地址等。
适用场景
- API 文档工具化:将 Swagger UI 文档转换为可操作的 MCP 工具。
- 开发效率提升:通过动态生成的工具简化 API 调用和测试流程。
- 集成测试:在 CI/CD 流程中自动化 API 测试。
工具列表
- swagger-mcp:主工具,用于提取 Swagger JSON 并生成 MCP 工具。
- mcphost:MCP 客户端,用于运行生成的工具。
常见问题解答
- 如何获取 Swagger JSON URL?
- 通常可以在 Swagger UI 的页面底部找到
swagger.json
的链接。 - 如何配置安全认证?
- 使用
--security
参数指定认证类型,并提供相应的认证信息(如--basicAuth
或--bearerAuth
)。 - 如何切换运行模式?
- 使用
--sseMode
参数切换 SSE 或 stdio 模式。
使用教程
使用依赖
- LLM Model API Key / Local LLM:需要访问 OpenAI、Claude 或 Ollama 模型。
- MCP Client:推荐使用 mark3labs - mcphost。
安装教程
- 安装
swagger-mcp
:sh go install github.com/hauntingsteps/swagger-mcp@latest swagger-mcp
- 运行
swagger-mcp
:sh swagger-mcp --specUrl=https://your_swagger_api_docs.json
调试方式
- 检查 Swagger JSON URL 是否正确。
- 验证安全认证配置是否正确。
- 检查运行模式是否符合预期(SSE 或 stdio)。
- 使用
--help
参数查看所有支持的选项和配置。