# Mcp Kafka

> A Model Context Protocol Server to perform Kafka client operations

- **Type:** MCP server
- **Install:** `agentstack add mcp-kanapuli-mcp-kafka`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [kanapuli](https://agentstack.voostack.com/s/kanapuli)
- **Installs:** 0
- **Category:** [Integrations](https://agentstack.voostack.com/c/integrations)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [kanapuli](https://github.com/kanapuli)
- **Source:** https://github.com/kanapuli/mcp-kafka

## Install

```sh
agentstack add mcp-kanapuli-mcp-kafka
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# mcp-kafka

A Model Context Protocol (MCP) server for performing Kafka client operations from AI assistants.

## Overview

mcp-kafka provides a bridge between AI assistants and Apache Kafka, allowing them to interact with Kafka clusters through the Model Context Protocol. This tool enables AI assistants to create, manage, and interact with Kafka topics and messages directly.

[Here is a short video demo on youtube](https://youtu.be/Jw39kJJOCck)

## Features

The mcp-kafka server provides the following Kafka operations:

- **Create Topic**: Create a new Kafka topic with configurable partitions and replication factor
- **List Topics**: Get a list of all available Kafka topics in the cluster
- **Delete Topic**: Remove an existing Kafka topic
- **Describe Topic**: Get detailed information about a specific topic, including partition details
- **Produce Message**: Send messages to a Kafka topic with support for message keys and headers
- **Consume Messages**: Read messages from a Kafka topic with configurable timeout

## Installation

### Prerequisites

- Go 1.24 or higher
- A running Kafka cluster (default connection: localhost:9092)

### Building from Source

1. Clone the repository:
   ```bash
   git clone https://github.com/kanapuli/mcp-kafka.git
   cd mcp-kafka
   ```

2. Build the application:
   ```bash
   make build
   ```

3. Optionally, build for a specific platform:
   ```bash
   make build GOOS=darwin GOARCH=arm64
   ```

### Installing as a Claude Desktop Tool

To use mcp-kafka with Claude Desktop:

1. Build the application as mentioned above.

2. Place the executable in a location included in your system PATH or in a dedicated tools directory.

3. Please follow this [Claude Desktop Tool Installation Guide](https://modelcontextprotocol.io/quickstart/user) to install the tool.

The JSON to be added to the claude_desktop_config.json file is as follows,
Use the right username and password for SASL login. Leave them empty for PLAINTEXT authentication.

```json
{
  "mcpServers": {
    "kafka": {
	    "command": "/Your-mcp-kafka-executable-path/mcp-kafka-darwin-arm64",
      "args": [
          "--bootstrap-servers=localhost:9092",
          "--consumer-group-id=mcp-kafka-consumer-group",
          "--username=",
          "--password="
        ],
      "env": {}
    }
  }
}
```

## Configuration

The mcp-kafka tool accepts the following configuration parameters:

| Parameter | Description | Default |
|-----------|-------------|---------|
| topic | Topic to interact with | (required) |
| num_partitions | Number of partitions for topic creation | (optional) |
| replication_factor | Replication factor for topic creation | (optional) |
| produce_message_key | Key for produced messages | (optional) |
| produce_message_value | Value for produced messages | (optional) |
| produce_message_headers | Headers for produced messages | (optional) |
| consumer_timeout | Timeout in seconds for message consumption | 10 |

These parameters will be automatically derived from your Natural language message to the LLM.

### CLI flags for the mcp-kafka tool

The following flags should be used to configure the Kafka client:

```
--bootstrap-servers=localhost:9092
--consumer-group-id=mcp-kafka-consumer-group
--username='your_sasl_username'
--password='your_sasl_password'

```

NOTE: Currently, SASL_PLAINTEXT is supported along with PLAINTEXT authentication. SASL_SSL is not supported.

## Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

## License

[MIT License](LICENSE)

## Acknowledgments

- Built using the [MCP Golang library](https://github.com/metoro-io/mcp-golang)

## Source & license

This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [kanapuli](https://github.com/kanapuli)
- **Source:** [kanapuli/mcp-kafka](https://github.com/kanapuli/mcp-kafka)
- **License:** MIT

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/mcp-kanapuli-mcp-kafka
- Seller: https://agentstack.voostack.com/s/kanapuli
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
