返回 MCP 目录
public公开dns本地运行

openapi-mcp-generator

一个将OpenAPI规范转换为MCP兼容服务器的CLI工具,支持多种传输协议和认证方式,便于AI代理与REST API交互。

article

README

🚀 OpenAPI 转 MCP 服务器生成工具

这是一款命令行工具,可将 OpenAPI 规范转换为 Model Context Protocol (MCP) 兼容的服务器,为开发者提供便捷的服务转换方案。

🚀 快速开始

本工具能快速将 OpenAPI 规范转换为 MCP 服务器,以下是使用步骤:

安装

npm install -g @your-package-name

基本使用

  1. 初始化项目:
mcp-server init your-project-name
  1. 根据提示完成 OpenAPI 配置文件的填写。
  2. 启动服务器:
cd your-project-name
npm start

✨ 主要特性

  • OpenAPI 支持:支持 OpenAPI 3.0 标准,可解析并生成 MCP 服务器。
  • 代理行为:实现请求转发功能,支持多种认证方式。
  • 认证支持:涵盖 API Key、Bearer Token、Basic Auth 和 OAuth2 等多种身份验证方案。
  • Zod 验证:使用 Zod 进行数据验证,确保输入输出的合法性。
  • 多种传输模式:支持标准输入输出(stdio)、基于 SSE 的 Web 服务器和流式 HTTP 传输。

📦 安装指南

使用以下命令进行全局安装:

npm install -g @your-package-name

💻 使用示例

基础用法

按以下步骤初始化并启动项目:

  1. 初始化项目:
mcp-server init your-project-name
  1. 按提示填写 OpenAPI 配置文件。
  2. 启动服务器:
cd your-project-name
npm start

高级用法

传输模式选择

  • stdio 模式:适用于本地开发和集成到 LLM 工具中。
  • Web 服务器(SSE):提供基于 SSE 的双向消息通信,支持多连接和浏览器客户端。
  • 流式 HTTP 模式:实现状态ful JSON - RPC,支持完整 HTTP 状态码和头信息。

认证配置

通过环境变量设置认证信息: | 认证类型 | 变量格式 | |------------|--------------------------------------------------| | API Key | API_KEY_<SCHEME_NAME> | | Bearer | BEARER_TOKEN_<SCHEME_NAME> | | Basic Auth | BASIC_USERNAME_<SCHEME_NAME>, BASIC_PASSWORD_<SCHEME_NAME> | | OAuth2 | OAUTH_CLIENT_ID_<SCHEME_NAME>, OAUTH_CLIENT_SECRET_<SCHEME_NAME>, OAUTH_SCOPES_<SCHEME_NAME> |

📚 详细文档

项目结构

your-project-name/
├── package.json          # 项目依赖和脚本配置
├── openapi.yaml         # OpenAPI 规范文件
├── config.js            # 服务器配置
└── src/                 # 业务逻辑代码目录

传输模式对比

| 功能 | stdio 模式 | Web(SSE)模式 | 流式 HTTP 模式 | |------|------------|---------------|----------------| | 协议 | JSON - RPC over stdio | JSON - RPC over SSE | JSON - RPC over HTTP | | 连接方式 | 长连接 | 长连接 | 请求/响应 | | 双向通信 | 支持 | 支持 | 状态ful 支持 | | 多客户端支持 | 不支持 | 支持 | 支持 | | 浏览器兼容 | 不支持 | 支持 | 支持 | | 防火墙友好 | 不支持 | 支持 | 支持 | | 负载均衡 | 不支持 | 有限支持 | 完全支持 | | 状态码 | 无 | 有限支持 | 完整 HTTP 状态码 | | 头信息 | 无 | 有限支持 | 完整 HTTP 头信息 |

启动服务器

cd your-project-name
npm install

# 标准输入输出模式
npm start

# Web 服务器模式
npm run start:web

# 流式 HTTP 模式
npm run start:http

Web 模式的测试客户端

  1. 启动服务器后,打开浏览器访问 http://localhost:<port>
  2. 使用生成的测试客户端与 MCP 服务器进行交互。

系统要求

  • Node.js 版本 v20 或更高版本。

⚠️ 重要提示

该项目目前处于开发阶段,可能存在不稳定性和潜在问题。使用前请仔细阅读文档并做好充分测试。

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端