mcp-konfluent
Eine MCP-Serverimplementierung, die KI-Assistenten die Interaktion mit Confluent Cloud REST-APIs ermöglicht. Dieser Server ermöglicht KI-Tools wie Claude Desktop und Goose CLI die Verwaltung von Kafka-Themen, Konnektoren und Flink-SQL-Anweisungen durch natürliche Sprachinteraktionen.
Demo
Goose-Befehlszeilenschnittstelle
Claude Desktop
Inhaltsverzeichnis
Benutzerhandbuch
Erste Schritte
Erstellen Sie eine Kopieren Sie die Beispielstruktur
.env
Datei (siehe unten) in eine neue Datei mit dem Namen.env
im Stammverzeichnis Ihres Projekts.Füllen Sie die Geben Sie die erforderlichen Werte für Ihre Confluent Cloud-Umgebung ein. Details zu den einzelnen Variablen finden Sie im Abschnitt „Konfiguration“ .
Installieren Sie Node.js (falls noch nicht installiert)
Wir empfehlen die Verwendung von NVM (Node Version Manager) zur Verwaltung von Node.js-Versionen
Installieren und verwenden Sie Node.js:
nvm install 22 nvm use 22
Konfiguration
Erstellen Sie im Stammverzeichnis Ihres Projekts eine .env
Datei mit der folgenden Konfiguration:
Referenz zu Umgebungsvariablen
Variable | Beschreibung | Standardwert | Erforderlich |
HTTP_HOST | Host zum Binden für HTTP-Transport (Zeichenfolge) | "localhost" | Ja |
HTTP_PORT | Für den HTTP-Transport zu verwendender Port (Nummer (min: 0)) | 3000 | Ja |
BOOTSTRAP_SERVERS | Liste der Kafka-Broker-Adressen im Format Host1:Port1,Host2:Port2, die zum Herstellen der ersten Verbindung mit dem Kafka-Cluster verwendet werden (Zeichenfolge) | NEIN | |
CONFLUENT_CLOUD_API_KEY | Master-API-Schlüssel für die Administration der Confluent Cloud-Plattform, der die Verwaltung von Ressourcen in Ihrer gesamten Organisation ermöglicht (Zeichenfolge (mindestens 1)) | NEIN | |
CONFLUENT_CLOUD_API_SECRET | Master-API-Geheimnis gepaart mit CONFLUENT_CLOUD_API_KEY für umfassende Confluent Cloud-Plattformverwaltung (Zeichenfolge (min.: 1)) | NEIN | |
CONFLUENT_CLOUD_REST_ENDPOINT | Basis-URL für die REST-API-Dienste von Confluent Cloud (Standard) | NEIN | |
FLINK_API_KEY | Authentifizierungsschlüssel für den Zugriff auf die Flink-Dienste von Confluent Cloud, einschließlich Compute-Pools und SQL-Anweisungsverwaltung (Zeichenfolge (min.: 1)) | NEIN | |
FLINK_API_SECRET | Geheimes Token gepaart mit FLINK_API_KEY für authentifizierten Zugriff auf die Flink-Dienste von Confluent Cloud (Zeichenfolge (min.: 1)) | NEIN | |
FLINK_COMPUTE_POOL_ID | Eindeutige Kennung für den Flink-Rechnerpool, muss mit dem Präfix „lfcp-“ beginnen (Zeichenfolge) | NEIN | |
FLINK_DATABASE_NAME | Name des zugehörigen Kafka-Clusters, der als Datenbankreferenz in Flink-SQL-Operationen verwendet wird (Zeichenfolge (min.: 1)) | NEIN | |
FLINK_ENV_ID | Eindeutige Kennung für die Flink-Umgebung, muss mit dem Präfix „env-“ beginnen (Zeichenfolge) | NEIN | |
FLINK_ENV_NAME | Für Menschen lesbarer Name für die Flink-Umgebung, der zu Identifikations- und Anzeigezwecken verwendet wird (Zeichenfolge (min.: 1)) | NEIN | |
FLINK_ORG_ID | Organisationskennung innerhalb von Confluent Cloud für die Flink-Ressourcenverwaltung (Zeichenfolge (min.: 1)) | NEIN | |
FLINK_REST_ENDPOINT | Basis-URL für die Flink REST-API-Endpunkte von Confluent Cloud, die für SQL-Anweisungen und die Verwaltung von Compute-Pools verwendet werden (Zeichenfolge) | NEIN | |
KAFKA_API_KEY | Authentifizierungsdaten (Benutzername), die zum Herstellen einer sicheren Verbindung mit dem Kafka-Cluster erforderlich sind (Zeichenfolge (min.: 1)) | NEIN | |
KAFKA_API_SECRET | Authentifizierungsdaten (Passwort) gepaart mit KAFKA_API_KEY für sicheren Kafka-Clusterzugriff (Zeichenfolge (min.: 1)) | NEIN | |
KAFKA_CLUSTER_ID | Eindeutige Kennung für den Kafka-Cluster innerhalb des Confluent Cloud-Ökosystems (Zeichenfolge (min.: 1)) | NEIN | |
KAFKA_ENV_ID | Umgebungskennung für Kafka-Cluster, muss mit dem Präfix „env-“ (Zeichenfolge) beginnen | NEIN | |
KAFKA_REST_ENDPOINT | REST-API-Endpunkt für Kafka-Clusterverwaltung und -Administration (Zeichenfolge) | NEIN | |
SCHEMA_REGISTRY_API_KEY | Authentifizierungsschlüssel für den Zugriff auf Schema Registry-Dienste zum Verwalten und Validieren von Datenschemata (Zeichenfolge (min.: 1)) | NEIN | |
SCHEMA_REGISTRY_API_SECRET | Authentifizierungsgeheimnis gepaart mit SCHEMA_REGISTRY_API_KEY für sicheren Schema Registry-Zugriff (Zeichenfolge (min.: 1)) | NEIN | |
SCHEMA_REGISTRY_ENDPOINT | URL-Endpunkt für den Zugriff auf Schema Registry-Dienste zur Verwaltung von Datenschemata (Zeichenfolge) | NEIN |
Verwendung
Dieser MCP-Server ist für die Verwendung mit verschiedenen MCP-Clients wie Claude Desktop oder Goose CLI/Desktop konzipiert. Die spezifische Konfiguration und Interaktion hängt vom verwendeten Client ab. Die allgemeinen Schritte sind jedoch:
Starten Sie den Server: Sie können den MCP-Server auf zwei Arten ausführen:
Aus der Quelle: Folgen Sie den Anweisungen im Entwicklerhandbuch, um den Server aus der Quelle zu erstellen und auszuführen. Dies umfasst in der Regel:
Installieren von Abhängigkeiten (
npm install
)Erstellen des Projekts (
npm run build
odernpm run dev
)
Mit npx: Sie können den Server direkt mit npx starten (kein Build erforderlich):
npx -y @confluentinc/mcp-confluent -e /path/to/confluent-mcp-server/.env
Konfigurieren Sie Ihren MCP-Client: Jeder Client hat seine eigene Methode, die Adresse des MCP-Servers und die erforderlichen Anmeldeinformationen anzugeben. Sie müssen Ihren Client (z. B. Claude, Goose) so konfigurieren, dass er sich mit der Adresse verbindet, auf der dieser Server läuft (wahrscheinlich
localhost
mit einem bestimmten Port). Der Port, auf dem der Server läuft, kann durch eine Umgebungsvariable konfiguriert werden.Starten Sie den MCP-Client: Sobald Ihr Client für die Verbindung mit dem MCP-Server konfiguriert ist, können Sie ihn starten. Beim Start wird eine lokale Instanz des MCP-Servers eingerichtet. Diese Instanz verwaltet die Datenschemata und interagiert in Ihrem Namen mit Confluent Cloud.
Interaktion mit Confluent über den Client: Sobald der Client verbunden ist, können Sie über dessen Schnittstelle mit Confluent Cloud-Ressourcen interagieren. Der Client sendet Anfragen an den MCP-Server, der dann in Ihrem Namen mit Confluent Cloud interagiert.
Konfigurieren von Claude Desktop
Weitere Einzelheiten zur Installation von Claude Desktop- und MCP-Servern finden Sie hier .
So konfigurieren Sie Claude Desktop für die Verwendung dieses MCP-Servers:
Öffnen Sie die Claude Desktop-Konfiguration
Auf dem Mac:
~/Library/Application Support/Claude/claude_desktop_config.json
Unter Windows:
%APPDATA%\Claude\claude_desktop_config.json
Konfigurationsdatei bearbeiten
Öffnen Sie die Konfigurationsdatei in Ihrem bevorzugten Texteditor
Fügen Sie die Konfiguration mit einer der folgenden Methoden hinzu oder ändern Sie sie:
{ "mcpServers": { "confluent": { "command": "node", "args": [ "/path/to/confluent-mcp-server/dist/index.js", "--env-file", "/path/to/confluent-mcp-server/.env", ] } } }{ "mcpServers": { "confluent": { "command": "npx", "args": [ "-y" "@confluentinc/mcp-confluent", "-e", "/path/to/confluent-mcp-server/.env" ] } } }Ersetzen Sie
/path/to/confluent-mcp-server/
durch den tatsächlichen Pfad, in dem Sie diesen MCP-Server installiert haben.Starten Sie Claude Desktop neu
Schließen Sie Claude Desktop und öffnen Sie es erneut, damit die Änderungen wirksam werden.
Der MCP-Server wird automatisch gestartet, wenn Claude Desktop startet
Jetzt wird Claude Desktop so konfiguriert, dass Ihr lokaler MCP-Server für Confluent-Interaktionen verwendet wird.
Konfigurieren der Goose CLI
Ausführliche Anweisungen zur Installation der Goose CLI finden Sie hier .
Führen Sie nach der Installation die folgenden Schritte aus:
Führen Sie den Konfigurationsbefehl aus:
goose configureFolgen Sie den interaktiven Anweisungen:
Wählen Sie
Add extension
Wählen Sie
Command-line Extension
Geben Sie als Erweiterungsnamen
mcp-confluent
einWählen Sie eine der folgenden Konfigurationsmethoden:
node /path/to/confluent-mcp-server/dist/index.js --env-file /path/to/confluent-mcp-server/.envnpx -y @confluentinc/mcp-confluent -e /path/to/confluent-mcp-server/.env
Ersetzen Sie /path/to/confluent-mcp-server/
durch den tatsächlichen Pfad, in dem Sie diesen MCP-Server installiert haben.
mcp-confluent CLI-Nutzung
Der MCP-Server bietet eine flexible Befehlszeilenschnittstelle (CLI) für erweiterte Konfiguration und Steuerung. Über die CLI können Sie Umgebungsdateien und Transporte angeben und genau festlegen, welche Tools aktiviert oder blockiert werden.
Grundlegende Verwendung
Sie können alle CLI-Optionen anzeigen und Hilfe zu Folgendem erhalten:
Beispiel: Bereitstellung mit allen Transportmöglichkeiten
Beispiel: Nur bestimmte Tools zulassen
Beispiel: Bestimmte Tools blockieren
Beispiel: Werkzeuglisten aus Dateien verwenden
Beispiel: Alle verfügbaren Tools auflisten
Tipp: Die Zulassungsliste wird vor der Sperrliste angewendet. Wenn keine der beiden Optionen angegeben ist, sind alle Tools standardmäßig aktiviert.
Entwicklerhandbuch
Projektstruktur
Bauen und Ausführen
Abhängigkeiten installieren:
npm installEntwicklungsmodus (achten Sie auf Änderungen):
npm run devDieser Befehl kompiliert den TypeScript-Code in JavaScript und erstellt ihn automatisch neu, wenn Änderungen im Verzeichnis
src/
erkannt werden.Produktionsbuild (einmalige Kompilierung):
npm run buildStarten Sie den Server:
npm run start
Testen
MCP-Inspektor
Zum Testen von MCP-Servern können Sie MCP Inspector verwenden, ein interaktives Entwicklertool zum Testen und Debuggen von MCP-Servern.
Hinzufügen eines neuen Tools
Fügen Sie der Enumerationsklasse
ToolName
eine neue Enumeration hinzu.Fügen Sie Ihr neues Tool zur Handler-Map in der
ToolFactory
Klasse hinzu.Erstellen Sie eine neue Datei und exportieren Sie die Klasse, die
BaseToolHandler
erweitert.Implementieren Sie die
handle
-Methode der Basisklasse.Implementieren Sie die Methode
getToolConfig
der Basisklasse.
Wenn Sie zufrieden sind, fügen Sie es dem Satz
enabledTools
“ inindex.ts
hinzu.
Generieren von Typen
Beitragen
Fehlerberichte und Feedback werden in Form von Github Issues gerne entgegengenommen. Richtlinien zum Mitwirken finden Sie unter CONTRIBUTING.md
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Tools
Eine MCP-Serverimplementierung, die für die Interaktion mit Confluent Kafka und Confluent Cloud REST-APIs entwickelt wurde.
Related Resources
Related MCP Servers
- -securityAlicense-qualityMCP Server simplifies the implementation of the Model Context Protocol by providing a user-friendly API to create custom tools and manage server workflows efficiently.Last updated -34MIT License
- -securityAlicense-qualityMCP Server provides a simpler API to interact with the Model Context Protocol by allowing users to define custom tools and services to streamline workflows and processes.Last updated -63MIT License
- -securityAlicense-qualityAn MCP server that exposes HTTP methods defined in an OpenAPI specification as tools, enabling interaction with APIs via the Model Context Protocol.Last updated -8MIT 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 -3935