Kafka MCP Server

Integrations

  • Supports environment variable configuration through .env files for Kafka connection settings and tool descriptions.

  • Provides publish and consume functionalities for Kafka topics, allowing messages to be sent to and retrieved from Kafka streams. Messages consumed cannot be read again using the same group ID.

  • Utilizes Pydantic for settings management and validation of configuration values.

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.
-
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

            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
              3
              Python
              MIT License
              • Linux
            • -
              security
              F
              license
              -
              quality
              Enables AI and LLM systems to interact with the Buttondown newsletter service, supporting email drafting, scheduling, analytics retrieval, and list management through a Model Context Protocol interface.
              Last updated -
              TypeScript
            • -
              security
              -
              license
              -
              quality
              An MCP-based messaging system that allows AI systems to interact with various messaging platforms through standardized tools for sending text, images, documents, buttons, and alerts.
              Last updated -
              Python
            • A
              security
              A
              license
              A
              quality
              An MCP server implementation built to interact with Confluent Kafka and Confluent Cloud REST APIs.
              Last updated -
              24
              38
              26
              TypeScript
              MIT License
              • Apple

            View all related MCP servers

            ID: 8ohdumy56r