mcpField
O
OpenAPI → MCP Server

OpenAPI → MCP Server

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

关于 OpenAPI → MCP Server

OpenAPI → MCP Server 是一款 Python 命令行工具,可根据 OpenAPI 规范诊断、生成、运行和测试 Node.js/TypeScript MCP 服务。它面向需要配置生成流程、运行控制和服务检查的开发者。

主要功能

  1. 01生成 stdio 和 streamable HTTP 服务
  2. 02诊断规范并比较 MCP 接口
  3. 03用 mcpgen.yaml 配置生成策略
  4. 04将支持的认证方案映射到环境变量
  5. 05设置运行限制、重试和熔断器

适用场景

  1. 01从 OpenAPI 规范生成 MCP 服务
  2. 02检查规范中的生成问题
  3. 03规范变更后比较 MCP 接口
  4. 04运行并冒烟测试生成的服务

MCP 相关

它可生成将 OpenAPI 操作映射为 MCP 工具的 Node.js/TypeScript MCP 服务。生成的服务支持 stdio 或 streamable HTTP。

配置

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

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

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

详细介绍

OpenAPI 转 MCP 标志

OpenAPI → MCP 服务

持续集成 PyPI 版本 许可证

独立的 CLI,可根据 OpenAPI 规范诊断、比较差异、生成、运行和测试 Node.js/TypeScript MCP 服务。

安装

从 PyPI 安装 openapi-to-mcp-cli。需要 Python 3.14+; 构建和运行生成的服务还需要 Node.js 22+ 和 npm。

uv tool install openapi-to-mcp-cli
openapi-to-mcp --help

安装后的命令仍为 openapi-to-mcp。如需临时使用:

uvx --from openapi-to-mcp-cli openapi-to-mcp --help

有关升级、带标签的 Git 安装和发行版构件,请参阅安装指南。

快速入门

生成可重复使用的项目:

openapi-to-mcp generate \
  --openapi-json ./openapi.yaml \
  --output-dir ./generated-server

直接根据规范运行:

openapi-to-mcp run \
  --openapi-json https://petstore3.swagger.io/api/v3/openapi.json \
  --target-api-base-url https://petstore3.swagger.io/api/v3

对正在运行的服务执行冒烟测试:

openapi-to-mcp test-server \
  --transport streamable-http \
  --host 127.0.0.1 \
  --port 8080 \
  --mcp-endpoint /mcp \
  --list-tools

文档

公开产品文档托管在 GitHub Pages 上:

当前功能

  • stdio 和 streamable-http 生成目标
  • 使用 doctor 诊断规范就绪情况
  • 使用 diff 比较 MCP 接口
  • 使用 mcpgen.yaml 配置可重复的生成策略
  • 通过 src/custom/tools.ts 添加可在重新生成时保留的自定义工具
  • 根据规范元数据生成更丰富的工具描述和输入示例
  • 可选的工具名称分组,并添加首个标签前缀
  • 可选的请求级工具允许列表,供 streamable-http 调用方使用
  • 可选的请求和响应负载脱敏审计日志
  • 可选的安全上游调用重试预算和熔断器
  • 基于明确的运行时控制构建、可供审核的性能预设
  • 默认启用严格模式,并生成 generation_report.json
  • 为 apiKey、bearer、OAuth2 和 OpenID Connect 生成身份验证环境变量映射
  • 生成并发、排队、超时、有界缓存、限流、重试和熔断器等运行时控制项
  • 针对本地模拟 API 的生成服务端到端测试覆盖
  • 对 generate、run 和 test-server 进行 CLI 端到端测试覆盖
  • 在 master 上自动执行带版本管理的 PyPI 和 GitHub Releases 发布流程

Swagger 2 支持

支持仅包含响应的 Swagger 2 操作和基础 URL 字段。生成前,请将使用 Swagger 2 请求体或表单参数、顶层参数类型、安全定义或不受支持的协议覆盖项的操作转换为 OpenAPI 3。运行 openapi-to-mcp doctor 可找出受影响的操作和字段。

开发

有关仓库本地工作流,请直接参阅仓库文档:

许可证

Apache License 2.0。请参阅 LICENSE。

评论

支持 Markdown

第一次接触 MCP?

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

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