Skip to main content
Glama
itachiuchihadev

@abhishekkumar00019/swagger-mcp

@abhishekkumar00019/swagger-mcp

npm version License: MIT MCP Compatible

Ein dynamischer Model Context Protocol (MCP)-Server, der jede Swagger-2.0- oder OpenAPI-3.x-Spezifikation im Handumdrehen in aufrufbare MCP-Tools umwandelt.

Richten Sie es auf eine beliebige OpenAPI/Swagger-JSON- oder YAML-Spezifikations-URL, und jeder API-Endpunkt wird automatisch zu einem interaktiven Tool für Claude, Copilot, ChatGPT, Cursor, Windsurf und andere MCP-fähige Clients.


✨ Funktionen

  • 🔄 Dynamische Tool-Generierung — Analysiert automatisch Swagger-2.0- und OpenAPI-3.x-Spezifikationen beim Start.

  • 🛠️ Null Boilerplate — Geben Sie ihm eine Spezifikations-URL und jeder Endpunkt wird sofort als MCP-Tool bereitgestellt.

  • 🔐 Flexible Authentifizierungsunterstützung — Bearer-Tokens, API-Keys und Basic Auth lassen sich mühelos über Umgebungsvariablen oder CLI-Flags konfigurieren.

  • 🌐 Intelligente Basis-URL-Auflösung — Leitet die Basis-URL automatisch ab: Konfiguration → Spezifikations-Serverdefinition → Spezifikations-Ursprungs-URL.

  • 🔁 Hot Reloading — Ruft die Spezifikation zur Laufzeit live ab und analysiert sie neu, mithilfe des Tools _swagger_mcp_reload.

  • 📝 Umfangreiche Schemas & Beschreibungen — Übersetzt OpenAPI-Parameter und Request-Bodies in strikte JSON-Schemas für präzise LLM-Tool-Aufrufe.

  • ⏱️ Konfigurierbare Timeouts & benutzerdefinierte Header — Legen Sie einfach benutzerdefinierte Request-Header und Request-Timeout-Schwellenwerte fest.


Related MCP server: Swagger to MCP

🚀 Schnellstart

Option A: Direkt über npx (keine Installation erforderlich)

SWAGGER_MCP_SPEC_URL=https://petstore.swagger.io/v2/swagger.json npx @abhishekkumar00019/swagger-mcp

Option B: Globale NPM-Installation

npm install -g @abhishekkumar00019/swagger-mcp

SWAGGER_MCP_SPEC_URL=https://petstore.swagger.io/v2/swagger.json swagger-mcp

Option C: Lokale Repository-Einrichtung

  1. Repository klonen & Abhängigkeiten installieren:

    git clone https://github.com/itachiuchihadev/swagger-mcp.git
    cd swagger-mcp
    npm install
  2. Projekt bauen:

    npm run build
  3. Lokal ausführen:

    SWAGGER_MCP_SPEC_URL=https://petstore.swagger.io/v2/swagger.json node dist/index.js

⚙️ MCP-Client-Konfigurationen

Im Folgenden finden Sie Beispielkonfigurationen für gängige MCP-Clients mit npx @abhishekkumar00019/swagger-mcp.

1. Claude Desktop

Fügen Sie Folgendes zu Ihrer claude_desktop_config.json hinzu:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "swagger-mcp": {
      "command": "npx",
      "args": ["-y", "@abhishekkumar00019/swagger-mcp"],
      "env": {
        "SWAGGER_MCP_SPEC_URL": "https://petstore.swagger.io/v2/swagger.json",
        "SWAGGER_MCP_BEARER_TOKEN": "your-api-token-here"
      }
    }
  }
}

2. Claude Code (CLI)

Fügen Sie es direkt über die Claude Code CLI hinzu:

claude mcp add swagger-mcp -- npx -y @abhishekkumar00019/swagger-mcp --spec-url https://petstore.swagger.io/v2/swagger.json

Oder fügen Sie es zu .mcp.json im Projektstammverzeichnis hinzu:

{
  "mcpServers": {
    "swagger-mcp": {
      "command": "npx",
      "args": ["-y", "@abhishekkumar00019/swagger-mcp"],
      "env": {
        "SWAGGER_MCP_SPEC_URL": "https://petstore.swagger.io/v2/swagger.json"
      }
    }
  }
}

3. GitHub Copilot / VS Code

Fügen Sie es zu .vscode/mcp.json in Ihrem Workspace oder in den globalen VS-Code-Einstellungen hinzu:

{
  "server": {
    "swagger-mcp": {
      "command": "npx",
      "args": ["-y", "@abhishekkumar00019/swagger-mcp"],
      "env": {
        "SWAGGER_MCP_SPEC_URL": "https://petstore.swagger.io/v2/swagger.json",
        "SWAGGER_MCP_API_KEY": "your-api-key"
      }
    }
  }
}

4. Cursor

Fügen Sie es zu .cursor/mcp.json hinzu oder konfigurieren Sie es unter Cursor-Einstellungen → Funktionen → MCP:

{
  "mcpServers": {
    "swagger-mcp": {
      "command": "npx",
      "args": ["-y", "@abhishekkumar00019/swagger-mcp"],
      "env": {
        "SWAGGER_MCP_SPEC_URL": "https://petstore.swagger.io/v2/swagger.json"
      }
    }
  }
}

5. Windsurf

Fügen Sie es zu ~/.codeium/windsurf/mcp_config.json hinzu:

{
  "mcpServers": {
    "swagger-mcp": {
      "command": "npx",
      "args": ["-y", "@abhishekkumar00019/swagger-mcp"],
      "env": {
        "SWAGGER_MCP_SPEC_URL": "https://petstore.swagger.io/v2/swagger.json"
      }
    }
  }
}

6. Roo Code / Cline (VS-Code-Erweiterung)

Fügen Sie es zu cline_mcp_settings.json (oder roo_code_mcp_settings.json) hinzu:

{
  "mcpServers": {
    "swagger-mcp": {
      "command": "npx",
      "args": ["-y", "@abhishekkumar00019/swagger-mcp"],
      "env": {
        "SWAGGER_MCP_SPEC_URL": "https://petstore.swagger.io/v2/swagger.json"
      }
    }
  }
}

7. ChatGPT & OpenAI (Custom GPTs / Assistenten / API)

Direkter OpenAPI-Spezifikationsimport (native Custom-GPT-Aktionen): ChatGPT Custom GPTs unterstützen OpenAPI-Spezifikationen nativ. Sie können Ihre Swagger/OpenAPI-JSON-/YAML-Spezifikations-URL direkt im Abschnitt Actions des Custom-GPT-Builders importieren, ohne einen Zwischenserver zu benötigen.

Über MCP-HTTP/SSE-Gateway: Wenn Sie ChatGPT- oder OpenAI-Agenten über eine HTTP/SSE-Brücke (z. B. mit supergateway oder mcp-remote) mit diesem MCP-Server verbinden, starten Sie swagger-mcp mit einem SSE-Proxy:

npx supergateway --stdio "npx -y @abhishekkumar00019/swagger-mcp --spec-url https://petstore.swagger.io/v2/swagger.json" --port 8000

8. Zed Editor

Fügen Sie es zu ~/.config/zed/settings.json hinzu:

{
  "context_servers": {
    "swagger-mcp": {
      "command": {
        "path": "npx",
        "args": ["-y", "@abhishekkumar00019/swagger-mcp"]
      },
      "env": {
        "SWAGGER_MCP_SPEC_URL": "https://petstore.swagger.io/v2/swagger.json"
      }
    }
  }
}

🔧 Konfigurationsreferenz

Alle Konfigurationsparameter können über Umgebungsvariablen oder CLI-Argumente angegeben werden. SWAGGER_MCP_SPEC_URL ist der einzige erforderliche Parameter.

Umgebungsvariable

CLI-Argument

Erforderlich

Standard

Beschreibung

SWAGGER_MCP_SPEC_URL

--spec-url

Ja

Swagger/OpenAPI-Spezifikations-URL

SWAGGER_MCP_BASE_URL

--base-url

Nein

Automatisch abgeleitet

Ziel-API-Basis-URL überschreiben

SWAGGER_MCP_BEARER_TOKEN

--bearer-token

Nein

Bearer-Token für Authorization: Bearer <token>

SWAGGER_MCP_API_KEY

--api-key

Nein

API-Key-Header-Wert

SWAGGER_MCP_API_KEY_HEADER

--api-key-header

Nein

X-API-Key

Benutzerdefinierter Header-Name für den API-Key

SWAGGER_MCP_BASIC_USER

--basic-user

Nein

Benutzername für Basic Auth

SWAGGER_MCP_BASIC_PASS

--basic-pass

Nein

Passwort für Basic Auth

SWAGGER_MCP_TIMEOUT

--timeout

Nein

30000

HTTP-Request-Timeout in Millisekunden

SWAGGER_MCP_HEADERS

--headers

Nein

{}

Zusätzliche HTTP-Header als JSON-String


🔑 Authentifizierungsbeispiele

Mehrere Authentifizierungsmethoden können gleichzeitig festgelegt werden:

# Bearer Token
SWAGGER_MCP_BEARER_TOKEN=sk-your-token-here

# API Key (Custom Header)
SWAGGER_MCP_API_KEY=your-api-key
SWAGGER_MCP_API_KEY_HEADER=X-Custom-Key

# Basic Auth
SWAGGER_MCP_BASIC_USER=admin
SWAGGER_MCP_BASIC_PASS=secret123

[!NOTE] Wenn sowohl Bearer als auch Basic Auth angegeben sind, überschreibt Basic Auth den Authorization-Header. Kombinieren Sie Bearer-Token mit API-Key-Headern, wenn mehrere Header erforderlich sind.


🏷️ Tool-Benennungsstrategie

Endpunkte aus Ihrer OpenAPI-Spezifikation werden mithilfe der folgenden Prioritätsreihenfolge in MCP-Tools umgewandelt:

Priorität

Quelle

Beispiel

1.

operationId in der Spezifikation definiert

getUserById

2.

Tag + Methode + Pfad

users_get_by_id

3.

Methode + Pfad

get_api_v1_users_by_id


🧰 Integrierte Meta-Tools

Tool

Beschreibung

_swagger_mcp_reload

Ruft die Swagger-Spezifikation live ab und analysiert sie. Nützlich beim Entwickeln oder Aktualisieren von APIs, ohne den Server neu starten zu müssen.


📁 Projektstruktur

swagger-mcp/
├── package.json
├── tsconfig.json
├── src/
│   ├── index.ts              # Entry point & CLI argument parser
│   ├── server.ts             # MCP server initialization & tool registration
│   ├── swagger-parser.ts     # OpenAPI 2.0/3.x spec fetcher & parser
│   ├── tool-builder.ts       # Converts OpenAPI operations -> JSON Schema tools
│   ├── request-handler.ts    # Proxies MCP tool calls to HTTP endpoints
│   ├── auth.ts               # Authentication header builder
│   ├── config.ts             # Environment & CLI configuration manager
│   └── types.ts              # Shared TypeScript interfaces
└── dist/                     # Compiled JavaScript output

📄 Lizenz

MIT

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

No tool schema history has been recorded yet.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • -
    license
    Not graded
    quality
    Not graded
    maintenance
    Dynamically generates MCP tools from Swagger/OpenAPI specifications by extracting swagger.json files at runtime. Enables natural language interaction with any REST API that has Swagger documentation.
    -
  • A
    license
    Not graded
    quality
    Not graded
    maintenance
    Automatically converts Swagger/OpenAPI specifications into dynamic MCP tools, enabling interaction with any REST API through natural language by loading specs from local files or URLs.
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    Dynamically converts any API with an OpenAPI v3 specification into MCP tools for AI assistants. It supports multiple authentication methods including OAuth2, Bearer tokens, and API keys for flexible integration.
    -
  • A
    license
    Not graded
    quality
    C
    maintenance
    Converts any OpenAPI/Swagger API specification into MCP tools that AI assistants can use to interact with the API.
    37
    7
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/itachiuchihadev/swagger_mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server