Swagger MCP
Ein MCP-Server, der eine Verbindung zu einer Swagger-Spezifikation herstellt und einer KI hilft, alle erforderlichen Modelle zu erstellen, um einen MCP-Server für diesen Dienst zu generieren.
Merkmale
- Lädt eine Swagger-Spezifikation herunter und speichert sie lokal, damit Sie schneller darauf zugreifen können.
- Gibt eine Liste aller Endpunkte und ihrer HTTP-Methoden und Beschreibungen zurück
- Gibt eine Liste aller Modelle zurück
- Gibt ein Modell zurück
- Gibt den Dienst zurück, um eine Verbindung zum Endpunkt herzustellen
- Gibt MCP-Funktionsdefinitionen zurück
- Generiert vollständige MCP-Tooldefinitionen mit vollständigen Schemainformationen
- Enthält KI-spezifische Anweisungen in den Werkzeugbeschreibungen
Voraussetzungen
- Node.js (v14 oder höher)
- npm oder yarn
Installation
- Klonen Sie das Repository:
- Installieren Sie Abhängigkeiten:
- Erstellen Sie eine
.env
Datei basierend auf der.env.example
-Datei:
- Aktualisieren Sie die
.env
Datei.
Konfiguration
Bearbeiten Sie die .env
Datei, um die Anwendung zu konfigurieren:
PORT
: Der Port, auf dem der Server läuft (Standard: 3000)NODE_ENV
: Die Umgebung (Entwicklung, Produktion, Test)LOG_LEVEL
: Protokollierungsebene (Info, Fehler, Debug)
Verwendung
Erstellen der Anwendung
Erstellen Sie die Anwendung:
Dadurch wird der TypeScript-Code kompiliert und ist bereit, als MCP-Server verwendet zu werden
Wird als MCP-Server ausgeführt
So führen Sie es als MCP-Server zur Integration mit Cursor und anderen Anwendungen aus:
Verwenden des MCP-Inspektors
So führen Sie den MCP-Inspector zum Debuggen aus:
Zum Cursor hinzufügen
So fügen Sie diesen MCP-Server zu Cursor hinzu:
- Öffnen Sie Cursoreinstellungen > Funktionen > MCP
- Klicken Sie auf „+ Neuen MCP-Server hinzufügen“
- Geben Sie einen Namen für den Server ein (z. B. „Swagger MCP“)
- Wählen Sie „stdio“ als Transporttyp
- Geben Sie den Befehl zum Ausführen des Servers ein:
node path/to/swagger-mcp/build/index.js
und fügen Sie dann bei Bedarf die Befehlszeilenargumente wie oben erwähnt hinzu. - Klicken Sie auf „Hinzufügen“
Die Swagger MCP-Tools stehen jetzt dem Cursor-Agenten in Composer zur Verfügung.
Verfügbare Swagger MCP-Tools
Die folgenden Tools sind über den MCP-Server verfügbar:
getSwaggerDefinition
: Lädt eine Swagger-Definition von einer URL herunterlistEndpoints
: Listet alle Endpunkte aus der Swagger-Definition auflistEndpointModels
: Listet alle Modelle auf, die von einem bestimmten Endpunkt verwendet werdengenerateModelCode
: Generiert TypeScript-Code für ein ModellgenerateEndpointToolCode
: Generiert TypeScript-Code für eine MCP-Tooldefinition
Verfügbare Swagger MCP-Eingabeaufforderungen
Der Server bietet außerdem MCP-Eingabeaufforderungen, die KI-Assistenten durch gängige Arbeitsabläufe führen:
add-endpoint
: Eine Schritt-für-Schritt-Anleitung zum Hinzufügen eines neuen Endpunkts mit den Swagger MCP-Tools
Um eine Eingabeaufforderung zu verwenden, können Clients eine prompts/get
-Anforderung mit dem Namen der Eingabeaufforderung und optionalen Argumenten stellen:
Die Eingabeaufforderung gibt eine Reihe von Nachrichten zurück, die den KI-Assistenten durch den genauen Prozess führen, der zum Hinzufügen eines neuen Endpunkts erforderlich ist.
Einrichten Ihres neuen Projekts
Bitten Sie den Agenten zunächst, die Swagger-Datei abzurufen. Geben Sie ihm unbedingt die URL für die Swagger-Datei oder zumindest eine Möglichkeit, diese für Sie zu finden. Dadurch wird die Datei heruntergeladen und lokal unter einem gehashten Dateinamen gespeichert. Dieser Dateiname wird automatisch zu einer .swagger-mcp
Einstellungsdatei im Stammverzeichnis Ihrer aktuellen Lösung hinzugefügt.
Automatisch generierte .swagger-mcp-Konfigurationsdatei
Diese einfache Konfigurationsdatei verknüpft Ihr aktuelles Projekt mit einer bestimmten Swagger-API. Wir können sie in Zukunft verwenden, um weitere Details zu speichern.
Nach der Konfiguration kann das MCP Ihre Swagger-Definition finden und sie mit Ihrer aktuellen Lösung verknüpfen. Dadurch wird die Anzahl der API-Aufrufe reduziert, die erforderlich sind, um das Projekt und die Aufgaben abzurufen, die mit der Lösung zusammenhängen, an der Sie arbeiten.
Verbesserter MCP-Tool-Codegenerator
Der MCP-Toolcodegenerator wurde erweitert, um vollständigere und benutzerfreundlichere Tooldefinitionen bereitzustellen:
Wichtige Verbesserungen
- Vollständige Schemainformationen : Der Generator enthält jetzt vollständige Schemainformationen für alle Modelle, einschließlich verschachtelter Objekte, direkt im Eingabeschema.
- Bessere Parameterbenennung : Parameternamen sind jetzt semantischer und vermeiden problematische Zeichen wie Punkte (z. B.
taskRequest
statttask.Request
). - Semantische Toolnamen : Toolnamen sind jetzt aussagekräftiger und folgen konsistenten Namenskonventionen basierend auf der HTTP-Methode und dem Ressourcenpfad.
- Unterstützung für YAML-Swagger-Dateien : Der Generator unterstützt jetzt sowohl JSON- als auch YAML-Swagger-Definitionsdateien.
- Verbesserte Dokumentation : Generierte Werkzeugdefinitionen enthalten umfassende Beschreibungen aller Parameter und Eigenschaften.
- Keine externen Abhängigkeiten : Der generierte Code erfordert keinen Import externer Modelldateien, wodurch er eigenständiger und einfacher zu verwenden ist.
- KI-spezifische Anweisungen : Die Toolbeschreibungen enthalten jetzt spezielle Anweisungen für KI-Agenten, die ihnen helfen zu verstehen, wie sie die Tools effektiv nutzen können.
Beispielverwendung
So generieren Sie eine MCP-Tooldefinition für einen Endpunkt:
Dadurch wird eine vollständige MCP-Tooldefinition mit vollständigen Schemainformationen für den POST /pets-Endpunkt generiert.
Lizenz
Dieses Projekt ist unter der MIT-Lizenz lizenziert – Einzelheiten finden Sie in der Datei LICENSE .
MCP-Eingabeaufforderungen für KI-Assistenten
Damit KI-Assistenten die Swagger MCP-Tools effektiv nutzen können, haben wir eine Reihe von Eingabeaufforderungen erstellt, die sie durch häufige Aufgaben führen. Diese Eingabeaufforderungen bieten Schritt-für-Schritt-Anleitungen für Prozesse wie das Hinzufügen neuer Endpunkte, die Verwendung generierter Modelle und mehr.
Die vollständige Sammlung der Eingabeaufforderungen finden Sie in der Datei PROMPTS.md .
Beispiel-Anwendungsfall: Wenn Sie einen KI-Assistenten bitten, Ihrem Projekt einen neuen Endpunkt hinzuzufügen, können Sie auf die Eingabeaufforderung „Hinzufügen eines neuen Endpunkts“ verweisen, um sicherzustellen, dass der Assistent den richtigen Prozess in der richtigen Reihenfolge befolgt.
This server cannot be installed
local-only server
The server can only run on the client's local machine because it depends on local resources.
Ein MCP-Server, der eine Verbindung zu einer Swagger-Spezifikation herstellt und einer KI hilft, alle erforderlichen Modelle zu erstellen, um einen MCP-Server für diesen Dienst zu generieren.
Related MCP Servers
- -securityAlicense-qualityA framework to use with AI to easily create a server for any service. Just drop the API Documentation in it and ask to create the MCP.Last updated -4TypeScriptMIT License
- AsecurityFlicenseAqualityAn MCP server implementation that enables interaction with the Unstructured API, providing tools to list, create, update, and manage sources, destinations, and workflows.Last updated -3928
- -securityAlicense-qualityA server that enables interaction with any API that has a Swagger/OpenAPI specification through Model Context Protocol (MCP), automatically generating tools from API endpoints and supporting multiple authentication methods.Last updated -61TypeScriptApache 2.0
- -securityFlicense-qualityAn MCP server that crawls API documentation websites and exposes their content to AI models, enabling them to search, browse, and reference API specifications.Last updated -Python