HG

higress-group/openapi-to-mcpserver

API development

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

292 stars 59 forks Качество 55 Тренд 19Apache-2.0

higress-group/openapi-to-mcpserver — это кандидат на MCP-сервер, импортированный из https://github.com/higress-group/openapi-to-mcpserver.

Обзор

higress-group/openapi-to-mcpserver — это кандидат на MCP-сервер, импортированный из https://github.com/higress-group/openapi-to-mcpserver.

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

Инструмент для преобразования спецификаций OpenAPI в конфигурации серверов MCP (Model Context Protocol).

Установка

Использование

Варианты

  • --input: Путь к файлу спецификации OpenAPI (JSON или YAML) (обязательно)
  • --output: Путь к выходному файлу конфигурации MCP (YAML) (обязательно)
  • --server-name: Название MCP-сервера (по умолчанию: «openapi-server»)
  • --tool-prefix: префикс для имён инструментов (по умолчанию: “”)
  • --format: Формат вывода (yaml или json) (по умолчанию: «yaml»)
  • --validate: Проверка спецификации OpenAPI (по умолчанию: false)
  • --template: Путь к шаблонному файлу для патча выхода (по умолчанию: “”)

Пример

Преобразование OpenAPI в конфигурацию Higress REST в MCP

Этот инструмент можно использовать для преобразования спецификации OpenAPI в конфигурацию Higress REST в MCP. Вот полный пример:

  1. Начните со спецификации OpenAPI (petstore.json):

  2. Преобразовать его в конфигурацию Higress REST в MCP:

  3. Полученный файл petstore-mcp.yaml:

  4. Эту конфигурацию можно использовать с Higress, добавив её в конфигурацию шлюза Higress.

Обратите внимание, что инструмент автоматически устанавливает поле position для каждого параметра на основе его расположения в спецификации OpenAPI:

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

README

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

OpenAPI to MCP Server

A tool to convert OpenAPI specifications to MCP (Model Context Protocol) server configurations.

Installation

go install github.com/higress-group/openapi-to-mcpserver/cmd/openapi-to-mcp@latest

Usage

openapi-to-mcp --input path/to/openapi.json --output path/to/mcp-server.yaml

Options

  • --input: Path to the OpenAPI specification file (JSON or YAML) (required)
  • --output: Path to the output MCP configuration file (YAML) (required)
  • --server-name: Name of the MCP server (default: “openapi-server”)
  • --tool-prefix: Prefix for tool names (default: “”)
  • --format: Output format (yaml or json) (default: “yaml”)
  • --validate: Validate the OpenAPI specification (default: false)
  • --template: Path to a template file to patch the output (default: “”)

Example

openapi-to-mcp --input petstore.json --output petstore-mcp.yaml --server-name petstore

Converting OpenAPI to Higress REST-to-MCP Configuration

This tool can be used to convert an OpenAPI specification to a Higress REST-to-MCP configuration. Here’s a complete example:

  1. Start with an OpenAPI specification (petstore.json):
{
  "openapi": "3.0.0",
  "info": {
    "version": "1.0.0",
    "title": "Swagger Petstore",
    "description": "A sample API that uses a petstore as an example to demonstrate features in the OpenAPI 3.0 specification"
  },
  "servers": [
    {
      "url": "http://petstore.swagger.io/v1"
    }
  ],
  "paths": {
    "/pets": {
      "get": {
        "summary": "List all pets",
        "operationId": "listPets",
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "How many items to return at one time (max 100)",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "A paged array of pets",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "pets": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "id": {
                            "type": "integer",
                            "description": "Unique identifier for the pet"
                          },
                          "name": {
                            "type": "string",
                            "description": "Name of the pet"
                          },
                          "tag": {
                            "type": "string",
                            "description": "Tag of the pet"
                          }
                        }
                      }
                    },
Открыть полный README на GitHub

Установка

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

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