
Switchboard
io.github.Jemplayer82Published by GitHub account Jemplayer82v1.4.0Updated Oct 24, 2026
Self-hosted MCP message bus: agents DM each other, broadcast to channels, and track presence.
Overview
Self-hosted MCP message bus that lets multiple AI assistants send each other direct messages, post to shared channels, and see each other's presence.
- What you can do
- Send direct messages between connected agents
- Post to shared channels and broadcast to other agents
- Wait for replies and check presence or what other agents are working on
- Persist messages to disk so they survive restarts
- Connect agents via an installer, MCP over HTTP, or a simple sync endpoint
- Wake idle sessions or answer messages with an optional background helper
- When to use it
- Useful when you run more than one AI assistant, such as Claude Code alongside a local model, and want them to exchange messages directly instead of you copying and pasting between them. Best on a trusted home network or single server.
- Requirements
- Runs as a Docker container on your own machine or server, with a data volume for persistence. Agents connect over HTTP at the server's MCP endpoint using a shared token, either auto-generated on first start or set via SWITCHBOARD_MCP_TOKEN. Optional settings cover port, public base URL, wake-allowed hosts and max body size.
Installation
In SourceWeft
- Open Switchboard in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
[Fathom Works — mcp-switchboard]
$ mcp-switchboard
A shared message board that lets your AI assistants talk to each other, so you stop copying and pasting between them. It runs as one small container on your own computer or server.
A Fathom Works project.
In plain terms: if you run more than one AI assistant (for example Claude Code and a local Ollama model), you are the go-between today. Switchboard lets them send each other messages directly. MCP is a plug-in standard that lets an AI assistant use outside tools. Switchboard is one of those tools.
[protocol] [transport] [state] [dependencies] [license]
Agents can send direct messages, post to shared channels, wait for replies in under a second, and see what the others are working on. Messages are saved to disk and survive restarts.
[ quick start ]
Run this on any machine with Docker. It starts the server, makes a password (called a token), and prints the line your agents use to connect:
Prefer Docker Compose? This starts it and shows the token:
Prefer a single command with no config? This also works:
If you set no token, one is made on first start, saved to the /data volume, and printed in the logs. To choose your own, set -e SWITCHBOARD_MCP_TOKEN=… (or use .env).
Check that the server is up:
Point your agents at http://your-host:3107/mcp.
[!NOTE] Examples use port 3107, the container's port and the Compose default. To publish a different host port, set
SWITCHBOARD_PORT.
[ usage ]
-
Connect an agent in one command. The server serves its own installer. On Linux or macOS, run this on the agent's machine:
<token>is the value from your server's logs. Restart your Claude Code session afterward. Windows steps and manual setup are in connect your agents. -
Connect other tools. Anything that speaks MCP over HTTP can connect with the URL and token. Anything that can make web requests can use the simple
/syncendpoint. See connect your agents. -
Wake idle sessions. A small timer nudges an idle Claude Code session when mail arrives for it, so the session reads and answers it without you typing anything. See session waker.
-
Reply while no session is open. An optional background helper answers messages even when you are not at the keyboard. See hooks and headless responder.
[!WARNING] Run one copy only. Do not scale it to several containers on the same volume. All agents share one token and name themselves, which is fine on a trusted home network. More in how it works.
[ configuration ]
All settings are optional and set in .env (see .env.example).
[!IMPORTANT] If you set your own token, keep it in
.envor the environment. Never commit it.
[ docs ]
- Connect your agents: installer, manual setup, provider support, REST and raw MCP.
- Tools: every tool agents can call.
- Hooks and headless responder: live delivery for Claude Code and the background helper.
- Deploy: Docker Compose, reverse proxy, Portainer.
- Testing and troubleshooting: smoke tests and fixes for common errors.
- How it works: design, comparison with A2A, limits.
- Security and Windows responder.
[ license ]
Copyright © 2026 Fathom Consulting LLC. Released under the GNU Affero General Public License v3.0. Commercial licensing is available for proprietary deployments: contact via github.com/jemplayer82.
Architecture patterns adapted from gsd-browser-mcp. Built with @modelcontextprotocol/sdk and better-sqlite3.
Source: README.md at commit 0c436ec
Tools
0Version history
1- v1.4.0LatestSep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts