使用说明

项目简介

RabbitMQ MCP Server 是一个基于 Model Context Protocol (MCP) 构建的服务器,它允许大型语言模型 (LLM) 客户端与 RabbitMQ 消息队列系统进行交互。通过该服务器,LLM 可以向 RabbitMQ 队列或 Exchange 发送消息,从而实现与外部系统的异步通信和数据处理。

主要功能点

  • 消息入队 (enqueue): 允许 LLM 将消息发布到指定的 RabbitMQ 队列。
  • 扇出消息 (fanout): 允许 LLM 将消息发布到 RabbitMQ 的 fanout 类型的 Exchange,实现消息的广播。

安装步骤

  1. 克隆仓库: 在您的本地计算机上克隆 GitHub 仓库:
    git clone https://github.com/kenliao94/mcp-server-rabbitmq
  2. 进入仓库目录: 使用 'cd' 命令进入克隆的仓库目录:
    cd mcp-server-rabbitmq
  3. 安装依赖: 在仓库目录下,使用 'uv' 或 'pip' 安装项目自身。推荐使用 'uv' (如果已安装) 以获得更快的安装速度:
    uv pip install .
    或者使用 'pip':
    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 完成消息发送。

信息

分类

通信与社交