mcpField
M
MCP Swagger Server

MCP Swagger Server

本地服务
github.com/andersmandersen开发工具081 周前更新

关于 MCP Swagger Server

MCP Swagger Server 根据 Swagger/OpenAPI 文档访问 API,面向需要在 MCP 客户端中查询规范并发送请求的开发者。它可加载 URL 上的文档,并依据规范校验请求。

主要功能

  1. 01从 URL 加载 Swagger 文档
  2. 02提供完整文档资源
  3. 03按规范发送 API 请求
  4. 04支持 API 密钥认证
  5. 05缓存规范并校验请求

适用场景

  1. 01在 MCP 会话中查看 API 文档
  2. 02根据 OpenAPI 规范调用 API
  3. 03在发送请求前验证参数

MCP 相关

提供 `swagger://documentation` 资源以读取完整文档,并提供 `makeRequest` 工具按规范发起 API 请求。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"swagger": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"build"
]
}
}
}
启动命令docker run -i --rm build

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
ocibuild

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

MCP Swagger 服务

一个 MCP 服务,可访问 Swagger/OpenAPI 文档,并允许根据规范发起 API 请求。

功能

  • 从 URL 加载 Swagger 文档
  • 根据 Swagger 规范发起 API 请求
  • 支持通过 API 密钥进行身份验证
  • 缓存 Swagger 规范以提升性能
  • 根据 Swagger 规范验证请求

设置

  1. 安装依赖:
npm install
  1. 构建 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。部署需要:

  1. 用于构建和运行服务器的 Dockerfile
  2. smithery.yaml 配置文件
  3. 正确的 TypeScript 构建设置
配置架构

在 Smithery.ai 上部署时,请按以下方式配置服务器:

{
  "swaggerUrl": "https://api.example.com/swagger.json",
  "authKey": "your-api-key"  // Optional
}
使用 Smithery 进行本地测试
  1. 构建 Docker 镜像:
docker build -t mcp-swagger .
  1. 运行容器:
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

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。