使用说明
Swagger MCP 服务器
此项目包括:Model Context Protocol(MCP)安装服务器OpenAPI 式样书(swagger/sample.yaml)MCP 通过协议(stdio传输)公开。@modelcontextprotocol/sdk 来修改标记元素的显示属性MCP 从支持的客户端API 可以查询元数据(例如,路径方法请求/响应模式)。
目次
前提条件
- Node.js v14以上
- npm 在工作空间的边缘yarn
- Linux/macOS/Windows環境
安装
# リポジトリをクローン(未取得時)
git clone <リポジトリのURL> api_div
cd api_div
# 依存パッケージをインストール
npm install
npm run build
将安装以下主要软件包:
- js-yaml:YAML 导入和分析文件
- @modelcontextprotocol/sdk:MCP 服务器功能
- zod:验证输入参数
- @apidevtools/json模式引用解析器:json模式の
$ref解决
开发依赖性软件包:
- typescript:TypeScript 编译程序
- @types/js-yaml、@types/node、@types/json模式引用解析器:型定義
项目配置
api_div/ # ルートワークスペース
├─ mcp-server/ # MCP サーバー実装
│ ├─ build/ # コンパイル済み出力(build/index.js)
│ ├─ src/ # ソースコード(index.ts など)
│ ├─ package.json
│ └─ tsconfig.json
├─ swagger/ # OpenAPI 仕様書
│ └─ sample.yaml
└─ api-service/ # 実際の API 実装プロジェクト(クライアントやバックエンド)
├─ src/ # サービス実装コード
├─ package.json
└─ tsconfig.json
VS Code MCP 客户端使用
- 模型上下文协议客户端 安装扩展
- 将此工作区VS Code 打开
- mcp.json 创建文件
{
"servers": {
"swagger": {
"command": "node",
"args": ["api_div/mcp-server/build/index.js"],
"env": {"SPEC_PATH": "api_div/swagger/sample.yaml"}
}
}
}
- MCP 从客户端面板
swagger启动服务器并提交工具请求(例如:/users,GET)。
工具:getEndpointInfo
MCP 服务器提供的工具:
- 参数:
path:API URI(缩写:/users/{id})method: HTTP 方法(例如:GET,POST)
- 响应:
description:汇总或说明requestSchema:请求主体的JSON 模式responses状态代码-方案和说明
MCP 客户端示例:
{ "method": "getEndpointInfo", "params": { "path": "/users", "method": "GET" } }
响应:
{
"path": "/users",
"method": "GET",
"description": "Get all users",
"requestSchema": null,
"responses": { ... }
}
