About mcp-kafka
mcp-kafka is an MCP server for LLMs working with Apache Kafka and related services. It exposes Kafka operations and inspection tools for Kafka Connect, Burrow, and Cruise Control; the project is still a work in progress.
Key features
- 01Consume and produce Kafka messages
- 02Inspect clusters, topics, and consumer groups
- 03Access Kafka Connect APIs
- 04Check Burrow consumer group status
- 05Query Cruise Control cluster data
Use cases
- 01Consume or publish Kafka messages
- 02Inspect topic and consumer group details
- 03Review Kafka Connect connectors
- 04Check cluster load and partition state
MCP support
The server exposes tools for Kafka, Kafka Connect, Burrow, and Cruise Control, along with topic, connector, and consumer group resources. Available API tools depend on the corresponding environment variables.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEOverview
mcp-kafka is a server-side implementation of the model context protocol (MCP) for Apache Kafka. It allows language models (LLM/SLM) to reliably interact with Kafka & its ecosystem, including Kafka Connect, Burrow, & Cruise Control.
NOTE: This is a WIP, changes/potential errors are expected.
Features
The server supports capabilities based on the core Kafka APIs, excluding Streams (for now), along with the Burrow & Cruise Control REST APIs.
TODO
- Use
asyncioandaiohttp. - Set env config values in the data class.
- Finish admin/consumer/producer API support.
- Support Burrow API.
- Support CC API.
- Service + integration tests.
- Publish to PyPI (
uv pip install mcp-kafka) - Test Dockerfile & push to Dockerhub (
docker pull bkpowers/mcp-kafka) - Usage/config/deployment options + demo in README.
- Consider Strimzi/kcctl integrations.
- Prompts with auto-complete support for certain resources/tools.
MCP Capabilities
Tools
Kafka
consumeproducedescribe_kafka_clusterdescribe_kafka_topicsdescribe_kafka_consumer_groupsdescribe_kafka_delegation_tokensdescribe_kafka_log_dirsdescribe_kafka_configsdescribe_kafka_acls
Kafka Connect
get_kafka_connect_cluster_infoget_kafka_connect_configget_kafka_connect_connectorsget_kafka_connect_connector_pluginsget_kafka_connect_loggers
Burrow
burrow_healthcheckburrow_list_clustersburrow_describe_clusterburrow_list_consumers_with_group_detailburrow_list_topicsburrow_check_consumer_group_status
Cruise Control
cruise_control_get_statecruise_control_get_kafka_cluster_loadcruise_control_get_partition_resource_utilization_and_loadcruise_control_get_partition_and_replica_statecruise_control_get_optimization_proposalscruise_control_get_user_request_result
Resources
- topic, connector, consumer group
Prompts
Usage / Configuration
- Claude Desktop
- Cursor
- Windsurf
- Langchain MCP adapter
- Azure OpenAI
Environment Variables
Supported APIs are (currently) enabled by the presence of their specific environment variable. If none are present, the server responds as empty. If 1 or more variables are present, then the respective tools are also present.
KAFKA_BOOTSTRAP_SERVERS: Kafka Admin, Consumer, Producer APIsKAFKA_CONNECT_API_URL: Kafka Connect APIKAFKA_BURROW_API_URL: Burrow APIKAFKA_CRUISE_CONTROL_API_URL: Cruise Control API
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.