modelscope·@tuskermanshu/swagger-mcp-server
一个基于 Model Context Protocol 的服务器,用于解析 Swagger/OpenAPI 文档并为不同框架(Axios、Fetch、React Query)生成 TypeScript 类型和 API 客户端代码。
一个基于Model Context Protocol (MCP)的服务器,用于解析Swagger/OpenAPI文档并生成TypeScript类型和API客户端代码。
npm install
# 或者使用pnpm
pnpm install
node start-server.js
服务器默认使用标准输入/输出通信。
可以通过标准输入/输出与MCP服务器通信。以下是一些示例:
# 解析Swagger文档
node examples/optimized-swagger-parser-example.js
# 生成TypeScript类型
node examples/typescript-generator-example.js
# 生成API客户端
node examples/api-client-generator-example.js
{
"method": "parse-swagger",
"params": {
"url": "https://petstore3.swagger.io/api/v3/openapi.json",
"includeSchemas": true,
"includeDetails": true
}
}
适用于完整解析,带有高级选项:
{
"method": "parse-swagger-optimized",
"params": {
"url": "https://petstore3.swagger.io/api/v3/openapi.json",
"includeSchemas": true,
"includeDetails": true,
"useCache": true,
"skipValidation": true,
"cacheTTLMinutes": 60,
"lazyLoading": false,
"filterTag": "pet"
}
}
为大型文档优化,快速但只返回基本信息:
{
"method": "parse-swagger-lite",
"params": {
"url": "https://petstore3.swagger.io/api/v3/openapi.json",
"includeSchemas": false,
"includeDetails": false,
"useCache": true,
"skipValidation": true
}
}
{
"method": "generate-typescript-types",
"params": {
"swaggerUrl": "https://petstore3.swagger.io/api/v3/openapi.json",
"outputDir": "./generated/types",
"namespace": "PetStore",
"strictTypes": true,
"generateEnums": true,
"generateIndex": true
}
}
{
"method": "generate-typescript-types-optimized",
"params": {
"swaggerUrl": "https://petstore3.swagger.io/api/v3/openapi.json",
"outputDir": "./generated/types",
"namespace": "PetStore",
"strictTypes": true,
"useCache": true,
"skipValidation": true,
"lazyLoading": true,
"includeSchemas": ["Pet", "Order", "User"]
}
}
{
"method": "generate-api-client",
"params": {
"swaggerUrl": "https://petstore3.swagger.io/api/v3/openapi.json",
"outputDir": "./generated/api",
"clientType": "axios",
"generateTypeImports": true,
"typesImportPath": "../types",
"groupBy": "tag"
}
}
{
"method": "generate-api-client-optimized",
"params": {
"swaggerUrl": "https://petstore3.swagger.io/api/v3/openapi.json",
"outputDir": "./generated/api",
"clientType": "react-query",
"generateTypeImports": true,
"typesImportPath": "../types",
"groupBy": "tag",
"useCache": true,
"skipValidation": true,
"lazyLoading": true,
"includeTags": ["pet", "store"]
}
}
{
"method": "file-writer",
"params": {
"filePath": "./output.txt",
"content": "Hello, world!",
"createDirs": true
}
}
对于大型API文档,推荐使用以下配置:
示例:
{
"method": "parse-swagger-lite",
"params": {
"url": "https://your-large-api-doc-url.json",
"useCache": true,
"skipValidation": true,
"lazyLoading": true,
"filterTag": "your-specific-tag",
"includeSchemas": false
}
}
目前支持以下API客户端框架:
示例 - 生成React Query客户端:
{
"method": "generate-api-client-optimized",
"params": {
"swaggerUrl": "https://petstore3.swagger.io/api/v3/openapi.json",
"outputDir": "./generated/react-query",
"clientType": "react-query",
"generateTypeImports": true
}
}
API文档缓存存储在 .api-cache 目录中。如果需要清除缓存:
.api-cache 目录useCache: false 参数可在 swagger-mcp-config.json 中自定义服务器设置:
{
"name": "Swagger MCP Server",
"version": "1.0.0",
"transport": "stdio"
}
启动调试服务器:
node start-server.js
然后使用MCP Inspector连接:
npx @modelcontextprotocol/inspector pipe -- node start-server.js
或者直接方式(但可能导致输出混乱):
npx @modelcontextprotocol/inspector -- node start-server.js
参见 road.md 文件了解开发计划和进度。
要通过Smithery为Claude Desktop自动安装swagger-mcp-server:
npx -y @smithery/cli install @tuskermanshu/swagger-mcp-server --client claude
# 构建项目
npm run build
# 或使用pnpm
pnpm build
parse-swagger - 解析Swagger/OpenAPI文档,返回API操作信息parse-swagger-optimized - 解析Swagger/OpenAPI文档(优化版)parse-swagger-lite - 轻量级解析Swagger/OpenAPI文档,专为大型文档优化generate-typescript-types - 从Swagger/OpenAPI文档生成TypeScript类型定义generate-typescript-types-optimized - 从Swagger/OpenAPI文档生成TypeScript类型定义(优化版)generate-api-client - 从Swagger/OpenAPI文档生成API客户端代码generate-api-client-optimized - 从Swagger/OpenAPI文档生成API客户端代码(优化版)file-writer - 将内容写入文件系统一个为大型语言模型(LLM)设计的、高可用的12306余票查询工具服务,现已搭载智能会话管理引擎。 12306-MCP-Server 将复杂的12306余票查询接口封装为符合 Model Context Protocol (MCP) 规范的工具集,允许AI Agent通过自然语言无缝查询实时火车票、中转换乘和经停站信息。 从 v1.0.0 版本开始,项目引入了全新的智能会话管理系统,通过会话池、动态User-Agent轮换和自动错误恢复机制,将服务的稳定性与反屏蔽能力提升至全新高度。
阿里云可观测 MCP服务,提供了一系列访问阿里云可观测各产品的工具能力,覆盖产品包含阿里云日志服务SLS、阿里云应用实时监控服务ARMS、阿里云云监控等,任意支持 MCP 协议的智能体助手都可快速接入。
自动从文本中识别并提取法律条文,例如在合同、案件描述或法律文书中,精准定位涉及的具体法律条文(如“《民法典》第585条”),并将文本中的法律问题与对应法条内容关联,提取法规名称的服务。
用于哔哩哔哩API的MCP服务器,支持视频搜索、用户内容获取等多种操作,适用于哔哩哔哩内容管理和数据分析场景。
看起来您想要翻译一份英文技术文档,但您提供的内容中只有"asd"这个字符串,并没有实际的文档内容。请提供需要翻译的具体英文技术文档文本,这样我才能帮助您进行准确的翻译。如果有特定部分或格式要求,请一并告知。
一座通过串行通信将物理硬件设备与人工智能大语言模型连接起来的桥梁,允许用户使用自然语言命令控制硬件。