Kafka MCP 服务器
与 Apache Kafka 集成的消息上下文协议 (MCP) 服务器为 LLM 和 Agentic 应用程序提供发布和使用功能。
概述
该项目实现了一个服务器,允许 AI 模型通过标准化接口与 Kafka 主题进行交互。它支持:
- 将消息发布到 Kafka 主题
- 从 Kafka 主题消费消息
先决条件
- Python 3.8+
- Apache Kafka 实例
- Python 依赖项(参见安装部分)
安装
- 克隆存储库:
- 创建虚拟环境并激活它:
- 安装所需的依赖项:如果不存在 requirements.txt,请安装以下包:
配置
在项目根目录中创建一个包含以下变量的.env
文件:
用法
运行服务器
您可以使用提供的main.py
脚本运行服务器:
可用的交通方式:
stdio
:标准输入/输出(默认)sse
:服务器发送事件
与 Claude Desktop 集成
要将此 Kafka MCP 服务器与 Claude Desktop 一起使用,请将以下配置添加到您的 Claude Desktop 配置文件中:
将<PATH TO PROJECTS>
替换为项目目录的绝对路径。
项目结构
main.py
:应用程序的入口点kafka.py
:Kafka连接器实现server.py
:MCP 服务器实现,包含与 Kafka 交互的工具settings.py
:使用 Pydantic 进行配置管理
可用工具
kafka 发布
将信息发布到配置的 Kafka 主题。
kafka-consume
从配置的 Kafka 主题中使用信息。
- 注意:一旦从主题读取了一条消息,就不能使用相同的 groupid 再次读取它
创建主题
使用指定参数创建一个新的 Kafka 主题。
- 选项:
--topic
要创建的主题的名称--partitions
要分配的分区数--replication-factor
跨代理的复制因子--config
(可选)主题级配置覆盖(例如,retention.ms=604800000
)
删除主题
删除现有的 Kafka 主题。
- 选项:
--topic
要删除的主题的名称--timeout
(可选)等待删除完成的时间
列表主题
列出集群中的所有主题(或按模式过滤)。
- 选项:
--bootstrap-server
代理地址--pattern
(可选)用于过滤主题名称的正则表达式--exclude-internal
(可选) 排除内部主题 (默认值:true)
主题配置
显示或更改一个或多个主题的配置。
- 选项:
--describe
显示主题的当前配置--alter
修改配置(例如,--add-config retention.ms=86400000,--delete-config cleanup.policy
)--topic
主题名称
主题元数据
检索有关主题或集群的元数据。
- 选项:
--topic
(如果提供)仅获取此主题的元数据--bootstrap-server
代理地址--include-offline
(可选)包括离线的代理或分区
This server cannot be installed
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
使 AI 模型能够通过标准化接口发布和使用来自 Apache Kafka 主题的消息,从而可以轻松地将 Kafka 消息传递与 LLM 和代理应用程序集成。
Related Resources
Related MCP Servers
- AsecurityAlicenseAqualityEnables AI models to interact with messages from various messaging platforms (Mobile, Mail, WhatsApp, LinkedIn, Slack, Twitter, Telegram, Instagram, Messenger) through a standardized interface.Last updated -38PythonMIT License
mcp-confluentofficial
AsecurityAlicenseAqualityAn MCP server implementation built to interact with Confluent Kafka and Confluent Cloud REST APIs.Last updated -243163TypeScriptMIT License- -security-license-qualityAn MCP server that enables LLMs to interact with Agent-to-Agent (A2A) protocol compatible agents, allowing for sending messages, tracking tasks, and receiving streaming responses.Last updated -3TypeScript
- -securityAlicense-qualityModel Context Protocol server implementation that integrates the LINE Messaging API to connect AI agents with LINE Official Accounts, enabling agents to send messages to users.Last updated -TypeScriptApache 2.0