Skip to main content

MCP, WebMCP, A2A and ARD

Four protocols cover almost everything an agent needs to reach: a tool, a web page, another agent, and a catalogue of what exists. MCP and WebMCP are separate specifications by different authors. ARD is four months old and indexes the other three. Here's what each one is and who's on each end of the wire.

7 min read
Read with ClaudeRead with ChatGPTMarkdown

Four protocols cover almost everything an agent needs to reach: a tool, a web page, another agent, and a catalogue telling it which of those exist in the first place.

They arrived roughly in that order over eighteen months, and the last one only landed in May.

The names give you no help at all. MCP and WebMCP are separate specifications written by different people for different jobs. ARD expands two different ways depending on which page you read, and I’ll get to that.

So here’s what each one is, and the question that keeps them straight.

Who is on each end

Every one of these specs answers the same question. Who is on each end of the connection, and what are they allowed to say to each other? Ask that of each acronym and the four sort themselves out.

AcronymOne endOther end
MCPAn agentA tool or data source
WebMCPAn agentA web page you’re on
A2AAn agentAnother agent, owned by someone else
ARDAn agentA catalogue of everything above

Agent to tool: MCP

MCP is the one you already know. The current spec is dated 2026-07-28. It’s JSON-RPC 2.0 throughout, with three things a server offers a client, tools, resources and prompts, and elicitation running the other way so a server can ask the user a question mid-flight.

The extension mechanism is where the recent movement is. Tasks handles long-running work with polling and durable handles. MCP Apps renders interactive UI inline in a conversation. Skills over MCP gives agents structured instructions rather than just callable functions.

Anthropic donated MCP to the Linux Foundation’s Agentic AI Foundation on 9 December 2025.

For scale: @modelcontextprotocol/sdk pulled between 41 and 53 million npm downloads a week across August and the first half of September 2026. Nothing else here is within an order of magnitude, and the rest of this post reads differently once you know that.

Agent to a web page: WebMCP

WebMCP shares three letters with MCP and is a separate thing with separate authors. The draft and its explainer live in the webmachinelearning/webmcp repository.

It lets a web page register tools that an agent in the browser can call. A page calls navigator.modelContext.registerTool() (the latest draft in the repo hangs it off document.modelContext instead) with a name, a description and a schema, and an agent driving the browser gets a real function to call rather than a DOM to guess at. Anyone who has watched an agent try to click through a checkout flow will see the appeal immediately.

Microsoft and Google editors have been working on it in the W3C Web Machine Learning Community Group since 13 August 2025, and it landed in Chrome 146 Canary on 10 February 2026.

Before you build on it, know that a Community Group report is not a W3C standard and isn’t on the standards track. It means interested parties wrote something down. As of mid-September 2026 the spec’s own status page lists origin trials in Chrome 149 and Edge 150, experimental support in Brave’s Leo and in ChatGPT Desktop, and nothing from Firefox or Safari beyond a standards-position ticket each.

Agent to agent: A2A

Google announced A2A in April 2025, handed it to the Linux Foundation that June, shipped v1.0 on 12 March 2026 and v1.0.1 on 28 May. The specification is on a2a-protocol.org. On 17 August 2026 the Agentic AI Foundation announced A2A was joining it, the same Linux Foundation body that has held MCP since December, and A2A’s own blog confirmed the acceptance on 27 August, so the two now sit under one roof. That’s a decent signal the industry has stopped treating them as rivals.

The core idea is an Agent Card, a JSON document describing an agent’s identity, skills, endpoint and authentication requirements. Other agents read the card to decide whether to send it anything. A card can carry a JWS signature, in the spec since v0.3 with v1.0 pinning down the canonicalisation, so a client can check the card came from who it claims.

Work happens as a Task, moving through submitted, working, completed, failed, canceled, rejected, plus two states that pause rather than end things, input-required and auth-required. Content travels as Messages made of Parts. Results come back as Artifacts. That last distinction trips people up. Messages are the conversation, Artifacts are the output you keep.

Three protocol bindings, JSON-RPC, gRPC and HTTP+JSON/REST, and you can define your own. In its simplest form an A2A call is one HTTP request.

The Linux Foundation’s April 2026 numbers: 150-plus supporting organisations, 22,000-plus GitHub stars, a steering committee drawn from AWS, Cisco, Google, IBM Research, Microsoft, Salesforce, SAP and ServiceNow. Microsoft ships it in Azure AI Foundry and Copilot Studio, AWS through Bedrock AgentCore Runtime. The JavaScript SDK does about 2 million npm downloads a week, on npm’s figure for the second week of September 2026.

Agent to catalogue: ARD

This is the newest one and the reason I ended up writing any of this down.

Agentic Resource Discovery answers a question none of the others do. An agent knows how to call an MCP server once you hand it the address. ARD is about finding the address in the first place.

A publisher hosts /.well-known/ard.json (the earlier drafts and Google’s June announcement called it ai-catalog.json) listing what it offers: MCP servers, A2A agent cards, Skills, plain APIs. Registries crawl those catalogues, index them, and answer a POST /search with the resources that match a task. Registries can federate into each other, so a search can follow referrals across domains.

The argument for it is context budget. Every tool description has to fit in the window before the model can pick one, and at a few hundred capabilities that stops working. ARD moves selection out of the model into a retrieval service, which is what search engines did to the open web thirty years ago.

The spec is v0.91, Apache-2.0, at ards-project/ard-spec, first pushed 19 May 2026, 463 stars as of mid-September, still taking commits in late August. The author list is Junjie Bu at Google, R.V. Guha at Microsoft and Shaun Smith at Hugging Face, with a working group that also includes Cisco, Databricks, GitHub, GoDaddy, Nvidia, Salesforce, ServiceNow and Snowflake. Guha’s name is worth pausing on, since he created the first RSS, co-founded Schema.org and did much of the groundwork for RDF. This is the fourth time he’s tried to get the web to describe itself in a machine-readable way.

Hugging Face ships the reference client as an extension to its hf CLI. uv tool install huggingface_hub, then hf discover "help me train a model" (the extension installs itself on first use), and hf discover navigate <site> "<query>" walks a site’s catalogue and follows federated registries.

Adoption is close to zero. A June 2026 census of 39 major sites found not one serving a discoverable ai-catalog.json. Read the spec, don’t build your architecture on it yet.

One detail that belongs in a post about naming: the specification site calls it Agentic Resource Discovery, and the README of Hugging Face’s reference implementation calls it Agent Resource Discovery, while Hugging Face’s own launch post uses the spec’s name. Even the people writing code for the spec slip on what the acronym expands to.

Where that leaves you

Agents reaching tools is MCP, agents reaching other agents is A2A, and those two are not competing choices. You will normally run both: an orchestrator hands work to a specialist over A2A, and the specialist reaches its tools over MCP.

WebMCP is MCP’s idea applied to the page a browser agent is already sitting on, and it’s an experiment in one browser rather than a standard.

ARD is the layer above all of it, and it’s too early to depend on. Read it now so you recognise ard.json when it starts appearing.

The fastest way to keep them straight is to ask who’s on each end.

The specs