Skip to main content
Glama

Kafka MCP Server

Kafka MCP Server

Ein Message Context Protocol (MCP)-Server, der in Apache Kafka integriert ist, um Veröffentlichungs- und Konsumfunktionen für LLM- und Agentic-Anwendungen bereitzustellen.

Überblick

Dieses Projekt implementiert einen Server, der es KI-Modellen ermöglicht, über eine standardisierte Schnittstelle mit Kafka-Themen zu interagieren. Es unterstützt:

  • Veröffentlichen von Nachrichten zu Kafka-Themen
  • Nachrichten aus Kafka-Themen nutzen

Voraussetzungen

  • Python 3.8+
  • Apache Kafka-Instanz
  • Python-Abhängigkeiten (siehe Abschnitt „Installation“)

Installation

  1. Klonen Sie das Repository:
    git clone <repository-url> cd <repository-directory>
  2. Erstellen Sie eine virtuelle Umgebung und aktivieren Sie sie:
    python -m venv venv source venv/bin/activate # On Windows, use: venv\Scripts\activate
  3. Installieren Sie die erforderlichen Abhängigkeiten:
    pip install -r requirements.txt
    Wenn keine Datei „requirements.txt“ vorhanden ist, installieren Sie die folgenden Pakete:
    pip install aiokafka python-dotenv pydantic-settings mcp-server

Konfiguration

Erstellen Sie im Projektstammverzeichnis eine .env Datei mit den folgenden Variablen:

# Kafka Configuration KAFKA_BOOTSTRAP_SERVERS=localhost:9092 TOPIC_NAME=your-topic-name IS_TOPIC_READ_FROM_BEGINNING=False DEFAULT_GROUP_ID_FOR_CONSUMER=kafka-mcp-group # Optional: Custom Tool Descriptions # TOOL_PUBLISH_DESCRIPTION="Custom description for the publish tool" # TOOL_CONSUME_DESCRIPTION="Custom description for the consume tool"

Verwendung

Ausführen des Servers

Sie können den Server mit dem bereitgestellten main.py -Skript ausführen:

python main.py --transport stdio

Verfügbare Transportmöglichkeiten:

  • stdio : Standardeingabe/-ausgabe (Standard)
  • sse : Vom Server gesendete Ereignisse

Integration mit Claude Desktop

Um diesen Kafka MCP-Server mit Claude Desktop zu verwenden, fügen Sie Ihrer Claude Desktop-Konfigurationsdatei die folgende Konfiguration hinzu:

{ "mcpServers": { "kafka": { "command": "python", "args": [ "<PATH TO PROJECTS>/main.py" ] } } }

Ersetzen Sie <PATH TO PROJECTS> durch den absoluten Pfad zu Ihrem Projektverzeichnis.

Projektstruktur

  • main.py : Einstiegspunkt für die Anwendung
  • kafka.py : Implementierung des Kafka-Konnektors
  • server.py : MCP-Serverimplementierung mit Tools für die Kafka-Interaktion
  • settings.py : Konfigurationsverwaltung mit Pydantic

Verfügbare Tools

Kafka-Publish

Veröffentlicht Informationen zum konfigurierten Kafka-Thema.

Kafka-Konsum

Informationen aus dem konfigurierten Kafka-Thema nutzen.

  • Hinweis: Sobald eine Nachricht aus dem Thema gelesen wurde, kann sie mit derselben Gruppen-ID nicht erneut gelesen werden.

Thema erstellen

Erstellt ein neues Kafka-Thema mit angegebenen Parametern.

  • Optionen :
    • --topic Name des zu erstellenden Themas
    • --partitions Anzahl der zuzuweisenden Partitionen
    • --replication-factor Replikationsfaktor zwischen Brokern
    • --config (optional) Überschreibt die Konfiguration auf Themenebene (z. B. retention.ms=604800000 )

Thema löschen

Löscht ein vorhandenes Kafka-Thema.

  • Optionen :
    • --topic Name des zu löschenden Themas
    • --timeout (optional) Wartezeit bis zum Abschluss des Löschvorgangs

Listenthemen

Listet alle Themen im Cluster auf (oder nach Muster gefiltert).

  • Optionen :
    • --bootstrap-server Brokeradresse
    • --pattern (optional) Regulärer Ausdruck zum Filtern von Themennamen
    • --exclude-internal (optional) Interne Themen ausschließen (Standard: true)

Themen-Konfiguration

Zeigt die Konfiguration für ein oder mehrere Themen an oder ändert sie.

  • Optionen :
    • --describe Aktuelle Konfigurationen für ein Thema anzeigen
    • --alter Konfigurationen ändern (zB --add-config retention.ms=86400000,--delete-config cleanup.policy )
    • --topic Name des Themas

Themen-Metadaten

Ruft Metadaten zu einem Thema oder dem Cluster ab.

  • Optionen :
    • --topic (falls angegeben) Ruft Metadaten nur für dieses Thema ab
    • --bootstrap-server Brokeradresse
    • --include-offline (optional) Schließt Broker oder Partitionen ein, die offline sind
-
security - not tested
A
license - permissive license
-
quality - not tested

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.

Ermöglicht KI-Modellen, Nachrichten aus Apache Kafka-Themen über eine standardisierte Schnittstelle zu veröffentlichen und zu nutzen, wodurch die Integration von Kafka-Messaging in LLM- und Agent-Anwendungen vereinfacht wird.

  1. Überblick
    1. Voraussetzungen
      1. Installation
        1. Konfiguration
          1. Verwendung
            1. Ausführen des Servers
            2. Integration mit Claude Desktop
          2. Projektstruktur
            1. Verfügbare Tools
              1. Kafka-Publish
              2. Kafka-Konsum
              3. Thema erstellen
              4. Thema löschen
              5. Listenthemen
              6. Themen-Konfiguration
              7. Themen-Metadaten

            Related MCP Servers

            • A
              security
              A
              license
              A
              quality
              Enables AI models to interact with messages from various messaging platforms (Mobile, Mail, WhatsApp, LinkedIn, Slack, Twitter, Telegram, Instagram, Messenger) through a standardized interface.
              Last updated -
              3
              11
              Python
              MIT License
              • Linux
            • -
              security
              F
              license
              -
              quality
              Provides AI agents with comprehensive Twitter functionality through the Model Context Protocol standard, enabling reading tweets, posting content, managing interactions, and accessing timeline data with robust error handling.
              Last updated -
              5
              11
              JavaScript
              • Apple
            • A
              security
              A
              license
              A
              quality
              A server implementing Model Context Protocol that enables AI assistants to interact with Slack API through a standardized interface, providing tools for messaging, channel management, user information retrieval, and more.
              Last updated -
              9
              87
              JavaScript
              Apache 2.0
            • -
              security
              F
              license
              -
              quality
              An implementation of the Model Context Protocol that connects AI agents to Kakao Official Accounts, allowing users to send various message templates through the Kakao Developers API.
              Last updated -
              8
              Python
              • Linux
              • Apple

            View all related MCP servers

            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/pavanjava/kafka_mcp_server'

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