Python CLI Tool for Generating MCP Servers from API Specs

Python CLI Tool for Generating MCP Servers from API Specs

site icon
2025.03.20 0
API生成工具开发工具开发效率
该Python CLI工具用于从OpenAPI或GraphQL规范自动生成MCP(Model Context Protocol)服务器项目。MCP是一种开放标准,用于以安全、标准化的方式连接AI系统与数据源。该工具通过解析API规范并生成功能完整的MCP服务器项目,帮助开发者快速将数据或服务通过MCP服务器暴露给AI助手。
View on GitHub

Overview

基本能力

产品定位

该工具旨在简化MCP服务器的创建过程,通过自动化生成服务器代码,使开发者能够快速将现有API服务集成到MCP生态系统中。

核心功能

  1. API规范解析:支持OpenAPI(YAML/JSON)和GraphQL规范,自动检测规范类型
  2. 多语言支持:可生成Python、TypeScript、Kotlin或Rust语言的MCP服务器
  3. 安全与隐私
  4. 数据最小化和字段脱敏
  5. 安全HTTP头设置
  6. 速率限制
  7. 认证中间件:支持OAuth 2.0和API密钥认证
  8. 项目结构生成:创建完整的项目目录结构,包括README和依赖文件

适用场景

  1. 将现有REST API快速转换为MCP兼容服务
  2. 为AI系统(如Claude)创建数据连接接口
  3. 需要符合GDPR等隐私法规的API服务开发
  4. 需要内置安全措施的API服务开发

工具能力

  1. 规范解析器:将OpenAPI/GraphQL规范转换为统一内部表示
  2. 代码生成器:根据配置生成目标语言的服务器代码
  3. 中间件生成:自动生成认证、隐私和安全中间件

常见问题解答

  1. 支持的API规范版本:支持OpenAPI 3.x和GraphQL规范
  2. 自定义认证逻辑:生成代码中包含TODO标记,开发者可轻松实现自定义认证
  3. 隐私字段处理:可在配置文件中指定需要脱敏的字段

使用教程

使用依赖

  1. Python 3.7+
  2. 安装依赖包:
pip install pyyaml jinja2

安装教程

  1. 下载工具代码
  2. 准备API规范文件和配置文件
  3. 运行生成命令:
python main.py spec.yaml config.json -o output_dir

调试方式

  1. 检查生成的项目结构
  2. 安装项目依赖:
cd output_dir
pip install -r requirements.txt
  1. 运行服务器:
python server.py
  1. 测试API端点

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。