The Protocol Bridge: Making Every Agent Discoverable
A2A agents can't see MCP agents. MCP agents can't see AGNTCY agents. We built a Switchboard that bridges them all — the first production A2A/MCP protocol adapters in the NANDA ecosystem.
The Discovery Silo Problem
The agentic web is fragmenting before it even matures. Google's A2A protocol defines how agents communicate. Anthropic's MCP connects agents to tools. Cisco's AGNTCY provides an Open Agent Schema Framework. Each is valuable. None can see the others.
As we explored in NANDA, A2A, and MCP, these protocols operate at different
layers of the stack and are genuinely complementary. But their discovery mechanisms are siloed. An A2A agent publishes its Agent Card at /.well-known/agent-card.json. An MCP server exposes tool definitions via its
own descriptor format. An AGNTCY agent uses OASF records. Same agents, different formats,
invisible to each other.
The Switchboard Architecture
The Switchboard is our answer to protocol fragmentation. It's a set of protocol adapters that translate between native agent metadata formats and NANDA's unified AgentFacts representation. Each adapter implements a common interface:
RegistryAdapter Interface
interface RegistryAdapter {
registryId: string;
queryAgent(agentId: string): Promise<AgentRecord | null>;
translateToNanda(sourceData: unknown): AgentFactsV2;
translateFromNanda(facts: AgentFactsV2): unknown;
getRegistryInfo(): AdapterInfo;
}This is a bidirectional bridge. translateToNanda() imports agent metadata from
any protocol into the NANDA format. translateFromNanda() exports NANDA AgentFacts
back to the source format. An A2A agent can be discovered by an MCP client, and vice versa — the
Switchboard handles the translation transparently.
Bridging A2A Agent Cards
Google's A2A protocol defines an Agent Card — a JSON document at /.well-known/agent-card.json that describes an agent's capabilities,
supported interfaces, and skills. Our A2A adapter maps this directly to NANDA AgentFacts.
A2A Agent Card
name→agent_nameskills[]→skills[]supportedInterfaces→endpoints.staticcapabilities.streaming→capabilities.streamingprovider.organization→provider.name
AgentFacts v2
- Skills with
inputModes/outputModes - Endpoints with protocol type annotation
- Trust certifications and content flags
- Performance metrics from Observer
- W3C VC envelope for verification
The mapping preserves A2A's skill structure — including per-skill input/output modes — while adding the trust and performance layers that A2A doesn't define. When an A2A agent is imported via the Switchboard, it gains discoverability through NANDA's federated index without any changes to the agent itself.
Bridging MCP Descriptors
Anthropic's MCP takes a fundamentally different approach to agent description. Where A2A focuses on agent-to-agent communication, MCP describes tools — functions with typed input schemas that AI models can call. Our MCP adapter translates these tool definitions into NANDA skills.
The adapter probes common MCP endpoints and extracts the server descriptor — name, version, transport type, tool definitions, and authentication requirements. Each MCP tool becomes a NANDA skill:
MCP Tool → NANDA Skill
// MCP tool definition
{ name: "search_docs", description: "Search documentation", inputSchema: {...} }
// Becomes NANDA skill
{ id: "search_docs", name: "search_docs", description: "Search documentation" }The reverse mapping — translateFromNanda() — converts AgentFacts back to an MCP
descriptor, enabling NANDA-registered agents to be consumed by any MCP client. The transport
defaults to streamable-http (the MCP standard), and authentication is set to bearer for agents that require API keys.
AGNTCY & OASF Interop
Cisco's AGNTCY initiative defines the Open Agent Schema Framework (OASF) — a structured format for describing agent capabilities with a rich skill taxonomy. Our OASF interop layer provides bidirectional record conversion between OASF and NANDA AgentFacts.
The toOASFRecord() function converts an AgentAddr into an OASF-compatible
record, mapping NANDA fields to OASF's locators, skills, and annotations structure. The fromOASFRecord() function does the reverse
— importing OASF agents into the NANDA index. Trust certifications and reputation scores are preserved
as OASF annotations, ensuring no trust data is lost in translation.
This interop work was informed by the Evolution of AI Agent Registry Solutions paper, which provides a comparative analysis of NANDA, A2A, MCP, AGNTCY, and Microsoft Entra registry approaches.
Universal Agent Discovery
The Switchboard also includes a protocol auto-detection service. When a new
agent registers with just a URL, the Switchboard probes well-known paths — /.well-known/agent-card.json for A2A, MCP endpoints for tool discovery — and automatically
selects the right adapter. No manual configuration needed.
The vision is simple: register once, discoverable everywhere. An A2A agent registered in Google's ecosystem becomes findable by MCP clients. An MCP tool server becomes queryable through NANDA's federated index. An AGNTCY agent becomes part of the global Registry Quilt.
Cross-protocol search is already live: GET /search?capability=translation&protocol=any returns agents from all protocols, with results normalized to a unified format regardless of their
source. The protocol field in AgentFacts enables filtering when you need protocol-specific results.
Further Reading
- A2A Protocol Specification — the Agent-to-Agent protocol spec (now under Linux Foundation)
- Model Context Protocol — Anthropic's MCP for tool-server integration
- Cisco Outshift × MIT: Building the Agentic Web — AGNTCY/OASF and the open agentic web vision
- Federation of Agents: A Semantics-Aware Communication Fabric for Large-Scale Agentic AI (Sep 2025) — protocol-level interoperability for multi-agent systems
- Beyond DNS: Unlocking the Internet of AI Agents — the foundational NANDA Index paper