Skip to main content
Glama

mcp-acp-bridge

ACP-сервер, который служит интерфейсом для любого MCP-говорящего кодингового агента.

Мост размещает MCP-сервер для агента и общается по протоколу ACP с редактором или клиентом. Поскольку каждый вызов инструмента, который делает агент, проходит через него, мост может удерживать каждый и сначала запрашивать одобрение у клиента — превращая вызовы инструментов в реальные запросы разрешений в любом пользовательском интерфейсе, который управляет этим процессом.

client (T3 Code, Zed, …) ──ACP──► bridge ──MCP──► agent (agy, claude, codex, …)
                                    │
                                    └─ spawns and supervises the agent process

Статус: MCP-часть работает. ACP-часть пока не существует.

Перехват инструментов и ограничение разрешений реализованы и проверены сквозным тестированием с Claude Code в качестве живого MCP-клиента — вызов перехватывается, удерживается, разрешается или отклоняется, и отказ возвращается агенту в виде читаемого текста. Чего не хватает, так это ACP-сервера, который превращает эти удержания в session/request_permission для реального клиента, и супервизора агента. См. docs/design.md.

Попробуйте

npm install
npm test              # unit tests, no agent required
npm run test:live     # drives the real `claude` CLI against the gateway
npm run test:live deny

test:live требуется CLI claude в PATH и аутентификация. Он передает Claude Code конечную точку MCP для каждой сессии, просит вызвать инструмент и показывает перехват:

[tool] requested magic_word
[gate] DENY magic_word {}
[tool] denied magic_word (denied by test policy)
[claude] said: The tool call was denied. The error returned was exactly:
         `Error: permission denied: denied by test policy`

Related MCP server: agentic-governance-gateway

Почему

Некоторые кодинговые агенты не выдают структурированный вывод. CLI Antigravity от Google (agy) является мотивирующим примером: у него нет режима ACP (запрос в репозиторий), и в безголовом режиме он выводит обычный текст и автоматически отклоняет любое разрешение, для которого не может запросить подтверждение. Управление им из GUI означает либо парсить TUI, либо отказаться от утверждений.

Этот мост выбирает третий путь. Он игнорирует то, что агент говорит, и перехватывает то, что агент делает: вызовы инструментов MCP уже структурированы, уже наблюдаемы и — что важно — уже перехватываемы. MCP-сервер — это не слушатель, это шлюз.

Ничего в этом подходе не зависит от конкретного агента. Любой агент, который можно направить на MCP-сервер, работает.

Что он видит, а что нет

MCP — это инструментальный канал, а не канал вывода агента.

Вывод ACP

Источник

Точность

tool_call, tool_call_update

перехваченные вызовы MCP

точный

session/request_permission

один на каждый перехваченный вызов

точный

agent_message_chunk

stdout агента

зависит от агента

границы ходов

жизненный цикл процесса

точный

Встроенные инструменты работы с файлами и оболочкой агента не проходят через MCP, поэтому они не генерируют tool_call. Это пробел в видимости, а не в корректности — клиенты, которые делают снимки рабочего пространства (T3 Code делает diff на границах ходов), всё равно фиксируют изменения. Потерян живой прогресс по каждому действию, а не запись.

Маршрутизация встроенных инструментов через мост в виде инструментов MCP закрывает этот пробел и обновляет модель безопасности с постоянных разрешений до проверки каждого действия. Это запланированное укрепление, а не обязательное условие.

Поддержка ревизий MCP

Поддерживаются как текущая, так и будущая ревизии, поскольку мост никогда не привязывается к состоянию транспорта MCP:

Ревизия

Рукопожатие

Сессия

2025-03-26

initialize / initialized

заголовок Mcp-Session-Id, опционально

2026-07-28 (RC)

нет

удалено; метаданные запроса встроены в _meta

Сессии ACP коррелируются по конечной точке URL, ограниченной путём, по одной на запуск агента, поэтому обе ревизии ведут себя идентично. См. docs/design.md.

Лицензия

MIT. См. LICENSE.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    A
    maintenance
    MCP server that bridges coding agents (Claude Code, Codex, Gemini CLI) via ACP for pair programming, enabling agents to consult each other as tools.
    3
    -
  • A
    license
    A
    quality
    A
    maintenance
    MCP server that enables a coordinator AI agent to spawn, control, and supervise local coding agents with interactive gating for high-risk operations.
    10
    17 npm
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    MCP server that provides a security gateway for AI agents, enforcing allow/confirm/deny policies on tool calls and requiring human approval for risky operations, with full audit logging.
    -