rabbitmq-mcp
rabbitmq-mcp is an MCP server designed for interacting with RabbitMQ. It enables users to manage RabbitMQ features using standardized MCP requests. The server requires local installation and environment variable configuration for connections.
rabbitmq-mcp 
A Model Context Protocol (MCP) server for RabbitMQ, enabling MCP clients to interact with RabbitMQ. This server aims to expose the full range of features available in the official RabbitMQ HTTP API as tools.
MCP is a standardized protocol for managing context between large language models (LLMs) and external systems, such as RabbitMQ. It allows users to ask MCP-enabled AI agents, like Claude Desktop or Cursor, to interact with external systems using natural language.
💬 Example Requests:
- Get me the message count in the inbound signup metrics queue, and if it's over 10,000, move half of them to the metrics overflow queue.
- Purge the outbound email deadletter queue.
- Check if there are any alarms triggered in the production vhost.
These are parseable and actionable requests that an MCP client can handle with this server.
Installation
If you prefer to install locally:
npm install -g rabbitmq-mcp
Or with npx:
npx -y rabbitmq-mcp
Environment Variables
The following environment variables are required to configure a connection to your RabbitMQ instance:
RABBITMQ_HOST
– accessible host (e.g.test.abc.cloudamqp.com
)RABBITMQ_USERNAME
– RabbitMQ usernameRABBITMQ_PASSWORD
– RabbitMQ passwordRABBITMQ_MANAGEMENT_PORT
– management port (e.g.443
or15672
)RABBITMQ_PROTOCOL
–https
(default) orhttp
. Usehttps
for secure connections.
Optional TLS/HTTPS Options
You can provide TLS/HTTPS credentials either as file paths or as environment variable strings:
RABBITMQ_CA
– CA certificate (PEM string)RABBITMQ_CERT
– Client certificate (PEM string)RABBITMQ_KEY
– Client private key (PEM string)RABBITMQ_CA_PATH
– Path to CA certificate fileRABBITMQ_CERT_PATH
– Path to client certificate fileRABBITMQ_KEY_PATH
– Path to client private key file
A cert verification flag exists for debugging, if needed:
RABBITMQ_REJECT_UNAUTHORIZED
– Set tofalse
to disable server certificate verification (defaults totrue
)
MCP Client Configuration Example
As MPC is in rapid development, clients can be finicky to set up correctly. Here's an example best-case config for Claude and Cursor:
{
"mcpServers": {
"rabbitmq-mcp": {
"type": "stdio",
"command": "npx",
"args": ["-y", "rabbitmq-mcp"],
"env": {
"RABBITMQ_HOST": "your-host",
"RABBITMQ_USERNAME": "your-username",
"RABBITMQ_PASSWORD": "your-password",
"RABBITMQ_MANAGEMENT_PORT": "15671",
"RABBITMQ_CA_PATH": "/path/to/rabbit-cert.crt"
}
}
}
}
If you experience initialization errors, you may need to use absolute paths for the command and/or args:
"command": "/local/path/to/node",
"args": ["/local/path/to/rabbitmq-mcp/dist/index.js"],
[!IMPORTANT] Currently, this server only supports running locally with stdio. Remote functionality using SSE/streaming is planned for a future update.
[!IMPORTANT] The management plugin must be enabled in your RabbitMQ instance to use this server. While there are many options for interacting with RabbitMQ directly via AMQP, the protocol only provides a small subset of the capabilities available through the HTTP API.
License
MIT