使用说明
项目简介
RabbitMQ MCP Server 是一个基于 Model Context Protocol (MCP) 构建的服务器,它允许大型语言模型 (LLM) 客户端与 RabbitMQ 消息队列系统进行交互。通过该服务器,LLM 可以向 RabbitMQ 队列或 Exchange 发送消息,从而实现与外部系统的异步通信和数据处理。
主要功能点
- 消息入队 (enqueue): 允许 LLM 将消息发布到指定的 RabbitMQ 队列。
- 扇出消息 (fanout): 允许 LLM 将消息发布到 RabbitMQ 的 fanout 类型的 Exchange,实现消息的广播。
安装步骤
- 克隆仓库: 在您的本地计算机上克隆 GitHub 仓库:
git clone https://github.com/kenliao94/mcp-server-rabbitmq - 进入仓库目录: 使用 'cd' 命令进入克隆的仓库目录:
cd mcp-server-rabbitmq - 安装依赖: 在仓库目录下,使用 'uv' 或 'pip' 安装项目自身。推荐使用 'uv' (如果已安装) 以获得更快的安装速度:
或者使用 'pip':uv pip install .pip install .
服务器配置
为了让 MCP 客户端(例如 Claude 桌面应用)连接到 RabbitMQ MCP Server,您需要在客户端配置文件中添加服务器配置信息。以下是 Claude 桌面应用 'claude_desktop_config.json' 的配置示例。请根据您的实际 RabbitMQ 服务器信息修改以下参数。
{ "mcpServers": { "rabbitmq": { "command": "uv", "args": [ "--directory", "/path/to/repo/mcp-server-rabbitmq", "run", "mcp-server-rabbitmq", "--rabbitmq-host", "<RabbitMQ 主机地址>", // 例如:test.rabbit.com 或 localhost "--port", "<RabbitMQ 端口号>", // 例如:5672 "--username", "<RabbitMQ 用户名>", "--password", "<RabbitMQ 密码>", "--use-tls", "<是否使用 TLS 加密连接>" // true 或 false ] } } }
配置参数说明:
- 'server name': 'rabbitmq' (服务器名称,MCP 客户端使用此名称来引用该服务器配置)
- 'command': 'uv' (启动服务器的命令,如果您的环境中未使用 'uv',可以替换为 'python')
- 'args': 启动参数列表,用于配置 RabbitMQ MCP Server 的连接信息:
- '--directory': '/path/to/repo/mcp-server-rabbitmq' (请替换为仓库在您本地文件系统中的绝对路径)
- 'run': (当 'command' 为 'uv' 时使用,表示使用 'uv run' 运行,如果 'command' 为 'python',则此参数应替换为 '-m')
- 'mcp-server-rabbitmq': (模块名,指向 'mcp_server_rabbitmq' 包,如果 'command' 为 'python' 且使用 '-m' 参数,则此参数应替换为 'src.mcp_server_rabbitmq')
- '--rabbitmq-host': '<RabbitMQ 主机地址>' (您的 RabbitMQ 服务器的主机名或 IP 地址)
- '--port': '<RabbitMQ 端口号>' (您的 RabbitMQ 服务器的端口号,默认为 5672)
- '--username': '<RabbitMQ 用户名>' (连接 RabbitMQ 服务器的用户名)
- '--password': '<RabbitMQ 密码>' (连接 RabbitMQ 服务器的密码)
- '--use-tls': '<true 或 false>' (指示是否使用 TLS 加密连接,根据您的 RabbitMQ 服务器配置设置 'true' 或 'false')
注意: 请根据您的实际环境修改 '<RabbitMQ 主机地址>'、'<RabbitMQ 端口号>'、'<RabbitMQ 用户名>'、'<RabbitMQ 密码>' 和 '<是否使用 TLS 加密连接>' 这些占位符。
基本使用方法
完成配置后,启动 MCP 客户端(例如 Claude 桌面应用)。在客户端中,您可以通过自然语言指示 LLM 使用 'enqueue' 工具将消息发送到指定的 RabbitMQ 队列,或使用 'fanout' 工具将消息发布到 fanout Exchange。具体的工具调用方式和指令格式请参考您使用的 MCP 客户端的文档和指南。
例如,在 Claude 中,您可以尝试指示 Claude 执行类似 “请发送消息 'Hello RabbitMQ' 到队列 'my_queue'” 的操作,Claude 可能会识别出 'enqueue' 工具并调用 RabbitMQ MCP Server 完成消息发送。
信息
分类
通信与社交