agent-message-bus
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@agent-message-busCreate a space called api-refactor and invite two worker agents to it."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
agent-message-bus
A message bus for coding agents. Agents coordinate in spaces through:
direct messages to one participant;
topics, including the mandatory
allbroadcast;blackboards with threads and posts, the only persistent history.
Everything an agent receives lands in its durable inbox. The server is one binary with embedded SQLite and no other processes. It serves the same 29 bus_* tools over MCP (/mcp) and RPC (/v1/tools), and pushes the inbox over SSE (/v1/inbox/stream).
This repo is also an omp plugin: an extension that registers the tools and streams the inbox into the session, and a skill that tells agents how to use the bus.
flowchart LR
subgraph omp["omp session"]
ext["extension<br/>/bus command, bus_* tools"]
skill["skill<br/>agent-message-bus"]
end
other["other MCP client"]
subgraph server["agent-message-bus binary"]
mcp["/mcp<br/>MCP"]
rpc["/v1/tools<br/>RPC"]
sse["/v1/inbox/stream<br/>SSE"]
feat["spaces · topics · direct messages<br/>blackboards · inbox"]
db[("SQLite")]
end
ext -- "tool calls" --> rpc
ext -- "inbox push" --> sse
other --> mcp
mcp --> feat
rpc --> feat
sse --> feat
feat --> dbQuick start
Download agent-message-bus_<version>_<os>_<arch>[.exe] and SHA256SUMS from the latest release, verify the checksum and put the binary on your PATH as agent-message-bus[.exe]. Or build it yourself (Go 1.27):
python scripts/build.py --version 0.1.0 --out dist # all OS × amd64/arm64 + dist/SHA256SUMSThen:
agent-message-bus start # background on 127.0.0.1:8080; waits until healthy
agent-message-bus admin-token # prints the admin tokenRelated MCP server: mcp-switchboard
omp
omp plugin install github:till-muellers/agent-message-bus # update with: omp plugin upgradeIn an omp session, either let the extension run a local server (it uses AGENT_BUS_BIN, then PATH, else downloads and verifies the latest release) or log in to an existing one:
/bus server start # or: /bus login <url> <admin-token>
/bus promote lead # this session acts as leader "lead"Then ask the agent to create a space and start workers. bus_spawn_worker (or /bus spawn <space> <name> [task]) invites a member and opens it as a new omp session in a new terminal tab (Orca, tmux, zellij, WezTerm, kitty, Windows Terminal; else a new window); the worker joins the space by itself and gets the task as its first prompt, which travels with the invite on the server. To start a worker by hand, bus_invite_member {space, name, task?} returns a single-use invite code (valid for 10 minutes) that the worker session redeems with /bus accept <url> <code> or omp --bus-url <url> --bus-accept <code>; the optional task comes back with the accept and becomes the worker's first prompt. bus_revoke_member removes the member and cancels its pending invite codes; it is idempotent and returns {deleted}, which says whether anything was removed (revoking a leader fails with conflict). A member token can still be passed directly with AGENT_BUS_URL=<url> AGENT_BUS_TOKEN=<member token> omp.
Other MCP clients
Any streamable-HTTP MCP client can use the tools (no inbox push; poll bus_inbox_read or use the SSE endpoint):
{
"mcpServers": {
"agent-message-bus": {
"type": "http",
"url": "http://127.0.0.1:8080/mcp",
"headers": { "Authorization": "Bearer <token>" }
}
}
}For a member token, redeem an invite code from bus_invite_member: curl -X POST <url>/v1/invites/accept -H "Authorization: Bearer <code>" answers {"name", "space", "token", "task"?} (task only when the invite carries a first prompt).
Documentation
Document | Contents |
Server overview: CLI, configuration, endpoints, concurrency model, code layout. | |
Installing, configuring and running the server; services, Docker, connecting agents, troubleshooting. | |
Generated reference of every | |
Behaviour spec: concepts, design decisions, Gherkin features. | |
The omp extension: | |
Agent-facing usage: leader and member workflows, pitfalls, errors. |
Repo layout
Path | Contents |
| Go server (module |
| omp extension (TypeScript), loaded from |
| omp skill. |
| Extension tests ( |
| Cross-compiles release binaries and |
| Builds and publishes a release for every |
| Project guide ( |
Development
cd server && go test ./... # server unit + integration tests (real SQLite)
bun install
bun test # extension tests
bun run typecheck # tsc --noEmit
pytest tests # build script testsContributor conventions, working method and the definition of done are in .omp/AGENTS.md; hard rules in .omp/RULES.md.
Releasing
Branch
release/vX.Y.Z: bump theversioninpackage.json(the plugin version is the protocol version the extension implements). If a server contract the extension needs changed,server/internal/server/protocol.goand the extension'sMIN_SERVER_PROTOCOLmust agree —tests/version/protocol-sync.test.tsfails when they do not. Open a pull request, let CI go green, merge.Tag the merge commit
vX.Y.Zand push the tag. The release workflow checks that the tag matches the package version (it fails in seconds and publishes nothing when it does not), runs the server tests, buildsagent-message-bus_<X.Y.Z>_<os>_<arch>[.exe]for windows, linux and darwin (amd64, arm64) plusSHA256SUMS, and publishes them as a GitHub release./bus server startdownloads from the latest release.Users upgrade the plugin with
omp plugin upgrade @till-muellers/omp-agent-message-busand replace the server binary. The plugin and the server of one tag always match; a mixed pair is caught at runtime by the extension's protocol gate.
git tag v0.2.0 && git push origin v0.2.0License
MIT © Till Müllers
This server cannot be deployed
Maintenance
Related MCP Connectors
Agent communication platform for agent to agent messaging via MCP. Messages, channels, skills.
Agent-native collaboration network: orchestrate a team of long-running agents from any MCP client.
Hosted bus for AI agents: lock, events, reject. Publish/apply stay on the sidecar.
Privacy-first coordination for autonomous agents: rooms, messaging, inbox, and per-agent memory.
Related MCP Servers
- AlicenseBqualityAmaintenanceBuild production-grade multi-agent communication infrastructure in minutes. Real-time messaging, task scheduling, shared memory, and trust-based evolution — all via MCP + SSE.5884 npm7MIT
- AlicenseNot gradedqualityBmaintenanceA real-time inter-agent switchboard, delivered as one centralized streamable-HTTP MCP server. Any MCP-capable agent can message, coordinate, and stay ambiently aware of others.1AGPL 3.0
- FlicenseNot gradedqualityBmaintenanceEnables AI coding agents to communicate and coordinate through a durable, vendor-neutral message bus with support for threads, tasks, presence, and webhooks.283 npm-
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to collaborate by exchanging messages through a local MCP-based bus for coordinating tasks and agent interactions.MIT