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.

Кафка MCP-сервер

Сервер протокола контекста сообщений (MCP), который интегрируется с Apache Kafka для предоставления функций публикации и потребления для приложений LLM и Agentic.

Обзор

Этот проект реализует сервер, который позволяет моделям ИИ взаимодействовать с темами Kafka через стандартизированный интерфейс. Он поддерживает:

  • Публикация сообщений в темах Kafka
  • Потребление сообщений из тем Kafka

Предпосылки

  • Питон 3.8+
  • Экземпляр Apache Kafka
  • Зависимости Python (см. раздел Установка)

Установка

  1. Клонируйте репозиторий:
    git clone <repository-url> cd <repository-directory>
  2. Создайте виртуальную среду и активируйте ее:
    python -m venv venv source venv/bin/activate # On Windows, use: venv\Scripts\activate
  3. Установите необходимые зависимости:
    pip install -r requirements.txt
    Если файл requirements.txt отсутствует, установите следующие пакеты:
    pip install aiokafka python-dotenv pydantic-settings mcp-server

Конфигурация

Создайте файл .env в корне проекта со следующими переменными:

# 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"

Использование

Запуск сервера

Вы можете запустить сервер, используя предоставленный скрипт main.py :

python main.py --transport stdio

Доступные варианты транспорта:

  • stdio : Стандартный ввод/вывод (по умолчанию)
  • sse : События, отправленные сервером

Интеграция с Claude Desktop

Чтобы использовать этот сервер Kafka MCP с Claude Desktop, добавьте следующую конфигурацию в файл конфигурации Claude Desktop:

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

Замените <PATH TO PROJECTS> на абсолютный путь к каталогу вашего проекта.

Структура проекта

  • main.py : Точка входа для приложения
  • kafka.py : реализация коннектора Kafka
  • server.py : реализация сервера MCP с инструментами для взаимодействия с Kafka
  • settings.py : Управление конфигурацией с помощью Pydantic

Доступные инструменты

kafka-опубликовать

Публикует информацию в настроенной теме Kafka.

кафка-потреблять

использовать информацию из настроенной темы Kafka.

  • Примечание: после прочтения сообщения из темы его нельзя будет прочитать снова, используя тот же идентификатор группы.
-
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.

Позволяет моделям ИИ публиковать и потреблять сообщения из тем Apache Kafka через стандартизированный интерфейс, что упрощает интеграцию обмена сообщениями Kafka с приложениями LLM и агентами.

  1. Обзор
    1. Предпосылки
      1. Установка
        1. Конфигурация
          1. Использование
            1. Запуск сервера
            2. Интеграция с Claude Desktop
          2. Структура проекта
            1. Доступные инструменты
              1. kafka-опубликовать
              2. кафка-потреблять

            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