使用说明

项目简介

mcp-kafka 是一个 MCP 服务器,旨在弥合 AI 助手和 Apache Kafka 之间的鸿沟。通过实现 Model Context Protocol,它使得 AI 助手能够以标准化的方式与 Kafka 集群进行交互,执行诸如主题管理、消息生产和消费等操作。这为构建能够感知和操作 Kafka 数据的 AI 应用提供了强大的后端支持。

主要功能点

  • 主题管理:
    • 创建 Kafka 主题 (Create Topic):可以指定分区数和副本因子创建新的 Kafka 主题。
    • 列出 Kafka 主题 (List Topics):获取 Kafka 集群中所有可用主题的列表。
    • 删除 Kafka 主题 (Delete Topic):移除现有的 Kafka 主题。
    • 描述 Kafka 主题 (Describe Topic):获取关于特定主题的详细信息,包括分区细节。
  • 消息操作:
    • 生产消息 (Produce Message):向 Kafka 主题发送消息,支持消息键和消息头。
    • 消费消息 (Consume Messages):从 Kafka 主题读取消息,可以配置消费超时时间。

安装步骤

  1. 环境准备:

    • 确保已安装 Go 1.24 或更高版本。
    • 确保已有一个正在运行的 Kafka 集群 (默认连接地址为 'localhost:9092')。
  2. 从源码构建:

    • 克隆仓库到本地:
      git clone https://github.com/kanapuli/mcp-kafka.git
      cd mcp-kafka
    • 构建应用程序:
      make build
    • (可选)为特定平台构建:例如 macOS ARM64 平台
      make build GOOS=darwin GOARCH=arm64
  3. 安装为 Claude Desktop 工具:

    • 将构建好的可执行文件 'mcp-kafka-darwin-arm64' (或其他平台的可执行文件) 放置在系统 PATH 环境变量包含的路径中,或者一个专门用于存放工具的目录。
    • 按照 Claude Desktop Tool Installation Guide 的指引安装工具。

服务器配置

要将 mcp-kafka 配置为 Claude Desktop 的 MCP 服务器,需要在 'claude_desktop_config.json' 文件中添加如下 JSON 配置。请根据实际情况修改 'command' 和 'args' 字段。

{
  "mcpServers": {
    "kafka": {
	    "command": "/Your-mcp-kafka-executable-path/mcp-kafka-darwin-arm64",
      "args": [
          "--bootstrap-servers=localhost:9092",  // Kafka 集群的 Bootstrap Servers 地址,多个地址用逗号分隔
          "--consumer-group-id=mcp-kafka-consumer-group", //  Kafka 消费者组 ID
          "--username=",      // Kafka SASL 用户名 (如果需要认证,否则留空)
          "--password="       // Kafka SASL 密码 (如果需要认证,否则留空)
        ],
      "env": {}
    }
  }
}

配置参数说明:

  • 'command': 'mcp-kafka' 服务器可执行文件的绝对路径。请替换为实际路径。
  • 'args': 启动 'mcp-kafka' 服务器时传递的命令行参数,包括:
    • '--bootstrap-servers': Kafka 集群的 Bootstrap Servers 地址。默认为 'localhost:9092'。
    • '--consumer-group-id': Kafka 消费者组 ID。默认为 'mcp-kafka-consumer-group'。
    • '--username': Kafka SASL 用户名。用于 SASL_PLAINTEXT 认证,如果 Kafka 集群不需要认证,请留空。
    • '--password': Kafka SASL 密码。用于 SASL_PLAINTEXT 认证,如果 Kafka 集群不需要认证,请留空。

基本使用方法

  1. 确保 mcp-kafka 服务器已成功配置并运行在 Claude Desktop 中。
  2. 在 Claude Desktop 或其他支持 MCP 协议的客户端中,通过自然语言指令指示 AI 助手与 Kafka 集群进行交互。例如:
    • "创建一个名为 'my-topic' 的 Kafka 主题,分区数为 3,副本因子为 2"
    • "列出当前 Kafka 集群的所有主题"
    • "删除名为 'test-topic' 的 Kafka 主题"
    • "描述 'another-topic' 主题的详细信息"
    • "向 'log-topic' 主题发送消息,内容为 'Hello Kafka!'"
    • "从 'event-topic' 主题消费消息"

AI 助手会将这些自然语言指令转换为对 mcp-kafka 服务器的 MCP 请求,从而实现对 Kafka 集群的操作。

信息

分类

数据库与文件