Swagger Codegen
БесплатноНе проверенAutomatically generates TypeScript API code from Swagger/OpenAPI documentation. Supports listing services, tags, endpoints, and generating code by tag or endpoi
Описание
Automatically generates TypeScript API code from Swagger/OpenAPI documentation. Supports listing services, tags, endpoints, and generating code by tag or endpoint.
README
从 Swagger/OpenAPI 文档自动生成 TypeScript API 代码的 MCP 服务器。
功能
- list_services - 列出所有可用的 API 服务及其 Swagger URL
- list_tags - 列出 Swagger 中所有的 API 分组(tags)
- list_endpoints - 列出指定 tag 下的所有接口
- get_endpoint_detail - 获取单个接口的详细信息
- generate_api_code - 生成 TypeScript 代码(支持按 tag 或单个接口)
支持的服务
MCP 服务器预配置了以下 API 服务,会根据 API 路径自动推断使用哪个服务:
| 服务名 | Swagger URL | 匹配路径示例 |
|---|---|---|
| village | /api/village/swagger.json |
/api/village/VillageNursing/... |
| basic | /api/basic/swagger.json |
/api/basic/User/... |
| ffp | /api/ffp/swagger.json |
/api/ffp/Project/... |
| dynamic | /api/dynamic/swagger.json |
/api/dynamic/Form/... |
| customform | /api/customform/swagger.json |
/api/customform/Template/... |
| ncdp | /api/ncdp/swagger.json |
/api/ncdp/Report/... |
| gis | /api/gis/swagger.json |
/api/gis/Map/... |
| query | /api/query/swagger.json |
/api/query/Data/... |
提示:当你传入
path参数时(如/api/village/VillageNursing/GetNursingStats),服务器会自动从路径中提取village并使用对应的 swagger.json,无需手动指定swagger_url。
安装
cd C:\Users\Administrator\.gemini\mcp\swagger-codegen-mcp
npm install
配置 Gemini CLI
在 settings.json 中添加此 MCP 服务器:
{
"mcpServers": {
"swagger-codegen": {
"command": "node",
"args": [
"C:\\Users\\Administrator\\.gemini\\mcp\\swagger-codegen-mcp\\src\\index.js"
]
}
}
}
使用示例
1. 列出所有可用服务
list_services()
返回示例:
{
"success": true,
"total": 8,
"services": [
{
"name": "village",
"url": "https://dvs-dev2.utuapp.cn/api/village/swagger.json"
},
{
"name": "basic",
"url": "https://dvs-dev2.utuapp.cn/api/basic/swagger.json"
}
],
"hint": "使用 path 参数时会自动根据路径推断服务"
}
2. 列出所有 API 分组
list_tags()
返回示例:
{
"success": true,
"swaggerUrl": "https://dvs-dev2.utuapp.cn/api/village/swagger.json",
"total": 50,
"tags": [
{ "name": "VillageNursing", "description": "" },
{ "name": "Accusation", "description": "" }
]
}
3. 列出指定分组的接口
list_endpoints(tag: "VillageNursing")
4. 获取接口详情(自动推断服务)
get_endpoint_detail(
path: "/api/village/VillageNursing/GetNursingStats",
method: "get"
)
无需指定
swagger_url,会自动从 path 中提取village并使用 village 服务的 swagger.json。
5. 生成整个模块的代码
generate_api_code(tag: "VillageNursing")
生成两个文件:
villagenursing.types.ts- 类型定义villagenursing.ts- API 函数
6. 生成单个接口的代码(自动推断服务)
generate_api_code(
path: "/api/basic/User/GetList",
method: "get"
)
会自动使用 basic 服务的 swagger.json。
生成的代码风格
生成的代码兼容项目的 request.js 封装:
import request from "@/common/utils/request";
import type {
GetPageListParams,
VillageNursingListDto,
} from "./villagenursing.types";
/** 查询列表 */
export function getPageList(
params: GetPageListParams
): Promise<VillageNursingListDto[]> {
return request("/api/village/VillageNursing/GetPageList", {
method: "get",
params: { RegionId, Limit, Page, Keyword },
});
}
配置文件
服务端点配置位于 src/swagger-config.js,可以根据需要添加更多服务:
const SWAGGER_SERVICES = {
village: `${API_BASE_URL}/village/swagger.json`,
basic: `${API_BASE_URL}/basic/swagger.json`,
// 添加更多服务...
};
测试
# 运行配置测试
node test/test-config.js
# 查找模型定义
node test/find-model.js
Установка Swagger Codegen
У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.
▸ github.com/aehyok/swagger-codegen-mcpFAQ
Swagger Codegen MCP бесплатный?
Да, Swagger Codegen MCP бесплатный — установка в пару кликов через Unyly без оплаты.
Нужен ли API-ключ для Swagger Codegen?
Нет, Swagger Codegen работает без API-ключей и переменных окружения.
Swagger Codegen — hosted или self-hosted?
Доступен hosted-вариант: Unyly запускает сервер в облаке, локальная установка не обязательна.
Как установить Swagger Codegen в Claude Desktop, Claude Code или Cursor?
Открой Swagger Codegen на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.
Похожие MCP
GitHub
PRs, issues, code search, CI status
автор: GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
автор: mcpdotdirectCompare Swagger Codegen with
Не уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории development
