mcp-acp-bridge
mcp-acp-bridge
Ein ACP-Server, der als Frontend für jeden MCP-sprechenden Coding-Agenten dient.
Die Bridge hostet einen MCP-Server für den Agenten und spricht ACP mit einem Editor oder Client. Da jeder Tool-Aufruf des Agenten durch sie hindurchgeht, kann die Bridge jeden einzelnen anhalten und zuerst den Client um Genehmigung bitten – und so Tool-Aufrufe in echte Berechtigungsabfragen in der jeweiligen Benutzeroberfläche verwandeln.
client (T3 Code, Zed, …) ──ACP──► bridge ──MCP──► agent (agy, claude, codex, …)
│
└─ spawns and supervises the agent processStatus: Die MCP-Hälfte funktioniert. Die ACP-Hälfte existiert noch nicht.
Tool-Interception und Berechtigungssteuerung sind implementiert und End-to-End gegen Claude Code als live MCP-Client verifiziert – ein Aufruf wird abgefangen, angehalten, erlaubt oder verweigert, und eine Verweigerung kommt als lesbarer Text zum Agenten zurück. Was fehlt, ist der ACP-Server, der diese Anhaltevorgänge in
session/request_permissionfür einen echten Client umwandelt, sowie der Agent Supervisor. Siehe docs/design.md.
Ausprobieren
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 denytest:live benötigt die claude CLI im PATH und authentifiziert. Es übergibt Claude Code einen pro-Sitzung MCP-Endpunkt, bittet es, ein Tool aufzurufen, und zeigt die Interception an:
[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
Warum
Manche Coding-Agenten geben keine strukturierte Ausgabe aus. Googles Antigravity CLI (agy) ist der motivierende Fall: Es hat keinen ACP-Modus (Upstream-Anfrage), und im Headless-Modus gibt es Klartext aus und lehnt automatisch jede Berechtigung ab, für die es nicht nachfragen kann. Es von einer GUI aus zu steuern bedeutet daher entweder, ein TUI zu scrapen oder auf Genehmigungen zu verzichten.
Diese Bridge geht einen dritten Weg. Sie ignoriert, was der Agent sagt, und fängt ab, was der Agent tut: MCP-Tool-Aufrufe sind bereits strukturiert, bereits beobachtbar und – entscheidend – bereits abfangbar. Ein MCP-Server ist kein Zuhörer, sondern ein Tor.
Nichts an diesem Ansatz ist agentenspezifisch. Jeder Agent, der auf einen MCP-Server ausgerichtet werden kann, funktioniert.
Was es sieht und nicht sieht
MCP ist ein Tool-Kanal, kein Agenten-Ausgabekanal.
ACP-Ausgabe | Quelle | Genauigkeit |
| abgefangene MCP-Aufrufe | exakt |
| einer pro abgefangenem Aufruf | exakt |
| die Standardausgabe des Agenten | pro Agent |
Turn-Grenzen | Prozesslebenszyklus | exakt |
Die eingebauten Datei- und Shell-Tools eines Agenten durchlaufen MCP nicht, daher erzeugen sie keinen tool_call. Das ist eine Sichtbarkeitslücke, keine Korrektheitslücke – Clients, die den Arbeitsbereich sichern (T3 Code diffed ihn an Turn-Grenzen), zeichnen dennoch auf, was sich geändert hat. Verloren geht der Live-Fortschritt pro Aktion, nicht die Aufzeichnung.
Das Routing eingebauter Tools durch die Bridge als MCP-Tools schließt diese Lücke und verbessert das Sicherheitsmodell von dauerhaften Berechtigungen hin zu einer Überprüfung pro Aktion. Es ist eine geplante Härtung, keine Voraussetzung.
MCP-Revisionsunterstützung
Sowohl die aktuelle als auch die kommende Revision werden unterstützt, da die Bridge niemals etwas vom MCP-Transportzustand abhängig macht:
Revision | Handshake | Session |
2025-03-26 |
|
|
2026-07-28 (RC) | keiner | entfernt; Anfrage-Metadaten inline in |
ACP-Sitzungen werden durch eine pfadbezogene Endpunkt-URL korreliert, eine pro Agentenlauf, sodass sich beide Revisionen identisch verhalten. Siehe docs/design.md.
Lizenz
MIT. Siehe LICENSE.
This server cannot be deployed
Maintenance
Related MCP Connectors
MCP server for your apps' tools and custom tools, plus hosted AI agents and approval-gated workflows
Zero-secret MCP gateway for AI agents: risk-scored, audited calls with human-in-the-loop approval.
The Remote MCP server acts as a standardized bridge between LLM applications (like Claude, ChatGPT, and Cursor) and external services, enabling AI agents to access external tools and resources. Its primary capability is providing a centralized search tool to discover other MCP servers and their respective tools. Unlike local implementations, it runs remotely with OAuth authentication and permission controls for security.
MCP server connecting AI agents to 100+ apps (Gmail, Slack, Notion, GitHub) via one-click OAuth.
Related MCP Servers
- FlicenseNot gradedqualityAmaintenanceMCP server that bridges coding agents (Claude Code, Codex, Gemini CLI) via ACP for pair programming, enabling agents to consult each other as tools.3-
- AlicenseNot gradedqualityCmaintenanceAn MCP server that provides a governance layer for coding agents, enforcing policies, validation, and human-in-the-loop for tool calls without requiring an API key.MIT
- AlicenseAqualityAmaintenanceMCP server that enables a coordinator AI agent to spawn, control, and supervise local coding agents with interactive gating for high-risk operations.1017 npmMIT
- FlicenseNot gradedqualityCmaintenanceMCP 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.-