A Model Context Protocol server implementation for RabbitMQ operation.
This MCP servers wraps admin APIs of a RabbitMQ broker as MCP tools.
Supports connecting to multiple RabbitMQ brokers within a single session, allowing you to manage multiple clusters simultaneously.
Connect to RabbitMQ brokers using OAuth tokens for secure, token-based authentication.
You can start a remote RabbitMQ MCP server by configuring your own IdP and 3rd party authorization provider.
The package is available on PyPI, you can use uvx without having to fork and build the MCP server locally first.
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"
]
}
}
}- Clone this repository.
{
"mcpServers": {
"rabbitmq": {
"command": "uv",
"args": [
"--directory",
"/path/to/repo/mcp-server-rabbitmq",
"run",
"amq-mcp-server-rabbitmq",
"--allow-mutative-tools"
]
}
}
}--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.
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)See example/amazon_q_cli for configuration examples with Amazon Q Developer CLI.
# Clone the repository
git clone https://github.com/amazon-mq/mcp-server-rabbitmq.git
cd mcp-server-rabbitmq
# Install pre-commit hooks
pre-commit installpytestThis project uses ruff for linting and formatting:
# Run linter
ruff check .
# Run formatter
ruff format .This project is licensed under the Apache License 2.0 - see the LICENSE file for details.