mcpField
M
mcp-kafka

mcp-kafka

ローカル
github.com/dockndevaiクラウド・インフラ13 日前に更新

mcp-kafka について

mcp-kafkaは、MCPクライアントからApache Kafkaクラスターを監視・管理するMCPサーバーです。読み取り専用で起動し、アクセスモードやトピック範囲、削除制限で操作を制御します。

主な機能

  1. 01クラスター、トピック、グループの確認
  2. 02パーティション別・合計ラグの確認
  3. 03アクセスモード別の管理ツール
  4. 04許可リストと内部トピックの保護
  5. 05削除制限、ドライラン、監査ログ

活用シーン

  1. 01コンシューマーグループのラグ確認
  2. 02トピックのメタデータとオフセット確認
  3. 03トピック作成やパーティション調整
  4. 04範囲を限定したKafkaクラスター管理

MCP 対応

MCPクライアントにKafkaの監視・管理ツールを提供します。読み取り専用、読み書き、管理者モードに応じてツールを登録し、高影響の操作ではMCP elicitationによる承認を求められます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"dockndevai-mcp-kafka": {
"command": "npx",
"args": [
"-y",
"@dockndevai/mcp-kafka"
],
"env": {
"KAFKA_BROKERS": "<KAFKA_BROKERS>",
"KAFKA_MODE": "<KAFKA_MODE>"
}
}
}
}
起動コマンドnpx -y @dockndevai/mcp-kafka
設定が必要な環境変数
KAFKA_BROKERSComma-separated broker list (host:port).
KAFKA_MODEAccess mode: read-only | read-write | admin.

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@dockndevai/mcp-kafka0.3.3

ツール

6

掲載時のツール一覧 · 3 日前に更新

このツールにパラメーターはありません。

詳細

mcp-kafka

CI License: MIT npm

Apache Kafka 向けの Model Context Protocol サーバーです。MCP 対応クライアント(Claude Desktop、Claude Code など)から、Kafka クラスター(トピック、パーティション、設定、コンシューマーグループ(ラグを含む))を監視・管理できます。動作はすべてフラグで制御されます。

デフォルトで安全です。読み取り専用で起動し、許可リストにあるトピックだけに対象を絞り、内部/重要なトピックの変更を防ぎ、破壊的な操作には明示的なオプトインを求めます。

機能

  • 監視 — クラスター/ブローカーの情報、トピックのメタデータとオフセット、コンシューマーグループ、およびパーティションごとと合計のコンシューマーラグ。
  • 管理 — トピックの作成、パーティションの追加、トピック設定の変更、グループオフセットのリセット、トピック/グループの削除(管理者)。
  • アクセスモード — read-only → read-write → admin の順に権限が増え、各モードではそのレベルを超えるツールは公開されません。
  • セキュリティフラグ — トピックの許可リスト、保護対象/内部トピック、削除のゲート、ドライラン、JSON 監査ログ(以下を参照)。
  • 認証 — プレーンテキスト、TLS、SASL(PLAIN/SCRAM-SHA-256/SCRAM-SHA-512)。

セキュリティモデル

懸念事項フラグデフォルト効果
サーバーでできることKAFKA_MODEread-onlyread-only では監視のみが可能です。read-write では管理機能が追加され、admin では削除機能が追加されます。モードの権限を超えるツールは登録されません。
対象となるトピックKAFKA_TOPIC_ALLOWLIST(すべて)設定すると、ほかのトピックに対する操作は拒否されます。
内部トピックの保護KAFKA_PROTECT_INTERNAL_TOPICStrue_ で始まるトピックは読み取りできますが、変更はできません。
特定のトピックの保護KAFKA_PROTECTED_TOPICS(なし)追加の、常時読み取り専用となるトピックです。
削除の可否KAFKA_ALLOW_DELETEfalsedelete_topic/delete_consumer_group には、この設定と admin モードの両方が必要です。
クラスターに触れずにプレビューKAFKA_DRY_RUNfalse書き込み/管理ツールは検証して意図をログに記録した後、処理を返します。
監査証跡KAFKA_AUDIT_LOGtrue保護された操作ごとに、JSON 形式の行を stderr に出力します。
対話型の確認(自動)—破壊的な操作や影響の大きい操作を実行する前に、MCP エリシテーションを通じて人間に承認を求めます。エリシテーションに対応しないクライアントでは、代わりに *_ALLOW_* ゲートが適用されます。

ツール

読み取り(read-only+):cluster_info、list_topics、describe_topic、topic_offsets、list_consumer_groups、describe_consumer_group(ラグを含む)

書き込み(read-write+):create_topic、create_partitions、alter_topic_config、reset_consumer_group_offsets

管理者(admin):delete_topic、delete_consumer_group(どちらも KAFKA_ALLOW_DELETE が必要)

クイックスタート — エージェントに追加する

npm で @dockndevai/mcp-kafka として公開されています。クローンやビルドは不要です。MCP クライアントが npx で必要に応じて実行します。まずは read-only モードで開始してください。すべての変数については .env.example を、クライアントごとの詳しいガイドについては docs/CLIENTS.md を参照してください。

Claude Code(CLI)

claude mcp add kafka -e KAFKA_BROKERS="localhost:9092" -e KAFKA_MODE="read-only" -- npx -y @dockndevai/mcp-kafka

Claude Desktop · Cursor · Windsurf — claude_desktop_config.json、.cursor/mcp.json、または ~/.codeium/windsurf/mcp_config.json に同じブロックを追加します。

{
  "mcpServers": {
    "kafka": {
      "command": "npx",
      "args": [
        "-y",
        "@dockndevai/mcp-kafka"
      ],
      "env": {
        "KAFKA_BROKERS": "localhost:9092",
        "KAFKA_MODE": "read-only"
      }
    }
  }
}

OpenAI Codex CLI — ~/.codex/config.toml に追加します。

[mcp_servers.kafka]
command = "npx"
args = ["-y", "@dockndevai/mcp-kafka"]
env = { KAFKA_BROKERS = "localhost:9092", KAFKA_MODE = "read-only" }

VS Code(GitHub Copilot、エージェントモード) — .vscode/mcp.json に追加します。

{
  "servers": {
    "kafka": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@dockndevai/mcp-kafka"
      ],
      "env": {
        "KAFKA_BROKERS": "localhost:9092",
        "KAFKA_MODE": "read-only"
      }
    }
  }
}

プロンプトの例

  • 「現在、ラグが最も大きいコンシューマーグループはどれですか?」
  • 「orders トピックの詳細を説明して、オフセットを表示してください。」
  • 「パーティション数 6、保持期間 7 日で events トピックを作成してください。」(read-write が必要)

ソースから実行する(開発)

上記の公開パッケージを推奨します。クローンから実行するには:

npm install
npm run build
node dist/index.js   # with the environment variables set

開発

npm run dev
npm test
npm run typecheck

公開

このサーバーには、公式 MCP レジストリ用の server.json と、npm の所有権確認用の mcpName が含まれています。npm への公開、および MCP レジストリ、Smithery、Glama、Cursor、PulseMCP への掲載については、PUBLISHING.md をご覧ください。

ライセンス

MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。