Enterprise A2A Design Patterns: A Comprehensive Guide to Production-Grade Agent-to-Agent Architectures
Enterprise A2A Design Patterns: A Comprehensive Guide to Production-Grade Agent-to-Agent Architectures
Introduction
The Agent2Agent (A2A) Protocol has rapidly evolved from an experimental standard into enterprise-critical infrastructure. Reaching v1.0 in 2026 and governed under the Linux Foundation, A2A defines how independent AI agents discover each other, delegate tasks, and exchange data securely across different platforms.[reference:0] Today, A2A is supported by Google, Microsoft, Salesforce, ServiceNow, and others, with production deployments powering multi-agent workflows across customer support, software development, business intelligence, and supply chain management.[reference:1] Yet as organizations move from prototypes to production, the real challenge emerges: designing robust, scalable architectures that leverage A2A's capabilities while addressing enterprise requirements for security, governance, and observability. This article provides a comprehensive guide to enterprise A2A design patterns, covering architectural blueprints, deployment strategies, security models, and integration patterns for production-grade multi-agent systems.
Understanding A2A's Role in Enterprise Architectures
A2A vs. MCP: Complementary Protocols for Different Problems
A common point of confusion is the relationship between A2A and the Model Context Protocol (MCP). The two protocols solve different integration problems: A2A facilitates collaboration between autonomous agents over a client-server protocol with fluid roles—any agent can act as the client or the server depending on the interaction. It defines how one reasoning system delegates a complex, multi-step task to another autonomous system, including negotiation, task state tracking, and long-running execution with streaming or webhook updates.[reference:2] MCP defines a client-to-tool model where an AI application connects to data sources, tools, and workflows. MCP isn't designed for negotiating tasks with another autonomous entity; it's designed for invoking tools.[reference:3]
In production enterprise systems, agents frequently implement both protocols at once. A scalable compound AI application relies on A2A for high-level orchestration and MCP for concrete tool execution.[reference:4] As one industry observer puts it: "An enterprise agent uses MCP to do its job and A2A to work with agents it did not build. The mental model that holds up: MCP is how an agent uses its hands, and A2A is how two agents shake them."[reference:5]
When to Use A2A: The Three Communication Problems
Agent communication encompasses three distinct problems, each requiring a different solution.[reference:6] Tool access occurs when a model needs to use a capability it lacks, like a SQL query or memory write. The Model Context Protocol (MCP) addresses this need.[reference:7] Peer coordination happens when one agent assigns work to another—this isn't just a function call; it's a task with its own state and lifecycle. The Agent-to-Agent protocol (A2A) supports this, solving problems that the tool-call model can't handle well.[reference:8] System integration involves agents interacting with your broader infrastructure—databases, queues, services, scheduled jobs, and audit pipelines.[reference:9]
A2A shines when domain-specific expertise and distributed coordination are essential.[reference:10] Use A2A when agents need to negotiate, collaborate, or share varied types of information across organizational and platform boundaries.
Core Enterprise A2A Concepts
Agent Cards: Discovery and Capability Description
Agent Cards are the foundation of A2A's discovery mechanism. An Agent Card is a JSON discovery document published at a well-known URL path—typically /.well-known/agent.json—that describes the agent's name, purpose, capabilities, skills, communication endpoint, and authentication requirements.[reference:11] When an orchestrator connects to an A2A-enabled agent, it automatically retrieves the Agent Card to discover the agent's identity and capabilities.
Discovery in A2A is layered. The spec defines three strategies: well-known URI (best for public agents), curated registry (best for enterprise marketplaces), and direct configuration (fine for tightly-coupled internal systems).[reference:12] Most enterprises end up running an internal registry or developer portal to catalog agent capabilities.
Tasks: The Unit of Work
A Task is the unit of work in A2A. When an orchestrator delegates to an A2A agent, it sends a task containing the user request and associated context. The external agent processes the task independently using its own tools and reasoning. Tasks support both synchronous and asynchronous execution modes, with streaming progress updates via Server-Sent Events (SSE) or webhooks for push notifications.[reference:13]
v1.0 removed the v0.x kind discriminator field; event type is now determined by the JSON member name (statusUpdate vs artifactUpdate). The stream closes when the task hits a terminal state.[reference:14] If a client misses an artifact update, it can call GetTask to fetch the completed Task with its full history and artifacts.[reference:15]
Context ID: Session Continuity
The Context ID maintains session continuity across agent boundaries. When a user's session spans multiple turns, the Context ID associates each delegated task with the same ongoing conversation. This allows the A2A agent to reference earlier turns in the session when forming its response, supporting more natural multi-turn interactions.[reference:16]
Enterprise Architecture Patterns
Pattern 1: Cross-Language Agent Collaboration
Production AI systems face a fundamental reality: different teams use different languages and frameworks. The data science team writes in Python; the security engineering team builds in Go. Neither is willing to rewrite their service.[reference:17] A2A solves this by enabling agents built in any language or framework to interoperate. Think of it as the HTTP of the agent world: a shared contract that lets any two agents communicate regardless of how they're built internally.[reference:18]
Google's Agent Development Kit (ADK) provides a RemoteA2aAgent abstraction that turns any remote A2A-compliant service into a local sub-agent with a few lines of code.[reference:19] A Python agent can seamlessly collaborate with a Go agent, a Java agent, or an agent built in any other language, as long as both expose A2A-compliant interfaces.
Pattern 2: Decomposing Monolithic Agents into Specialized Micro-Agents
Most AI projects start the same way: one big agent, one massive prompt, every tool crammed into a single context window. It works for demos. It falls apart in production for three key reasons: context degradation (as tools multiply beyond 10-15, the model starts missing instructions), blast radius (one unhandled exception in a minor feature crashes the entire agent), and untestability (you can't cleanly unit test a system with 50 entangled responsibilities).[reference:20]
The fix mirrors the pattern that transformed backend engineering a decade ago: decompose the monolith into specialized microservices. Each agent gets one job, a focused prompt, and a minimal toolset.[reference:21]
Pattern 3: Orchestrator with Specialized Domain Agents
In this pattern, an orchestrator agent acts as the "front door" for user requests. When an employee asks a question, the orchestrator figures out what to do. It doesn't just route requests—it has its own built-in capabilities for simple tasks. For domain-specific tasks like leave balances or payroll, it calls in the specialists.[reference:22] The orchestrator agent uses A2A protocol to communicate with specialized agents, each owning a specific domain (HR, finance, IT, etc.).[reference:23]
Oracle's implementation of this pattern includes four specialized agents: an Orchestrator Agent (smart router), an HCM Agent (HR command center running three sub-agents), an MCP Integration Agent (bridge to tools), and a Framework-Based Agent (wildcard for any framework).[reference:24]
Pattern 4: Supervisor-Worker Hierarchy
Implement supervisor-worker patterns where a routing agent delegates to specialized domain experts, maintaining context across the agent hierarchy.[reference:25] This pattern is particularly effective for complex, multi-domain tasks where different agents possess different expertise. The supervisor maintains the overall task context while workers execute specific subtasks independently. The supervisor can also reconcile conflicting outputs from different workers.[reference:26]
Pattern 5: A2A Mesh with Shared Memory
In an A2A mesh, peer agents coordinate via task envelopes, with a shared memory layer providing consistent, audit-friendly state.[reference:27] The Oracle AI Database remains consistent across all patterns—vector-indexed, transactional, and audit-friendly. This consistency allows the protocol above to evolve while keeping the system of record intact.[reference:28]
This pattern addresses the challenge of stateless agentic AI: both MCP and A2A are stateless by design. Once an agent sends or receives a message, the interaction is gone. There is no durable memory, no record, no lineage.[reference:29] A shared memory layer provides the durable context that stateless protocols lack.
Pattern 6: Event-Driven Agent Orchestration
Applying event-driven patterns to modern agent design means that MCP calls, A2A messages, and generated side effects are all choreographed as events in Kafka logs, creating a record that can be inspected for troubleshooting, audited against policies, or replayed as service improvements pass quality control.[reference:30] This pattern provides durability, auditability, and replayability for agent interactions.
Enterprise Deployment Patterns
Deployment Pattern 1: Fully Managed A2A on Vertex AI Agent Engine
Google Cloud's Vertex AI Agent Engine provides a fully-managed, serverless platform for deploying A2A-compliant agents. Previously, using A2A with Agent Engine often meant deploying an A2A client on the platform while the agent itself had to be hosted on a separate runtime like Cloud Run. The new integration eliminates this complexity, allowing you to directly deploy the entire A2A agent as a single Agent class.[reference:31]
This pattern streamlines the deployment process, enabling you to package your agent and scale it on a secure, enterprise-grade endpoint with only a few lines of code. By adopting A2A on Agent Engine, you're creating a service with a clean, well-defined, and reusable API.[reference:32]
Deployment Pattern 2: A2A with API Gateway
Managing long-running streams and webhook connections is operationally non-trivial. Platform teams frequently rely on an API gateway to handle connection persistence, timeout management, OAuth validation, and observability for these asynchronous AI workloads.[reference:33] An API management platform gives you a central policy enforcement point that terminates mTLS, validates OAuth tokens, propagates trace context, and logs every call, before any malicious request ever reaches the agent server.[reference:34]
Deployment Pattern 3: Agent Gateway for Multi-Agent Collaboration
SAP's architecture uses an Agent Gateway with the A2A protocol for multi-agent collaboration scenarios where an external client or third-party agent needs to delegate tasks to, or receive results from, SAP-managed agents. It enables secure, standardized communication and task delegation across agents from different vendors and systems.[reference:35]
For governed, enterprise-grade exposure of APIs as tools, SAP combines this with an MCP Gateway that covers the full lifecycle from creating MCP servers out of existing APIs to securing, monitoring, and governing agent access at scale.[reference:36]
Deployment Pattern 4: Agentic Overlays for Legacy Systems
Agentic overlays are thin wrapper layers that transform traditional REST-based services into agents capable of participating in A2A interactions. They also expose REST APIs as tools compatible with the Model Context Protocol (MCP). Together, they let enterprises add A2A capabilities to existing REST services without rebuilding them.[reference:37] This pattern enables incremental adoption of agentic architectures.
Security and Governance Patterns
Transport Security: HTTPS and TLS
All A2A communication in production environments MUST occur over HTTPS. Implementations SHOULD use modern TLS versions (TLS 1.2 or higher) with strong, industry-standard cipher suites.[reference:38] A2A Clients SHOULD verify the A2A Server's identity by validating its TLS certificate against trusted certificate authorities.[reference:39]
Authentication Patterns
A2A delegates authentication to standard web mechanisms, primarily relying on HTTP headers. Authentication requirements are advertised by the A2A Server in its Agent Card.[reference:40] Key principles include: no in-payload identity (A2A protocol payloads do not carry user or client identity information; identity is established at the transport/HTTP layer), out-of-band credential acquisition (the A2A Client is responsible for obtaining credentials through processes external to the A2A protocol), and server-side validation (the A2A Server MUST authenticate every incoming request).[reference:41]
A2A supports standard OpenAPI security schemes: OAuth 2.0 (application-level authorization with scope claims), OpenID Connect (identity assertion), API key (simple machine-to-machine authentication), and Mutual TLS (transport encryption plus bidirectional identity).[reference:42]
Defense-in-Depth: Combining Security Schemes
Production deployments combine mTLS with OAuth2 to create a zero-trust posture. A malicious actor who intercepts an OAuth bearer token still can't replay it from a different machine, because the TLS handshake will fail without the legitimate client certificate.[reference:43] For higher assurance without the operational overhead of full mTLS, the spec's recommended alternatives are sender-constrained tokens: RFC 8705 mTLS-bound tokens or RFC 9449 DPoP. Either makes a stolen token useless without the matching key.[reference:44]
Authorization Downscoping in Delegation Chains
Authorization creep occurs when a highly privileged orchestrator delegates a sub-task to a less-privileged agent and passes along a broad bearer token. The pattern that works is OAuth 2.0 Token Exchange (RFC 8693): The orchestrator trades its user-level token for a tightly-scoped, short-lived token meant for the specific downstream skill, presenting that narrow token to the delegated agent rather than the original.[reference:45] Combine with RFC 9396 Rich Authorization Requests for transaction-bound tokens (e.g., "this token authorizes booking exactly this flight for exactly this employee").[reference:46]
Observability: Distributed Tracing
A2A's reliance on HTTP allows for straightforward integration with standard enterprise tracing, logging, and monitoring tools.[reference:47] A2A Clients and Servers SHOULD participate in distributed tracing systems (e.g., OpenTelemetry, Jaeger, Zipkin).[reference:48] The enterprise-readiness guidance recommends OpenTelemetry with W3C Trace Context headers (traceparent/tracestate) on every A2A call so a single user request can be traced across the entire agent chain.[reference:49]
Governance: Curated Registries and Policy Enforcement
Multi-agent systems are moving from isolated experiments to enterprise-scale operations with federated discovery. A curated registry holds vetted Agent Cards and lets clients query by skill, tag, or provider.[reference:50] Enforce policy and auditing at the control-plane layer with frameworks to keep agents compliant and observable.[reference:51] Use least-privileged scope when calling tools, and validate typed payloads between steps with defined schemas.[reference:52]
Integration Patterns with MCP
Hybrid Architecture: A2A for Orchestration, MCP for Tool Execution
In production enterprise systems, agents frequently implement both protocols at once. Consider a corporate onboarding workflow: an A2A "HR Orchestrator" agent delegates tasks to specialized agents, each of which uses MCP to access their respective tools and data sources.[reference:53] This division of labor—A2A for high-level orchestration, MCP for concrete tool execution—is the dominant enterprise pattern.
SAP's architecture illustrates this hybrid approach: Joule acts as an A2A client to communicate with external agents, while agents themselves use MCP to discover and consume tools from MCP servers.[reference:54]
MCP-Fronted Agents
Use Linux Foundation Agent2Agent (A2A) protocol for cross-platform agent integration with published contracts, and MCP-fronted agents as appropriate.[reference:55] This pattern means exposing an agent's capabilities both as A2A skills (for agent-to-agent coordination) and as MCP tools (for direct tool access by LLMs).
Protocol Adapters for Legacy Systems
Use protocol adapters for legacy systems to bridge REST APIs and traditional services into the A2A ecosystem.[reference:56] This pattern enables incremental adoption without requiring a complete rewrite of existing infrastructure.
Best Practices for Enterprise A2A Implementations
Architectural Priorities
- Prefer platform-native orchestration for internal flows where possible, and use MCP for secure, authenticated access to tools and data[reference:57]
- Use A2A for cross-platform agent-to-agent messaging. Design for capability discovery and task contracts. Require agents to publish Agent Cards and use A2A's task and artifact model[reference:58]
- Design for parallelism, limit inter-agent context to what is strictly necessary, and use short-term memory to avoid redundant work[reference:59]
- Include users in the workflow and communicate when agents collaborate. Require human approvals for high-impact cross-agent actions[reference:60]
- Reconcile conflicting outputs from different agents[reference:61]
Security and Governance
- Standardize security and management of connected agents by using published SDKs with native MCP and A2A support[reference:62]
- Implement least privilege when calling tools and accessing data[reference:63]
- Enforce policy and auditing at the control-plane layer[reference:64]
- Validate typed payloads between steps with defined schemas[reference:65]
- Design for descriptive errors so agents can self-correct based on error messages[reference:66]
Observability
- Instrument every cross-agent call with distributed tracing[reference:67]
- Log every orchestration and agent call with metadata: timestamp, caller identity, input hash, output hash
- Ship logs to centralized observability platforms
- Ensure audit trails can answer "which agent did what, and with what authority"
Production Pitfalls to Avoid
Per-Skill Body Schema Ambiguity
Each AgentSkill declares accepted media types via inputModes/outputModes, but the spec doesn't standardize per-skill JSON Schema for the body content within a Part. So a client agent can know that a skill accepts application/json, but not exactly what JSON object structure the receiver expects.[reference:68] Two practical mitigations: embed an OpenAPI fragment or JSON Schema inside the skill's description, or generate the schema from your server-side types and publish it in the Agent Card.[reference:69]
Stateless Protocol Limitations
Both MCP and A2A are stateless by design. Once an agent sends or receives a message, the interaction is gone. There is no durable memory, no record, no lineage.[reference:70] This is fine for experiments but creates challenges for production workflows: troubleshooting, testing new agent versions, and auditing decision-making all require durable records. Address this by implementing an event-sourced logging layer that captures all agent interactions.[reference:71]
Discovery Beyond Well-Known URI
Discovery in A2A is layered. The spec defines well-known URI (best for public agents), curated registry (best for enterprise marketplaces), and direct configuration (fine for tightly-coupled internal systems).[reference:72] The spec doesn't yet standardize a registry API, so this remains a build-it-yourself area. Most enterprises end up running an internal registry or developer portal to catalog agent capabilities.[reference:73]
Real-World Enterprise Deployments
Box: Open AI Ecosystem
Box is championing an open AI ecosystem by embracing Google Cloud's Agent2Agent protocol, enabling all Box AI Agents to securely collaborate with diverse external agents from dozens of partners.[reference:74]
Swisscom: Cross-Departmental Agent Coordination
Swisscom addresses the challenge of enterprise-wide scaling of AI agents—managing siloed agentic solutions while facilitating cross-departmental coordination—through MCP servers and the A2A protocol for seamless agent communication across domains.[reference:75]
Vodafone and TM Forum: Inter-Organization Agent Collaboration
Vodafone, Google Cloud, and TM Forum demonstrated inter-organization AI agent collaboration using A2A. "As an enterprise architect, if you ask our agent a question and it involves some standards, it can go and get advice from the TM Forum by talking to the [AIVA] agent."[reference:76]
Oracle: Dynamic Multi-Agent Enterprise Platform
Oracle built a platform with four specialized agents all talking to each other via A2A protocol. With A2A and MCP, they can build agent ecosystems where new capabilities simply plug in, no rewiring required.[reference:77][reference:78]
Future Outlook
Multi-Agent Economies
Research is exploring enhancements to the A2A protocol, including ledger-anchored identities and micropayments for AI agents.[reference:79] These developments point toward a future where agents not only collaborate but also transact in decentralized agent economies.
Registry Standardization
The spec doesn't yet standardize a registry API for agent discovery. Future versions are expected to address this gap, enabling standardized enterprise marketplaces for agent capabilities.[reference:80]
Enhanced Authorization
Future work on authorization downscoping in delegation chains will likely build on OAuth 2.0 Token Exchange (RFC 8693) and Rich Authorization Requests (RFC 9396) to provide standardized patterns for credential delegation.[reference:81]
Conclusion
Enterprise A2A design patterns provide a framework for building production-grade multi-agent systems that are secure, scalable, and interoperable. The patterns—cross-language collaboration, decomposing monolithic agents, orchestrator with specialists, supervisor-worker hierarchies, A2A meshes with shared memory, and event-driven orchestration—offer proven approaches for different enterprise scenarios. Deployment patterns ranging from fully managed platforms like Vertex AI Agent Engine to API gateway architectures and agentic overlays for legacy systems provide flexibility for different organizational contexts. Security and governance patterns—HTTPS/TLS, OAuth2 with token exchange, distributed tracing, and curated registries—address enterprise requirements for confidentiality, integrity, and accountability. As A2A continues to evolve, these patterns will mature alongside the protocol, enabling increasingly sophisticated multi-agent systems that span organizational boundaries and power the next generation of enterprise AI.
Related Concepts
- Agent2Agent (A2A) Protocol Explained
- Multi-Vendor Agent Interoperability
- Model Context Protocol (MCP) Explained
- MCP Architecture Patterns
- Secure Agent Communication
- Agent Orchestration and Coordination
- Agent Discovery and Capability Description
- Enterprise AI Agent Deployments
- Agent Observability and Governance
- Cross-Framework Agent Interoperability
References
- Tyk. A2A protocol: Architecture and technical specification. Tyk Learning Center. 2026.
- Shubham Saboo & Eric Dong. Build Cross-Language Multi-Agent Team with Google's Agent Development Kit and A2A. Google Developers Blog. June 2026.
- Oracle. Building a Dynamic Multi-Agent Enterprise Platform. Oracle AI and Data Science Blog. April 2026.
- Microsoft. Multi-agent patterns. Microsoft Learn. 2026.
- A2A Protocol. Enterprise-Ready Features for A2A Agents. a2a-protocol.org. 2026.
- Google Cloud. Building Bridges: Deploy agents with A2A on Vertex AI Agent Engine. Google Developer Forums. 2025.
- SAP Architecture Center. A2A and MCP for Interoperability. SAP. 2026.
- Oracle. The Agent Communication Matrix: When MCP, A2A, and Plain REST Each Win. Oracle Developers Blog. June 2026.
- InfoWorld. Beyond AI protocols: Preparing for MCP and A2A in production. September 2025.
- Beam. Agent2Agent vs MCP: The 2 Protocols Your 2026 AI Agent Stack Actually Runs On. June 2026.
- Google Cloud. Box AI Agents with Google's Agent-2-Agent Protocol. Google Cloud Blog. June 2025.
- TM Forum. Vodafone, Google Cloud, TM Forum demo inter-organization AI agent collaboration. July 2025.
- HKU SPACE AI Hub. How Swisscom builds enterprise agentic AI for customer support and sales using Amazon Bedrock AgentCore. December 2025.
- arXiv. Towards Multi-Agent Economies: Enhancing the A2A Protocol with Ledger-Anchored Identities and x402 Micropayments for AI Agents. February 2026.

Comments
Post a Comment