kafka-mcp-channel
v0.1.0
Published
> **Proof of concept** — Bridge Kafka topics into Claude Code sessions via MCP channels.
Readme
kafka-mcp-channel
Proof of concept — Bridge Kafka topics into Claude Code sessions via MCP channels.
Kafka messages arrive as real-time <channel> notifications in your Claude Code session, letting Claude proactively react to deployments, errors, alerts, and pipeline events.
Quick Start
1. Install
From source (recommended during POC):
git clone https://github.com/pipie-io/kafka-mcp-channel.git
cd kafka-mcp-channel
npm install
npm run build2. Configure Claude Code
Add to your .mcp.json (project-level) or ~/.claude.json (global):
{
"mcpServers": {
"kafka": {
"command": "node",
"args": ["/path/to/kafka-mcp-channel/dist/index.js"],
"env": {
"KAFKA_BROKERS": "localhost:9092",
"KAFKA_TOPICS": "deployments,alerts,errors"
}
}
}
}3. Launch with channels enabled
claude --dangerously-load-development-channels server:kafkaWithout this flag, MCP tools work but push notifications won't arrive. See the channels docs for details.
4. Test
docker compose -f docker-compose.test.yml up -d
./test.shDevelopment
npm install
npm run build
npm test # 60 unit tests
npm run test:integration # integration tests (requires Docker)Docs site
cd website
npm install
npm start # dev server at localhost:3000
npm run build # production build to website/build/Releasing
This project is a proof of concept. During this phase, install directly from the git repo.
From git (current approach)
Users clone the repo and build from source:
git clone https://github.com/pipie-io/kafka-mcp-channel.git
cd kafka-mcp-channel
npm install && npm run buildTo pin a version, tag a release:
git tag v0.1.0
git push origin v0.1.0Users can then install a specific version:
git clone --branch v0.1.0 https://github.com/pipie-io/kafka-mcp-channel.gitnpm (future)
When the project is ready for wider use, publish to npm:
npm version patch # or minor/major
npm publishUsers would then install with:
npx kafka-mcp-channelAnd reference it in their MCP config as:
{
"mcpServers": {
"kafka": {
"command": "npx",
"args": ["kafka-mcp-channel"],
"env": { "KAFKA_BROKERS": "...", "KAFKA_TOPICS": "..." }
}
}
}Before publishing to npm:
- Ensure
"bin"inpackage.jsonpoints todist/index.js - Add
"files": ["dist"]topackage.jsonto keep the package small - Add a
.npmignoreor verify onlydist/is included - Consider scoping the package (e.g.
@pipie/kafka-mcp-channel)
License
MIT
