AO

abutbul/openapi-mcp-generator

Developer tools

Эта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал

28 stars 9 forks Качество 50 Тренд 11MIT

Инструмент Python, который автоматически преобразует совместимые спецификации OpenAPI (Swagger, ETAPI) в полнофункциональные серверы протокола контекста модели (MCP).

Обзор

Инструмент Python, который автоматически преобразует спецификации OpenAPI в полнофункциональные серверы протокола контекста модели (MCP). Генерирует готовые к Docker реализации с поддержкой протоколов связи SSE/IO, аутентификации и комплексной обработки ошибок. - - OpenAPI to MCP tools/resources conversion - - Docker-ready with multi-stage builds - - Multiple authentication methods - - Async operations & rate limiting - - SSE/IO communication protocols - - Modular code structure with package support Генератор был рефакторирован в соответствующий пакет Python при сохранении обратной совместимости: 1. : Сценарий generator.py по-прежнему работает точно так же, как и раньше 2. : Код теперь разделен на сфокусированные модули 3. : Может быть установлен как правильный пакет Python 4. : Использует те же шаблоны в каталоге /templates 5. : Сохраняет всю функциональность Docker Вы можете использовать инструмент любым способом, который вы предпочитаете: 1. Запустите generator.py напрямую (оригинальный подход) 2.

Обзор (машинный перевод)

Инструмент Python, который автоматически преобразует спецификации OpenAPI в полнофункциональные серверы протокола контекста модели (MCP). Генерирует готовые к Docker реализации с поддержкой протоколов связи SSE/IO, аутентификации и комплексной обработки ошибок.

Ключевые особенности:

OpenAPI для преобразования инструментов / ресурсов MCP Docker-ready с многоступенчатыми сборками

  • Несколько методов аутентификации Операции Async и ограничение скорости Протоколы связи SSE/IO Модульная структура кода с поддержкой пакетов

Модульная структура кода

Генератор был рефакторирован в соответствующий пакет Python при сохранении обратной совместимости:

  1. ** Оригинальная точка входа**: сценарий generator.py работает точно так же, как и раньше 2** Модульная организация**: Код теперь разделен на сфокусированные модули. 3.Установка пакета: Может быть установлен как правильный пакет Python
  2. **Те же шаблоны **: использует те же шаблоны в каталоге /templates
  3. ** Поддержка Docker**: Сохранение всех функций Docker

Вы можете использовать инструмент любым способом, который вы предпочитаете:

  1. Бег generator.py напрямую (оригинальный подход) 2.Установка пакета и использование команды mcp-generator

Эта страница переведена автоматически. Технические детали смотрите в оригинале.

README

Показан фрагмент оригинального README. Открыть оригинал.

OpenAPI to MCP Server Generator

A Python tool that automatically converts OpenAPI specifications into fully functional Model Context Protocol (MCP) servers. Generates Docker-ready implementations with support for SSE/IO communication protocols, authentication, and comprehensive error handling.

Key features:

  • 🔄 OpenAPI to MCP tools/resources conversion
  • 🐳 Docker-ready with multi-stage builds
  • 🔐 Multiple authentication methods
  • ⚡ Async operations & rate limiting
  • 📡 SSE/IO communication protocols
  • 📦 Modular code structure with package support

Modular Code Structure

The generator has been refactored into a proper Python package while maintaining backward compatibility:

  1. Original Entry Point: The generator.py script still works exactly as before
  2. Modular Organization: Code is now split into focused modules
  3. Package Installation: Can be installed as a proper Python package
  4. Same Templates: Uses the exact same templates in the /templates directory
  5. Docker Support: Preserves all Docker functionality

You can use the tool in whatever way you prefer:

  1. Run generator.py directly (original approach)
  2. Install as a package and use mcp-generator command
  3. Use the module programmatically in your own Python code

For more details on the modular code structure, see MODULAR_REFACTORING.md.

Features

  • Convert OpenAPI specifications to MCP servers
  • Docker-ready implementation with multi-stage builds
  • Support for multiple authentication methods
  • Choice of SSE or IO communication protocols
  • Comprehensive error handling and logging
  • Built-in rate limiting and security features
  • Async operations for optimal performance
  • Extensive test suite with coverage reporting

Prerequisites

  • Python 3.10+
  • Docker (for running the generated server)
  • pip or uv (Python package manager)

Installation

From Source

# Clone the repository
git clone https://github.com/abutbul/openapi-mcp-generator.git
cd openapi-mcp-generator

# Install as a package (development mode)
pip install -e .

# Or using uv
uv venv
source .venv/bin/activate
uv pip install -e .

Using pip (once published)

pip install openapi-mcp-generator

Usage

# Using the original script (still works the same way)
python generator.py openapi.yaml --output-dir ./output --api-url https://api.example.com

# Using the new modular CLI tool after installation
mcp-generator openapi.yaml --output-dir ./output --api-url https://api.example.com

# Using the python module directly
python -m openapi_mcp_generator.cli openapi.yaml --output-dir ./output

Command Line Options

  • openapi_file: Path to the OpenAPI YAML file (required)
  • --output-dir: Output directory for the generated project (default: ‘.’)
  • --api-url: Base URL for the API
  • --auth-type: Authentication type (bearer, token, basic)
  • --api-token: API token for authentication
Открыть полный README на GitHub

Установка

This server does not publish a one-line install command.

Open the repository installation guide Новичок в MCP? Начните с руководства на mcpskill.org →