Swagger MCP 服务器

Swagger MCP 服务器

site icon
2025.03.20 10
TypeScriptAPI文档解析代码生成开发效率
Swagger MCP 服务器是一个基于Model Context Protocol (MCP)的服务器,主要用于解析Swagger/OpenAPI文档并生成TypeScript类型和API客户端代码。它支持v2和v3规范,能够生成不同框架的API客户端代码(如Axios、Fetch、React Query等),并通过MCP协议提供这些功能,便于与大型语言模型集成。
View on GitHub

Overview

基本能力

产品定位

Swagger MCP 服务器是一个专门用于解析Swagger/OpenAPI文档并生成TypeScript类型和API客户端代码的工具,旨在提高开发效率,简化API文档的处理和代码生成过程。

核心功能

  • 解析Swagger/OpenAPI文档,支持v2和v3规范
  • 生成TypeScript类型定义
  • 生成不同框架的API客户端代码(Axios、Fetch、React Query等)
  • 通过MCP协议提供这些功能,便于与大型语言模型集成
  • 优化的大型文档处理:
  • 内存和文件系统缓存机制
  • 懒加载解析策略
  • 增量解析与部分结果返回
  • 进度反馈
  • 自动识别不同格式的Swagger UI URLs

适用场景

  • 需要从Swagger/OpenAPI文档生成TypeScript类型的开发项目
  • 需要为不同框架(如Axios、Fetch、React Query)生成API客户端的项目
  • 处理大型API文档时,需要优化解析和生成过程的场景

工具列表及能力

  1. Swagger/OpenAPI解析工具
  2. parse-swagger: 标准解析工具,返回API操作信息
  3. parse-swagger-optimized: 优化解析工具,适用于完整解析,带有高级选项
  4. parse-swagger-lite: 轻量级解析工具,专为大型文档优化

  5. TypeScript类型生成工具

  6. generate-typescript-types: 标准类型生成器
  7. generate-typescript-types-optimized: 优化类型生成器

  8. API客户端生成工具

  9. generate-api-client: 标准API客户端生成器
  10. generate-api-client-optimized: 优化API客户端生成器

  11. 文件写入工具

  12. file-writer: 将内容写入文件系统

常见问题解答

  • 如何处理大型API文档? 推荐使用优化版工具,启用缓存和懒加载,使用标签或路径前缀过滤,只获取需要的API操作,仅在必要时包含模式定义,并设置合理的缓存有效期。

  • 如何清除缓存? API文档缓存存储在 .api-cache 目录中。可以删除该目录或设置 useCache: false 参数。

使用教程

使用依赖

npm install
# 或者使用pnpm
pnpm install

安装教程

# 通过Smithery安装
npx -y @smithery/cli install @tuskermanshu/swagger-mcp-server --client claude

启动服务器

node start-server.js

调试方式

启动调试服务器:

node start-server.js

然后使用MCP Inspector连接:

npx @modelcontextprotocol/inspector pipe -- node start-server.js

或者直接方式(但可能导致输出混乱):

npx @modelcontextprotocol/inspector -- node start-server.js

许可证

None