关于 MCP Swagger Server
MCP Swagger Server 根据 Swagger/OpenAPI 文档访问 API,面向需要在 MCP 客户端中查询规范并发送请求的开发者。它可加载 URL 上的文档,并依据规范校验请求。
主要功能
- 01从 URL 加载 Swagger 文档
- 02提供完整文档资源
- 03按规范发送 API 请求
- 04支持 API 密钥认证
- 05缓存规范并校验请求
适用场景
- 01在 MCP 会话中查看 API 文档
- 02根据 OpenAPI 规范调用 API
- 03在发送请求前验证参数
MCP 相关
提供 `swagger://documentation` 资源以读取完整文档,并提供 `makeRequest` 工具按规范发起 API 请求。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
MCP Swagger 服务
一个 MCP 服务,可访问 Swagger/OpenAPI 文档,并允许根据规范发起 API 请求。
功能
- 从 URL 加载 Swagger 文档
- 根据 Swagger 规范发起 API 请求
- 支持通过 API 密钥进行身份验证
- 缓存 Swagger 规范以提升性能
- 根据 Swagger 规范验证请求
设置
- 安装依赖:
npm install
- 构建 TypeScript 代码:
npm run build
本地运行
开发模式:
npm run dev
生产模式:
npm run start
配置
服务器需要以下环境变量:
SWAGGER_URL:Swagger 规范的 URL(必填)AUTH_KEY:API 请求的身份验证密钥(可选)
可用资源和工具
资源:swagger-doc
- URI:
swagger://documentation - 描述:获取完整的 Swagger 文档
工具:makeRequest
根据 Swagger 规范发起 API 请求。
参数:
path:API 端点路径method:HTTP 方法(GET、POST 等)parameters:可选的路径/查询参数body:可选的请求正文
示例:
const result = await mcp.tools.makeRequest({
path: "/api/users",
method: "GET",
parameters: { userId: "123" }
});
Smithery.ai 部署
此服务器已配置为部署到 Smithery.ai。部署需要:
- 用于构建和运行服务器的
Dockerfile smithery.yaml配置文件- 正确的 TypeScript 构建设置
配置架构
在 Smithery.ai 上部署时,请按以下方式配置服务器:
{
"swaggerUrl": "https://api.example.com/swagger.json",
"authKey": "your-api-key" // Optional
}
使用 Smithery 进行本地测试
- 构建 Docker 镜像:
docker build -t mcp-swagger .
- 运行容器:
docker run -e SWAGGER_URL=your-swagger-url -e AUTH_KEY=your-auth-key mcp-swagger
开发
脚本
npm run build:构建 TypeScript 代码npm run start:以生产模式运行服务器npm run dev:以支持热重载的开发模式运行服务器
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。