agent-bus-mcp
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-bus-mcpsend a message to conductor: all tests passed"
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-bus-mcp
MCP-обёртка над ~/.claude/dev-config/scripts/agent-msg.sh — file-based conductor/sub-orchestrator
message bus для multi-agent Claude-сетапов (~/.claude/dev-config/rules/multi-agent.md).
Логика подписи (HMAC), хранения сообщений и path-резолва bus-директории остаётся в bash-скрипте — сервер только шеллит его. Цель: дать доступ к bus'у любому MCP-совместимому клиенту (не только Claude Code CLI), сохранив тот же формат сообщений и тот же ключевой материал.
Identity binding
Один MCP-сервер = один агент. Личность (AGENT_MSG_AS) задаётся только через env сервера
при старте, не через tool-параметр — так подмена --from невозможна на уровне схемы, не только
проверкой (как в CLI, где расхождение --from с $AGENT_MSG_AS — отказ, но сама возможность
попытки существует).
Сервер без AGENT_MSG_AS в env стартовать отказывается.
Related MCP server: InterAgentMail
Tools
Tool | Соответствует CLI | Заметка |
|
|
|
|
| |
|
| |
|
| |
|
| read-only, identity не требуется |
|
| только для identity ∈ |
|
| |
| замена | bounded polling (default timeout 60s, max 300s) вместо бесконечного процесса — MCP tool-call не может висеть вечно как |
bus_read возвращает isError: true, если подпись не сошлась, и ставит предупреждение ПЕРЕД
текстом сообщения. agent-msg.sh в этом случае пишет в stderr и завершается кодом 0, поэтому
без этой обработки подделка приезжает как обычный успешный ответ, а сноска про неё — уже после
подменённого тела.
Setup
cd ~/Dev/mcp/agent-bus
npm installВ проекте, где нужен bus (например ~/Dev/Astra/Astra_2.0), добавить .mcp.json:
{
"mcpServers": {
"agent-bus": {
"command": "node",
"args": ["/home/oitc/Dev/mcp/agent-bus/src/index.js"],
"env": {
"AGENT_MSG_AS": "backend-orch",
"AGENT_BUS_PROJECT_DIR": "/home/oitc/Dev/Astra/Astra_2.0"
}
}
}
}AGENT_BUS_PROJECT_DIR — откуда резолвится bus-директория (git common dir → project slug, та же
логика, что в agent-msg.sh). Нужен явно, если сервер запускается не из корня проекта (например
он всегда лежит в ~/Dev/mcp/agent-bus, а не в самом проекте).
Резолв делает сервер, один раз, и передаёт готовый путь в agent-msg.sh через AGENT_MSG_BUS.
Иначе резолвов два — JS в сервере и bash в скрипте, — они расходятся на симлинках (path.resolve
не разворачивает, realpath разворачивает), и ни один не старший.
Fail-closed на несуществующей шине. agent-msg.sh делает mkdir -p безусловно: неверно
зарезолвленный путь не даёт ошибки, он молча заводит ВТОРУЮ шину, и все команды возвращают 0.
Так уже случилось до всякого MCP — в ~/.claude/projects/-tmp/agent-bus лежали семь сообщений
переклички от 26.07, которых никто не получил. Поэтому сервер отказывается стартовать, если
каталога <bus>/messages не существует; завести шину по новому адресу осознанно —
AGENT_BUS_ALLOW_CREATE=1.
Identity не кладётся в .mcp.json репозитория. Файл попадает в git и разъезжается по всем
worktree — каждый sub-orch получил бы чужой AGENT_MSG_AS и отправлял бы под чужим именем, то
есть ровно то, против чего заведена подпись. Ставить в local scope:
claude mcp add agent-bus --scope local \
--env AGENT_MSG_AS=<твоё-имя> \
--env AGENT_BUS_PROJECT_DIR=/path/to/project \
-- node /home/oitc/Dev/mcp/agent-bus/src/index.jsДля conductor'а (admin-роль) — AGENT_MSG_AS=conductor, без доп. настроек: он уже в default
AGENT_BUS_ADMIN_NAMES.
Push-уведомления — через Monitor, не через MCP
bus_wait — bounded request/response (агент сам решает, когда ждать, и ждёт максимум 300s).
Настоящий push (событие прилетает в сессию само, без явного вызова) для Claude Code сессий уже
закрыт существующим механизмом и MCP-слой тут не нужен и не задействован:
Monitor(command: "agent-msg watch --as=<your-name>", persistent: true)Это тот же agent-msg.sh, что и обёрнутые tools, но команда watch — бесконечный процесс
(по конструкции не ложится в MCP tool-call), а Monitor умеет его именно так и держать. Полное
описание — ~/.claude/dev-config/rules/multi-agent.md §7 "PUSH через Monitor".
Итого роли не пересекаются: bus_wait — для MCP-клиентов без Monitor (или для одноразового
ожидания внутри более длинного tool-вызова); watch+Monitor — стандартный push-канал для
Claude Code сессий, как и раньше.
Env vars
Var | Default | Что |
| — (обязателен) | identity этого сервера |
|
| откуда резолвится bus dir (git common dir) |
|
| путь к обёртываемому CLI |
|
| кому доступен |
| — |
|
|
| откуда берётся список известных имён для проверки получателя |
| — | прямой override bus-директории (проброс в скрипт как есть) |
Что НЕ покрыто (сознательно)
keygen— управление ключами остаётся ручной CLI-операцией, не tool (нет причины дёргать генерацию ключа из агентского вызова).Push через
watch— не воспроизведён 1:1.bus_wait— bounded-poll аналог; постоянный push (какagent-msg watchподMonitor) для MCP-клиентов, умеющих сами держать долгоживущий polling-цикл (аналогично Monitor у Claude Code), достаточен.Иерархия / кто кому имеет право писать — не в протоколе.
AGENT_BUS_ADMIN_NAMESдаёт только read-доступ к approval-очереди; полный список прав (кто чью зону не трогает) остаётся конвенциейmulti-agent.md, не enforced сервером.
This server cannot be deployed
Maintenance
Related MCP Connectors
Agent communication platform for agent to agent messaging via MCP. Messages, channels, skills.
Machine-economy newswire and paid changes-since for agents. MCP is challenge-handoff, not a wallet.
Hosted MCP messaging across owners, tools, and machines, with readable transcripts.
Email infrastructure for AI agents — send, receive, search, and reply to email over MCP.
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceA NATS-backed mailbox for local LLM agents. Provides a simple way for AI coding agents to message and notify each other via a hostable MCP server.4GPL 3.0
- AlicenseBqualityAmaintenanceEnables durable message passing between Codex project agents with MCP tools and automatic wake-up delivery, storing messages as JSON on disk.23MIT
- AlicenseNot gradedqualityBmaintenanceEnables local agent-to-agent messaging between Claude Code sessions via file-based channels, with a registry, MCP tools and CLI for sending, reading, and tracking messages.2MIT
- AlicenseNot gradedqualityAmaintenanceMCP server for permissioned, structured agent-to-agent communications, enabling agents to coordinate and negotiate through scoped, typed messages with authentication and audit logging.MIT