
Kafka MCP
โ 1from shivamxtech
A natural language interface to manage Apache Kafka operations.
Kafka MCP
Overview
The Kafka MCP Server offers efficient way to convert prompts into actions into Kafka ecosystem. It is a natural language interface designed for agentic applications to efficiently manage Kafka operations and integrate seamlessly with MCP Clients enabling AI driven workflows to interact with processes in Kafka. Using this MCP Server, you can ask questions like:
- Publish message 'i am using kafka server' on the topic 'test-kafka'
- Consume the message from topic 'test-kafka'
- List all topics from the kafka environment
Features
- Natural Language Queries: Enables AI agents to query and update Redis using natural language.
- Seamless MCP Integration: Works with any MCP client for smooth communication.
- Full Kafka Support: Handles producer, consumer, topics, broker, partitions and offsets.
- Scalable & Lightweight: Designed for high-performance data operations.
Tools
This MCP Server offers various tools for Kafka:
consumer and producer tools allow to consumer and publish message on topics
topic tools allow to list, create, delete and describe topics in Kafka.
broker allows to get broker info.
partition tools allow to get partitions and partition offsets.
group_offset tools allow to get and reset offsets in Kafka.
Local Development
Create a virtual environment
# Using venv (built-in)
python3 -m venv .venv
# Activate the virtual environment
# On Windows
.venv\Scripts\activate
# On macOS/Linux
source .venv/bin/activateInstall Dependencies
# Using pip
pip install -r requirements.txt
# Or using uv (faster)
uv pip install -r requirements.txtSet Configurations in terminal/env
BOOTSTRAP_SERVERS=<your_kafka_url>
MCP_TRANSPORT=stdioRun the application
python3 src/main.py
# OR
uv run python3 src/main.pyTo interact with server,
Add the following configuration to your MCPO server's config.json file (e.g., in Claude Desktop):
{
"mcpServers": {
"kafka-mcp": {
"command": "python3",
"args": ["/Users/I528600/Desktop/mcp/kafka-mcp/src/main.py"],
"env": {
"BOOTSTRAP_SERVERS": "localhost:9092",
"MCP_TRANSPORT": "stdio"
}
}
}
}Example prompts
- List all topics in the kafka cluster
- Create topic 'my-kafka' in kafka cluster
- Publish a message 'hello from mcp' to the topic 'my-kafka' in cluster
- Consume 2 messages from the topic 'my-kafka' in kafka cluster
- Describe the topic 'my-kafka'
# Using pip
pip install -r requirements.txt
# Or using uv (faster)
uv pip install -r requirements.txtBefore it works, you'll need: BOOTSTRAP_SERVERSMCP_TRANSPORT
Configurations
set the following in .env file or export manually
BOOTSTRAP_SERVERS=your_kafka_server
MCP_TRANSPORT=stdioNo common issues documented yet. If you hit a problem, the repository's GitHub Issues page is the best place to look.
Licensed under MITโ you can use, modify, and redistribute it under that license's terms.
View the full license file on GitHub โ