Unified MCP server for message queue management. Provides Model Context Protocol tools for interacting with Redis Streams, RabbitMQ, and NATS messaging systems.
poly-queue-mcp exposes message queue capabilities through the Model Context Protocol (MCP), enabling AI assistants and other MCP clients to manage message queues, publish/subscribe to topics, and monitor queue health across multiple messaging platforms.
Stream-based messaging with Redis:
-
redis_xadd- Add an entry to a stream -
redis_xread- Read entries from streams -
redis_xrange- Get a range of entries from a stream -
redis_xlen- Get the length of a stream -
redis_xinfo- Get information about a stream -
redis_xgroup_create- Create a consumer group -
redis_xreadgroup- Read from a consumer group -
redis_xack- Acknowledge processed messages
Enterprise message broker via Management API:
-
rabbitmq_queues- List all queues -
rabbitmq_queue- Get queue details -
rabbitmq_exchanges- List all exchanges -
rabbitmq_publish- Publish a message -
rabbitmq_get- Get messages from queue (non-destructive) -
rabbitmq_purge- Purge all messages from queue -
rabbitmq_overview- Get RabbitMQ overview -
rabbitmq_connections- List all connections -
rabbitmq_channels- List all channels
High-performance messaging with JetStream support:
-
nats_publish- Publish a message to a subject -
nats_request- Send request and wait for reply -
nats_subscribe- Subscribe and receive messages -
nats_stream_list- List JetStream streams -
nats_stream_info- Get stream information -
nats_consumer_list- List consumers for a stream -
nats_server_info- Get NATS server info -
nats_account_info- Get account info
git clone https://github.com/hyperpolymath/poly-queue-mcp
cd poly-queue-mcp
npm install
npm run buildRun as MCP server:
deno run --allow-run --allow-read --allow-env --allow-net main.jsOr use the systemd service:
systemctl --user enable poly-queue-mcp
systemctl --user start poly-queue-mcp-
Use authentication for all queue connections
-
Enable TLS for production deployments
-
Avoid exposing management APIs publicly
-
Use least-privilege credentials