一个将 OpenAPI/Swagger 规范转换为 Model Context Protocol (MCP) 格式的工具 零配置将您的 REST API 转换为 AI 可调用的工具 🚀 快速开始 • 📖 使用指南 • 🛠️ 开发 Languages: English | 中文 MCP Swagger Server 是一个将 OpenAPI/Swagger 规范转换为 Model Context Protocol (MCP) 格式的工具。 - 🔄 零配置转换: 输入 OpenAPI 规范,立即获得 MCP 工具 - 🎯 渐进式命令行: 提供逐步引导的命令行界面,方便用户配置 - 🔌 多传输协议: 支持 SSE、Streamable 和 Stdio 传输 - 🔐 安全认证: 支持 Bearer Token 认证保护 API 访问 - Node.js ≥ 20.0.0 - pnpm
Add this skill
npx mdskills install zaizaizhao/mcp-swagger-serverConverts OpenAPI specs to MCP tools with strong configuration options and authentication support
1# MCP Swagger Server(mss)23<div align="center">45[](https://www.typescriptlang.org/)6[](https://nodejs.org/)7[](LICENSE)8[](https://archestra.ai/mcp-catalog/zaizaizhao__mcp-swagger-server)910**一个将 OpenAPI/Swagger 规范转换为 Model Context Protocol (MCP) 格式的工具**1112零配置将您的 REST API 转换为 AI 可调用的工具1314[🚀 快速开始](#快速开始) • [📖 使用指南](#使用指南) • [🛠️ 开发](#开发)1516**Languages**: [English](README_EN.md) | 中文1718</div>1920---21## 🎯 项目截图22232425## 🎯 项目简介2627MCP Swagger Server 是一个将 OpenAPI/Swagger 规范转换为 Model Context Protocol (MCP) 格式的工具。2829### 📦 项目结构3031```32mcp-swagger-server/33├── packages/34│ ├── mcp-swagger-server/ # 🔧 核心 MCP 服务器 (可用)35│ ├── mcp-swagger-parser/ # 📝 OpenAPI 解析器 (可用)36│ ├── mcp-swagger-ui/ # 🎨 Web 界面 (开发中)37│ └── mcp-swagger-api/ # 🔗 REST API 后端 (可用)38└── scripts/ # 🔨 构建脚本39```4041### ✨ 核心特性4243- **🔄 零配置转换**: 输入 OpenAPI 规范,立即获得 MCP 工具44- **🎯 渐进式命令行**: 提供逐步引导的命令行界面,方便用户配置45- **🔌 多传输协议**: 支持 SSE、Streamable 和 Stdio 传输46- **🔐 安全认证**: 支持 Bearer Token 认证保护 API 访问4748## 🚀 快速开始4950### 环境要求5152- Node.js ≥ 20.0.053- pnpm ≥ 8.0.0 (推荐)5455### 安装5657```bash58npm i mcp-swagger-server -g59```6061### 快速启动62#### 自定义启动63```bash64mss65```66#### 一键启动67```bash68mss --openapi https://api.example.com/openapi.json --operation-filter-methods GET,POST --transport streamable -auth-type bearer --bearer-token "your-token-here"6970# 使用配置文件71mcp-swagger-server --config config.json72```7374#### 命令行选项7576```bash77# 基本用法78mss [选项]7980# 选项:81--openapi, -o OpenAPI 规范的 URL 或文件路径82--transport, -t 传输协议 (stdio|sse|streamable)83--port, -p 端口号84--watch, -w 监控文件变化85--verbose 详细日志输出8687# Bearer Token 认证选项:88--auth-type 认证类型 (bearer)89--bearer-token 直接指定 Bearer Token90--bearer-env 从环境变量读取 Token91--config, -c 配置文件路径9293# 操作过滤选项:94--operation-filter-methods <methods> HTTP方法过滤 (可重复) [示例: GET,POST]95--operation-filter-paths <paths> 路径过滤 (支持通配符, 可重复) [示例: /api/*]96--operation-filter-operation-ids <ids> 操作ID过滤 (可重复) [示例: getUserById]97--operation-filter-status-codes <codes> 状态码过滤 (可重复) [示例: 200,201]98--operation-filter-parameters <params> 参数过滤 (可重复) [示例: userId,name]99```100101### 🔐 Bearer Token 认证102103`mcp-swagger-server` 支持 Bearer Token 认证,可以保护需要身份验证的 API 访问。104105#### 认证方式106107**1. 直接指定 Token**108```bash109mss --auth-type bearer --bearer-token "your-token-here" --openapi https://api.example.com/openapi.json --transport streamable110```111112113114#### 环境变量配置115116创建 `.env` 文件:117```env118# 基础配置119MCP_PORT=3322120MCP_TRANSPORT=stdio121MCP_OPENAPI_URL=https://api.example.com/openapi.json122123# 认证配置124MCP_AUTH_TYPE=bearer125API_TOKEN=your-bearer-token-here126```127128### 🤖 与 AI 助手集成129130#### Claude Desktop 配置131132```json133{134 "mcpServers": {135 "swagger-converter": {136 "command": "mss",137 "args": [138 "--openapi", "https://petstore.swagger.io/v2/swagger.json",139 "--transport", "stdio"140 ]141 },142 "secured-api": {143 "command": "mss",144 "args": [145 "--openapi", "https://api.example.com/openapi.json",146 "--transport", "stdio",147 "--auth-type", "bearer",148 "--bearer-env", "API_TOKEN"149 ],150 "env": {151 "API_TOKEN": "your-bearer-token-here"152 }153 }154 }155}156```157158## 🛠️ 开发159160### 构建系统161162```bash163# 构建所有包164pnpm build165166# 仅构建后端包167pnpm build:packages168169# 开发模式170pnpm dev171172# 清理构建产物173pnpm clean174```175## 🤝 贡献176177欢迎贡献!请先阅读 [贡献指南](CONTRIBUTING.md)。178179## 📄 许可证180181MIT License - 详见 [LICENSE](LICENSE) 文件。182183---184185<div align="center">186187**Built with ❤️ by ZhaoYaNan(ZTE)**188189[⭐ Star](../../stargazers) • [🐛 Issues](../../issues) • [💬 Discussions](../../discussions)190191</div>192
Full transparency — inspect the skill content before installing.