Kafka MCP Server

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

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 서버

LLM 및 Agentic 애플리케이션에 대한 게시 및 사용 기능을 제공하기 위해 Apache Kafka와 통합되는 MCP(Message Context Protocol) 서버입니다.

개요

이 프로젝트는 AI 모델이 표준화된 인터페이스를 통해 Kafka 토픽과 상호 작용할 수 있도록 하는 서버를 구현합니다. 다음을 지원합니다.

  • Kafka 주제에 메시지 게시
  • Kafka 토픽에서 메시지 사용

필수 조건

  • 파이썬 3.8 이상
  • Apache Kafka 인스턴스
  • Python 종속성(설치 섹션 참조)

설치

  1. 저장소를 복제합니다.지엑스피1
  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과 통합

Claude Desktop과 함께 이 Kafka MCP 서버를 사용하려면 Claude Desktop 구성 파일에 다음 구성을 추가하세요.

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

<PATH TO PROJECTS> 프로젝트 디렉토리의 절대 경로로 바꾸세요.

프로젝트 구조

  • main.py : 애플리케이션의 진입점
  • kafka.py : 카프카 커넥터 구현
  • server.py : Kafka 상호 작용을 위한 도구를 갖춘 MCP 서버 구현
  • settings.py : Pydantic을 사용한 구성 관리

사용 가능한 도구

카프카-퍼블리시

구성된 Kafka 주제에 정보를 게시합니다.

카프카-소비

구성된 Kafka 토픽에서 정보를 사용합니다.

  • 참고: 토픽에서 메시지를 읽은 후에는 동일한 그룹 ID를 사용하여 다시 읽을 수 없습니다.
-
security - not tested
A
license - permissive license
-
quality - not tested

AI 모델이 표준화된 인터페이스를 통해 Apache Kafka 토픽에서 메시지를 게시하고 사용할 수 있도록 하여 Kafka 메시징을 LLM 및 에이전트 애플리케이션과 쉽게 통합할 수 있습니다.

  1. Overview
    1. Prerequisites
      1. Installation
        1. Configuration
          1. Usage
            1. Running the Server
            2. Integrating with Claude Desktop
          2. Project Structure
            1. Available Tools
              1. kafka-publish
              2. kafka-consume
            ID: 8ohdumy56r