AI Personal Learning
und praktische Anleitung
豆包Marscode1

openapi-mcp-server: Ermöglicht KI den direkten Aufruf von MCP-Diensten mit offenen APIs

Allgemeine Einführung

openapi-mcp-server ist ein Open-Source-Tool zur Umwandlung von OpenAPI v3.1-konformen APIs in AI-verwendbare Ressourcen. Es wird von janwilmake gepflegt und auf der Grundlage des Model Context Protocol (MCP) entwickelt. Die Kernfunktion des Projekts ist es, als API-Proxy zu fungieren, der es Entwicklern ermöglicht, die Claude Tools wie Desktop interagieren direkt mit der API. Dieses Tool ist besonders für Entwickler und KI-Ingenieure geeignet, die APIs schnell integrieren müssen. Es ist so konzipiert, dass es einfach und unkompliziert ist, auf GitHub als Open Source zur Verfügung steht und von jedermann kostenlos genutzt werden kann, um Code beizusteuern.

openapi-mcp-server:让AI直接调用开放API的MCP服务-1


 

Funktionsliste

  • API zum MCP-ProxyOpenAPI: Konvertiert OpenAPI-spezifizierte Endpunkte in Claude-verwendbare Tools.
  • Unterstützt mehrere Formate: APIs können in OpenAI, Anthropic oder MCP Format der Werkzeuge.
  • BefehlszeilenbetriebBereitstellung von CLI-Tools zur Erleichterung von programmatischen Aufrufen der API.
  • BeispielserverEingebaute Petstore-API-Beispiele, die den Benutzern einen schnellen Einstieg ermöglichen.
  • Quelloffen und kostenlosDer Code ist öffentlich zugänglich und kann vom Benutzer frei verändert und erweitert werden.

 

Hilfe verwenden

openapi-mcp-server erfordert keine komplizierte Installation. Holen Sie sich einfach den Quellcode über GitHub und führen Sie ihn aus. Hier sind die detaillierten Schritte.

Installation und Betrieb

  1. Vorbereiten der Umgebung
    Stellen Sie sicher, dass Sie Node.js und pnpm auf Ihrem Computer installiert haben (empfohlen). Dies kann mit dem Befehl überprüft werden:
node -v
pnpm -v

Falls nicht, besuchen Sie https://nodejs.org im Gesang antworten https://pnpm.io Herunterladen und installieren.
2. Klon-Lager
Öffnen Sie ein Terminal und geben Sie ein:

git clone https://github.com/janwilmake/openapi-mcp-server.git
cd openapi-mcp-server
  1. Installation von Abhängigkeiten
    Im Projektverzeichnis ausführen:
pnpm install
  1. Erstellen Sie das Projekt
    Erstellen Sie den Code, um den ordnungsgemäßen Betrieb sicherzustellen:
pnpm build
  1. Verknüpfung globaler Befehle
    Bereitstellung von Befehlszeilentools:
npm link

Claude Desktop konfigurieren

  1. Konfigurationsdatei bearbeiten
    Suchen Sie die Konfigurationsdatei für Claude Desktop, normalerweise in:
  • Fenster. %AppData%\Claude\claude_desktop_config.json
  • Mac. ~/Library/Application Support/Claude/claude_desktop_config.json
    Wenn nicht, erstellen Sie eine neue Datei.
  1. Hinzufügen eines MCP-Servers
    Fügen Sie der Konfigurationsdatei Folgendes hinzu:
{
"mcpServers": {
"petstore-api": {
"command": "npx",
"args": ["openapi-mcp-server", "/path/to/petstore-openapi.json"]
}
}
}

Oberbefehlshaber (Militär) /path/to/petstore-openapi.json Ersetzen Sie ihn durch den Pfad zu Ihrer OpenAPI-Datei, z. B. den Pfad des Projekts examples/petstore-openapi.json.
3. Start Claude Desktop
Führen Sie Claude Desktop aus, und dieser Server wird automatisch geladen.

Aufrufen der API mit der CLI

  1. Vorbereiten der OpenAPI-Datei
    Stellen Sie sicher, dass Sie die OpenAPI v3.1 JSON-Datei für die Ziel-API haben, z. B. petstore-openapi.json.
  2. Befehl ausführen
    Geben Sie ihn in das Terminal ein:
npx openapi-mcp-server /path/to/your-openapi.json

Dadurch wird ein Proxyserver gestartet.
3. Test Tierhandlung Beispiel
Das Projekt wird mit einem Petstore API-Beispiel geliefert. Führen Sie es aus:

npx openapi-mcp-server examples/petstore-openapi.json

Dann interagieren Sie damit in Claude Desktop, indem Sie zum Beispiel "get pet by ID" eingeben.

Programmatische Konvertierung API

  1. Importmodul
    Fügen Sie in Ihrem Node.js-Projekt den Code ein:
import { OpenAPIToMCPConverter } from 'openapi-mcp-server';
  1. Konvertierung API
    Verwenden Sie den folgenden Code, um OpenAPI in das Tool-Format zu konvertieren:
const converter = new OpenAPIToMCPConverter(openApiSpec); // openApiSpec 是你的 JSON 数据
const openAiTools = await converter.convertToOpenAITools(); // 转为 OpenAI 格式
const mcpTools = converter.convertToMCPTools(); // 转为 MCP 格式
  1. Aufrufen der API
    Verwenden Sie HttpClient, um die Anfrage auszuführen:
import { HttpClient } from 'openapi-mcp-server';
const httpClient = new HttpClient({ baseUrl: 'https://api.example.com' }, openApiSpec);
const response = await httpClient.executeOperation(mcpTools.openApiLookup['getPetById'], { petId: 123 });

Betriebsvorschlag

  • Debugging-ProblemeWenn Claude abstürzt, überprüfen Sie, ob die OpenAPI-Datei in Ordnung ist, indem Sie die https://editor.swagger.io Validierung.
  • Code aktualisierenNachdem Sie den Code geändert haben, führen Sie pnpm build und starten Sie Claude Desktop neu.
  • Beispiele zum Lernen: Ansicht examples/README.mdDie CRUD-Vorgänge des Petstore-Servers verstehen.

 

Anwendungsszenario

  1. Schnelle API-Integration
    Ein Entwickler möchte einem Projekt Funktionen zur Verwaltung von Haustieren hinzufügen. Er lud die Petstore-API mit openapi-mcp-server und testete die Endpunkte direkt in Claude, um Zeit beim manuellen Schreiben von Code zu sparen.
  2. KI-gestützte Entwicklung
    Der KI-Ingenieur muss den API-Aufrufcode generieren. Er konvertiert die OpenAPI-Datei mit einem Tool und generiert den vollständigen Aufrufcode mit Claude.
  3. Demonstration der Lehre
    Anhand des Petstore-Beispiels zeigt der Lehrer den Schülern, wie man APIs in KI-Tools einbindet, und lernt etwas über API-Interaktionen.

 

QA

  1. Muss ich bezahlen?
    Das ist nicht nötig, denn das Projekt ist komplett quelloffen und kostenlos und wird auf GitHub gehostet.
  2. Welche APIs werden unterstützt?
    Jede API, die Teil der OpenAPI v3.1-Spezifikation ist, ist in Ordnung, z. B. GitHub, Cloudflare, usw.
  3. Was, wenn Claude es nicht erkennt?
    Überprüfen Sie, ob der Pfad der Konfigurationsdatei und die OpenAPI-Datei korrekt sind, und stellen Sie sicher, dass der Server eingeschaltet ist.
Darf nicht ohne Genehmigung vervielfältigt werden:Leiter des AI-Austauschkreises " openapi-mcp-server: Ermöglicht KI den direkten Aufruf von MCP-Diensten mit offenen APIs
de_DEDeutsch