# ACP — three protocols, one name (Agent Communication, Agent Client, Agent Connect)

> VI: https://5ac.vn/wiki/acp/ · EN: https://5ac.vn/en/wiki/acp/ · lang: en · spec_as_of 2026-10-18 (spec no formal spec) · cluster C4

The abbreviation ACP currently names three different agent protocols: Agent Communication Protocol (BeeAI/IBM, now folded into A2A), Agent Client Protocol (editor ↔ coding agent) and Agent Connect Protocol (Agntcy). Comparison table with a primary source per protocol.

---
## Definition

"ACP" names three separate protocols: the Agent Communication Protocol (agent-to-agent interoperability, BeeAI community, now folded into A2A), the Agent Client Protocol (code editors talking to coding agents) and the Agent Connect Protocol (invoking remote agents over an API, Agntcy Collective). Three layered problems — a document should say which one it means.

## Mechanism

The collision happened because three camps solved three layers of the "agentic web" during 2024–2025 without agreeing on names. The disambiguation table — every cell uses the terminology each protocol's own source ships:

| | Agent Communication Protocol | Agent Client Protocol | Agent Connect Protocol |
| --- | --- | --- | --- |
| Primary source | agentcommunicationprotocol.dev | agentclientprotocol.com · repo `zed-industries/agent-client-protocol` | github.com/agntcy/acp-spec · spec.acp.agntcy.org |
| Connects whom to whom | agents ↔ agents, applications and humans | code editors/IDEs ↔ coding agents | a client ↔ an agent running remotely |
| Shape | RESTful API; MimeType for any content type; async-first with sync supported; discovery even while offline | JSON-RPC; local agents run as editor sub-processes over stdio, remote over HTTP/WebSocket; reuses MCP's JSON representations | OpenAPI — "a REST-based schema specification"; a descriptor covers configuration, input, output, interrupts and state |
| Version / status | official banner: now part of A2A under the Linux Foundation | repo README: *"The current stable ACP protocol version is `1`."* | `openapi.json`: version 0.2.3; commit-pinned Agntcy docs: *"not currently under active development"* |
| The question it answers | "How does an agent from one framework call an agent from another?" | "How does my editor plug into every coding agent?" | "How do I invoke an agent on another machine through a standard API?" |

The trap sits in column one: readers chasing the 2025 "IBM/BeeAI ACP" story now find its canonical site redirecting into A2A — the agent-to-agent protocol covered in the [Agent2Agent](/en/wiki/a2a/) entry. Columns two and three are unrelated to each other: editor↔agent is not agent↔agent, and both differ from Agntcy's remote-invocation problem.

## Spec anchor

All three identities are read from their own primary sources, with the exact sentence where the name and status appear (all accessed 18 Oct 2026, HTTP 200):

- <https://agentcommunicationprotocol.dev/introduction/welcome> — *"The Agent Communication Protocol (ACP) is an open protocol for agent interoperability that solves the growing challenge of connecting AI agents, applications, and humans."* Page banner: *"ACP is now part of A2A under the Linux Foundation!"*; and *"Developed as an open standard under the Linux Foundation alongside BeeAI (its reference implementation)"*.
- <https://agentclientprotocol.com/overview/introduction> — *"The Agent Client Protocol (ACP) standardizes communication between code editors/IDEs and coding agents and is suitable for both local and remote scenarios."* Details: *"Local agents run as sub-processes of the code editor, communicating via JSON-RPC over stdio."*; *"The protocol re-uses the JSON representations used in MCP where possible."*
- <https://raw.githubusercontent.com/agntcy/acp-spec/main/README.md> — *"This repo contains the specification of Agent Connect Protocol (ACP) proposed by the Agntcy Collective. The Agent Connect Protocol defines a standard interface to invoke and configure remote agents over an API. The protocol is specified in OpenAPI a REST-based schema specification."* Supporting measurements: <https://raw.githubusercontent.com/agntcy/acp-spec/main/openapi.json> reads `"version": "0.2.3"`; development status per a pinned commit of the Agntcy docs, <https://github.com/agntcy/docs/blob/d7d5db4e/docs/syntactic/connect.md>: *"This component is not currently under active development. While it remains available, updates and new features are not planned at this time."*

There is no single "ACP" to pin a revision date to — hence spec-version reads "no formal spec"; every version marker above belongs to one specific protocol.

## Academic anchors

No arXiv paper studies "ACP" as such — the object here is a naming collision between three standards repositories, not a research result. The anchors are the direct measurements above: three primary sources, each alive and self-reporting its status at the 18 Oct 2026 as-of date.

## FAQ

**"ACP" inside editor/IDE material (Zed, Neovim, chat plugins)?** The Agent Client Protocol — JSON-RPC between editor and coding agent. Docs talking about sessions, stdio or diff UIs mean this one.

**"ACP" in multi-agent framework posts (LangChain, CrewAI, BeeAI, IBM)?** The Agent Communication Protocol — but its canonical site now states *"ACP is now part of A2A under the Linux Foundation!"*: following that story means reading A2A.

**"ACP" next to AGNTCY / "Internet of Agents" / an OpenAPI descriptor?** The Agent Connect Protocol — REST for invoking remote agents, currently v0.2.3 and flagged by Agntcy's own docs as not under active development.

**How to search without mixing all three up?** Pair the abbreviation with the full name: "what is the Agent Client Protocol", "Agent Communication Protocol A2A", "Agent Connect Protocol Agntcy". A bare "ACP" query returns the collision — the reason this entry exists.

**Why didn't the three pick different names?** Rebranding costs more than the confusion, and technology tolerates abbreviation collisions (LSP meant several things too). The de facto fix is what all three sources practice: full name plus a distinct domain, with disambiguation pages like this one doing the rest.

## Related

- [Agent2Agent (A2A) protocol](/en/wiki/a2a/)
- [Model Context Protocol (MCP)](/en/wiki/mcp/)
- [MCP protocol eras](/en/wiki/mcp-eras/)
- [What is a sub-agent](/en/wiki/sub-agent/)
- [Benchmark suite for AI agents](/en/wiki/benchmark-suite/)
- [What Is a Multi-Agent OS?](/en/blog/what-is-multi-agent-os/)
