Open App

Azure Service Bus MCP Server

Connect Claude, ChatGPT, Cursor, or any other MCP-aware assistant directly to your Azure Service Bus. Ask which queues are backing up, what the dead-lettered messages have in common, or to replay a batch of failures, instead of clicking through a UI to find out.

bussin-mcp is a free, source-available Model Context Protocol server built on the same AMQP client that powers the Bussin web explorer. It runs locally, authenticates as you, and is read-only until you decide otherwise.

Try it in one command

Demo mode runs against an in-process simulator with seeded queues. No Azure subscription, no sign-in, nothing to clean up afterwards:

npx -y bussin-mcp --demo

When you are ready to point it at a real namespace, sign in with the Azure CLI and drop the flag:

az login
npx -y bussin-mcp --namespace my-namespace

Adding it to your AI client

Claude Code

claude mcp add bussin -- npx -y bussin-mcp --namespace my-namespace

Claude Desktop, Cursor, and other MCP clients

Add the following to your MCP configuration file: claude_desktop_config.json for Claude Desktop, or .cursor/mcp.json for Cursor:

{
  "mcpServers": {
    "bussin": {
      "command": "npx",
      "args": ["-y", "bussin-mcp", "--namespace", "my-namespace"]
    }
  }
}

Restart the client and the Service Bus tools will be available in your next conversation.

What you can ask

Once connected, these are ordinary questions rather than a query language:

Safety model

The caller is a language model, so everything irreversible is opt-in. Tools you have not enabled are not registered at all. They are invisible to the model rather than merely refused, so there is nothing to talk it into.

Flag Tools it unlocks Risk
(none, the default) list_namespaces, list_queues, list_topics, list_subscriptions, peek_messages, search_messages Read-only. Peek does not lock, consume, or increment delivery count.
--allow-send send_message, resubmit_dead_letter Adds messages your consumers will process.
--allow-destructive delete_messages, dead_letter_messages, purge_entity Removes messages permanently. Not recoverable.

Additional guards

Authentication and permissions

Entra ID is the default. The server uses Azure's DefaultAzureCredential, so it picks up an existing az login, a managed identity, or service-principal environment variables. It is the same identity and the same role assignments you already use.

RoleNeeded for
Azure Service Bus Data ReceiverPeeking and searching messages
Reader (on the namespace)Listing namespaces, queues and topics with message counts
Azure Service Bus Data SenderOnly if you enable --allow-send

Connection strings are also supported, for namespaces your signed-in identity cannot see. They authenticate the data plane only. Listing entities goes through Azure Resource Manager and needs a real identity.

Why this is a separate program

A reasonable question: Bussin runs in your browser, so why does its MCP server not?

MCP clients connect to a server in one of two ways: by launching a local process and talking to it over standard input and output, or by calling a remote HTTP endpoint. A browser tab is neither. It cannot listen on a port, it cannot be spawned by another program, and it only exists while the tab is open.

So bussin-mcp is a small command-line program that shares Bussin's AMQP client and behaviour but runs on its own. Nothing is sent to a Bussin server in either case: the web app connects from your browser, and the MCP server connects from your machine.

Frequently Asked Questions

What is an MCP server for Azure Service Bus?

The Model Context Protocol is an open standard that lets AI assistants call external tools. An MCP server for Azure Service Bus exposes queue operations (peeking messages, searching payloads, inspecting dead-letter queues) as tools an assistant can invoke, so you can debug a messaging problem by asking a question instead of clicking through a UI.

Can Claude connect to my Azure Service Bus?

Yes. Install bussin-mcp and add it to your MCP client configuration. It runs locally on your machine, authenticates as you through Entra ID, and connects directly to Azure. Your messages and credentials are never sent to a third-party server.

Is it safe to let an AI access a production Service Bus?

It is read-only by default. Sending requires --allow-send; deleting, dead-lettering and purging require --allow-destructive. Tools you have not enabled are never registered, so the model cannot see them at all. Purging additionally requires passing the exact entity name as confirmation.

Does the MCP server need the Bussin web app?

No. It is standalone. It shares the same AMQP client as the web app but runs independently. You can use either, both, or neither.

Which Azure permissions does it need?

Azure Service Bus Data Receiver to peek and search, Reader on the namespace to list entities and their counts, and Azure Service Bus Data Sender only if you enable sending.