The MCP server that interacts with RabbitMQ to publish and consume messages.
Documentation
Features# Manage your RabbitMQ message brokers using AI agent
This MCP servers wraps admin APIs of a RabbitMQ broker as MCP tools. It also uses Pika to interact with RabbitMQ to operate at the message level. You can also specify a different RabbitMQ broker that you want to connect to mid-conversation (default is configured during server initialization).\n\n### 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.\n\n### 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.\n\n## Installation# Smithery
To install RabbitMQ MCP Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @kenliao94/mcp-server-rabbitmq --client claude
```\n\n### Try it online
https://smithery.ai/server/@kenliao94/mcp-server-rabbitmq\n\n### PyPI
https://pypi.org/project/mcp-server-rabbitmq/
Use uvx directly in your MCP client config
```json
{
"mcpServers": {
"rabbitmq": {
"command": "uvx",
"args": [
"mcp-server-rabbitmq@latest",
"--rabbitmq-host",
"",
"--port",
"",
"--username",
"",
"--password",
"",
"--api-port",
"",
"--use-tls",
""
]
}
}
}
```\n\n### From source
1. Clone this repository.
```json
{
"mcpServers": {
"rabbitmq": {
"command": "uv",
"args": [
"--directory",
"/path/to/repo/mcp-server-rabbitmq",
"run",
"mcp-server-rabbitmq",
"--rabbitmq-host",
"",
"--port",
"",
"--username",
"",
"--password",
"",
"--use-tls",
""
]
}
}
}
```\n\n## Roadmap
1. Full feature parity with `rabbitmqadmin`
1. Support RabbitMQ OAuth instead of basic authentication\n\n## Development# Setup Development Environment
```bash\n\n# Clone the repository
git clone https://github.com/kenliao94/mcp-server-rabbitmq.git
cd mcp-server-rabbitmq\n\n# Install pre-commit hooks
pre-commit install
```\n\n### Running Tests
```bash
pytest
```\n\n### Code Quality
This project uses ruff for linting and formatting:
```bash\n\n# Run linter
ruff check .\n\n# Run formatter
ruff format .