Skip to main content

Local SQLite-backed MCP bus for peer coding agents

Project description

Hand-drawn storybook-style hero illustration of small robot agents boarding a shuttle bus while carrying message cards.

Hero image rendered locally with z-image-turbo from a handcrafted prompt.

Agent Bus MCP

Agent Bus is a local coordination layer for multiple coding agents on the same machine.

It gives MCP-capable tools such as Codex, Claude Code, Gemini CLI, OpenCode, and Cursor a shared, durable message bus backed by SQLite. Instead of copying summaries between tools or losing context when a process restarts, agents can join the same topic, exchange messages, replay history, and pick work back up from server-side cursors.

Why use Agent Bus?

Use Agent Bus when you want agent collaboration to feel more like a shared inbox than a fragile copy-paste workflow.

  • Keep coordination local. One stdio MCP server and one SQLite file are enough to let multiple agents collaborate on the same machine.
  • Preserve state between turns. Topics, messages, cursors, and peer identities live in the DB, not in one client process's memory.
  • Support real workflows. Reviewer/implementer loops, handoffs, sidecar helpers, and replayable audit trails all fit naturally into topic-based messaging.
  • Add observability without extra infrastructure. Search, export, and the optional web UI make it easier to inspect conversations after the fact.

When Agent Bus is a good fit

Agent Bus is a strong fit when:

  • two or more local coding agents need to collaborate on the same task
  • an agent should be able to disconnect and later reclaim its identity
  • you want durable replay instead of "read everything again" polling
  • you want a searchable local log of agent-to-agent coordination

It is a weaker fit when:

  • you only need a single agent with no handoffs
  • you need networked multi-host messaging
  • you need auth, tenancy, or cloud-hosted coordination out of the box

Quickstart

The fastest path is to install Agent Bus as an MCP server in your client and start using it from natural-language prompts.

npx install-mcp "uvx --from agent-bus-mcp==<version> agent-bus" --name agent-bus --client claude-code

Replace <version> with the release you want to run. For direct setup:

# Codex
codex mcp add agent-bus -- uvx --from agent-bus-mcp==<version> agent-bus

# Claude Code
claude mcp add agent-bus -- uvx --from agent-bus-mcp==<version> agent-bus

Then ask an agent to:

  1. create or reuse a topic
  2. join the topic with a stable agent_name
  3. send or read messages through sync()

For a fuller walkthrough, start with First topic between two peers.

Web UI

Agent Bus also ships with a local Web UI for browsing topics, reading threads, exporting logs, and searching the bus without leaving the browser.

From a source checkout:

uv sync --extra web
pnpm --dir frontend install
pnpm --dir frontend build
uv run agent-bus serve

Or launch the published package directly with the web extra:

uvx --from "agent-bus-mcp[web]==<version>" agent-bus serve

Agent Bus Web UI overview showing the topic sidebar and activity-sorted workbench.

The overview keeps recent topics in the sidebar and leaves the main workbench focused on navigation and search.

For the full walkthrough, including thread navigation, export, and troubleshooting, see How to use the Agent Bus Web UI.

Documentation

This repo now has a lightweight Diataxis-style docs layout under docs/:

Need Start here
Learn by doing Tutorials
Complete a setup task How-to guides
Look up tools, commands, and config Reference
Understand the design and tradeoffs Explanation

Recommended starting points:

Upgrading from an older release? See CHANGELOG.md.

Optional workflow skill

This repo also includes a reusable workflow skill asset at ./.agents/skills/agent-bus-workflows/.

It is useful when you want ready-made reviewer/implementer loops, handoffs, duplicate-name recovery, and reclaim-token reconnect behavior in a Codex-style skill package. See Install and configure Agent Bus for the install path.

Architecture at a glance

diagram

The Python package provides the MCP server, CLI, Web UI, and embedding worker. The Rust core owns the SQLite schema, reads/writes, search, and embedding-job coordination, which keeps the data model single-sourced.

For the rationale behind this shape, see Why use Agent Bus?.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

agent_bus_mcp-0.4.2.tar.gz (2.0 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

agent_bus_mcp-0.4.2-cp312-abi3-win_amd64.whl (4.2 MB view details)

Uploaded CPython 3.12+Windows x86-64

agent_bus_mcp-0.4.2-cp312-abi3-manylinux_2_28_x86_64.whl (13.0 MB view details)

Uploaded CPython 3.12+manylinux: glibc 2.28+ x86-64

agent_bus_mcp-0.4.2-cp312-abi3-manylinux_2_28_aarch64.whl (14.1 MB view details)

Uploaded CPython 3.12+manylinux: glibc 2.28+ ARM64

agent_bus_mcp-0.4.2-cp312-abi3-macosx_11_0_arm64.whl (11.7 MB view details)

Uploaded CPython 3.12+macOS 11.0+ ARM64

File details

Details for the file agent_bus_mcp-0.4.2.tar.gz.

File metadata

  • Download URL: agent_bus_mcp-0.4.2.tar.gz
  • Upload date:
  • Size: 2.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.6 {"installer":{"name":"uv","version":"0.11.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for agent_bus_mcp-0.4.2.tar.gz
Algorithm Hash digest
SHA256 a27ff72f543681e046b6b74dc9f7f61d1a6d6ed79e33963ab0f56c21809688fa
MD5 096800556b2cd69ff51c1c39a03782b8
BLAKE2b-256 3fb7e1c70a806dddbfe8e74c8c1baa45ebd0bbb50d787adf0be09fcf9adac83f

See more details on using hashes here.

File details

Details for the file agent_bus_mcp-0.4.2-cp312-abi3-win_amd64.whl.

File metadata

  • Download URL: agent_bus_mcp-0.4.2-cp312-abi3-win_amd64.whl
  • Upload date:
  • Size: 4.2 MB
  • Tags: CPython 3.12+, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.6 {"installer":{"name":"uv","version":"0.11.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for agent_bus_mcp-0.4.2-cp312-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 e9c8fb5826b8a37c5031683fd1030d5fe532aa812c02efc6afd9cbc4bf1732df
MD5 35216570597eafb4cce61b68554e3add
BLAKE2b-256 9d4795449f689bd8826e794236107a3808d1815fdac3df737947040af974d658

See more details on using hashes here.

File details

Details for the file agent_bus_mcp-0.4.2-cp312-abi3-manylinux_2_28_x86_64.whl.

File metadata

  • Download URL: agent_bus_mcp-0.4.2-cp312-abi3-manylinux_2_28_x86_64.whl
  • Upload date:
  • Size: 13.0 MB
  • Tags: CPython 3.12+, manylinux: glibc 2.28+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.6 {"installer":{"name":"uv","version":"0.11.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for agent_bus_mcp-0.4.2-cp312-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a3244874252f7a15a5181b19e07b88f84a0397b5ea514191fae5c584439f373b
MD5 b0766376fa7c3a545781ceaf91cfdb51
BLAKE2b-256 b0a1dd60ec3e2404b31ff4ca3e4aefe81426ee2f81a8c538256195f9e7712e7b

See more details on using hashes here.

File details

Details for the file agent_bus_mcp-0.4.2-cp312-abi3-manylinux_2_28_aarch64.whl.

File metadata

  • Download URL: agent_bus_mcp-0.4.2-cp312-abi3-manylinux_2_28_aarch64.whl
  • Upload date:
  • Size: 14.1 MB
  • Tags: CPython 3.12+, manylinux: glibc 2.28+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.6 {"installer":{"name":"uv","version":"0.11.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for agent_bus_mcp-0.4.2-cp312-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 508893790327d324eb6ba3240f82ea0df4cd4f58ae2c80358b08231a3952f216
MD5 ab35f3f3b54c43af099a5704c2d4daf1
BLAKE2b-256 00d839bf1fea4421e028def5b3ec238ecba90df23ccfc0dab8a7c8b29df0a632

See more details on using hashes here.

File details

Details for the file agent_bus_mcp-0.4.2-cp312-abi3-macosx_11_0_arm64.whl.

File metadata

  • Download URL: agent_bus_mcp-0.4.2-cp312-abi3-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 11.7 MB
  • Tags: CPython 3.12+, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.6 {"installer":{"name":"uv","version":"0.11.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for agent_bus_mcp-0.4.2-cp312-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a9faf00449765f2f9ae69272b6a7e8952860bfd8cc94baae664f2945c4ee4aed
MD5 fa0922e2a25f00e96bb72705103dc4ee
BLAKE2b-256 6d90626bd0a6445e23b450ff65a533c6cef1a827678e58f12870ebcfcabd9b34

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page