Kafka MCP Server
A Message Context Protocol (MCP) server that integrates with Apache Kafka to provide publish and consume functionalities for LLM and Agentic applications.
Overview
This project implements a server that allows AI models to interact with Kafka topics through a standardized interface. It supports:
- Publishing messages to Kafka topics
- Consuming messages from Kafka topics
Prerequisites
- Python 3.8+
- Apache Kafka instance
- Python dependencies (see Installation section)
Installation
Clone the repository:
git clone <repository-url> cd <repository-directory>
Create a virtual environment and activate it:
python -m venv venv source venv/bin/activate # On Windows, use: venvScriptsactivate
Install the required dependencies:
pip install -r requirements.txt
If no requirements.txt exists, install the following packages:
pip install aiokafka python-dotenv pydantic-settings mcp-server
Configuration
Create a .env
file in the project root with the following variables:
# 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"
Usage
Running the Server
You can run the server using the provided main.py
script:
python main.py --transport stdio
Available transport options:
stdio
: Standard input/output (default)sse
: Server-Sent Events
Integrating with Claude Desktop
To use this Kafka MCP server with Claude Desktop, add the following configuration to your Claude Desktop configuration file:
{
"mcpServers": {
"kafka": {
"command": "python",
"args": [
"<PATH TO PROJECTS>/main.py"
]
}
}
}
Replace <PATH TO PROJECTS>
with the absolute path to your project directory.
Project Structure
main.py
: Entry point for the applicationkafka.py
: Kafka connector implementationserver.py
: MCP server implementation with tools for Kafka interactionsettings.py
: Configuration management using Pydantic
Available Tools
kafka-publish
Publishes information to the configured Kafka topic.
kafka-consume
consume information from the configured Kafka topic.
- Note: once a message is read from the topic it can not be read again using the same groupid
Kafka MCP Server
Project Details
- pavanjava/kafka_mcp_server
- Apache License 2.0
- Last Updated: 4/11/2025
Categories
Recomended MCP Servers
MCP Server with TMDB
Home Assistant MCP Server
MCP (Model context protocol) server with LLMling backend
A MCP Filesystem implementation for Claude, written mostly by Claude
MCP server to interact with LogSeq via its Local HTTP API - enabling AI assistants like Claude to...
An MCP server providing advanced options analysis through Yahoo Finance, supporting Greeks calculations, strategy evaluation (CCS/PCS/CSP/CC), and risk...
Model Context Protocol (MCP) server implementation with Minimax API integration
A Node.js server implementing Model Context Protocol (MCP) for media processing operations, providing powerful video and image manipulation...
A systematic reasoning MCP server implementation for Claude Desktop with beam search and thought evaluation.
MCP Server for AI Summarization
makes the jewish library accessible to LLMs through the MCP protocol