Skip to main content

A Model Context Protocol server providing access to RabbitMQ by LLMs

Project description

RabbitMQ MCP Server

A Model Context Protocol server implementation for RabbitMQ operation.

Features

Manage your RabbitMQ message brokers using AI agent

This MCP servers wraps admin APIs of a RabbitMQ broker as MCP tools.

Connect to multiple brokers in one session

Supports connecting to multiple RabbitMQ brokers within a single session, allowing you to manage multiple clusters simultaneously.

OAuth authentication support

Connect to RabbitMQ brokers using OAuth tokens for secure, token-based authentication.

Supports streamable HTTP with FastMCP's BearerAuthProvider

You can start a remote RabbitMQ MCP server by configuring your own IdP and 3rd party authorization provider.

Seamless integration with MCP clients

The package is available on PyPI, you can use uvx without having to fork and build the MCP server locally first.

Installation

PyPI

https://pypi.org/project/amq-mcp-server-rabbitmq/

Use uvx directly in your MCP client config

{
    "mcpServers": {
      "rabbitmq": {
        "command": "uvx",
        "args": [
            "amq-mcp-server-rabbitmq@latest",
            "--allow-mutative-tools"
        ]
      }
    }
}

From source

  1. Clone this repository.
{
    "mcpServers": {
      "rabbitmq": {
        "command": "uv",
        "args": [
            "--directory",
            "/path/to/repo/mcp-server-rabbitmq",
            "run",
            "amq-mcp-server-rabbitmq",
            "--allow-mutative-tools"
        ]
      }
    }
}

Configuration

CLI Arguments

  • --allow-mutative-tools: Enable tools that can mutate the states of RabbitMQ. Default is false.
  • --http: Use Streamable HTTP transport instead of stdio.
  • --server-port: Port to run the MCP server on (default: 8888).
  • --http-auth-jwks-uri: JWKS URI for FastMCP Bearer Auth Provider.
  • --http-auth-issuer: Issuer for FastMCP Bearer Auth Provider.
  • --http-auth-audience: Audience for FastMCP Bearer Auth Provider.
  • --http-auth-required-scopes: Required scopes for FastMCP Bearer Auth Provider.

Usage Examples

Strands Agent Example

See example/agent_strands for a complete example of using the RabbitMQ MCP server with Strands AI agents.

from mcp import stdio_client, StdioServerParameters
from strands import Agent
from strands.tools.mcp import MCPClient

stdio_mcp_client = MCPClient(lambda: stdio_client(
    StdioServerParameters(
        command="uvx",
        args=["amq-mcp-server-rabbitmq@latest"]
    )
))

with stdio_mcp_client:
    tools = stdio_mcp_client.list_tools_sync()
    agent = Agent(tools=tools)
    
    while True:
        user_input = input("\nYou: ").strip()
        if not user_input or user_input.lower() in ["exit", "quit"]:
            break
        agent(user_input)

Amazon Q Developer CLI Example

See example/amazon_q_cli for configuration examples with Amazon Q Developer CLI.

Development

Setup Development Environment

# Clone the repository
git clone https://github.com/amazon-mq/mcp-server-rabbitmq.git
cd mcp-server-rabbitmq

# Install pre-commit hooks
pre-commit install

Running Tests

pytest

Code Quality

This project uses ruff for linting and formatting:

# Run linter
ruff check .

# Run formatter
ruff format .

License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file iflow_mcp_amazon_mq_mcp_server_rabbitmq-2.2.4.tar.gz.

File metadata

  • Download URL: iflow_mcp_amazon_mq_mcp_server_rabbitmq-2.2.4.tar.gz
  • Upload date:
  • Size: 110.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.30 {"installer":{"name":"uv","version":"0.9.30","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for iflow_mcp_amazon_mq_mcp_server_rabbitmq-2.2.4.tar.gz
Algorithm Hash digest
SHA256 142de22444dcca057460e448d9b07a5f6970d1ae1ec1dbb96a561abbd4743169
MD5 9c18fba0d0f175edce8e0dc1ef608894
BLAKE2b-256 224075636c654c0956a98883c9149810c20f41294c482727bf2008e0d3230de9

See more details on using hashes here.

File details

Details for the file iflow_mcp_amazon_mq_mcp_server_rabbitmq-2.2.4-py3-none-any.whl.

File metadata

  • Download URL: iflow_mcp_amazon_mq_mcp_server_rabbitmq-2.2.4-py3-none-any.whl
  • Upload date:
  • Size: 35.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.30 {"installer":{"name":"uv","version":"0.9.30","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for iflow_mcp_amazon_mq_mcp_server_rabbitmq-2.2.4-py3-none-any.whl
Algorithm Hash digest
SHA256 e2c9517cf30503b8a9f587269e16322258507db61de74fef7e4d995fb5c2d438
MD5 303dde3fc08c1cee77e98c011209ad85
BLAKE2b-256 1c91d7e4ad0ec3396b39d9dac008b9f973239cb7f3045eb2eecd90d94367f0c5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page