An open protocol enabling communication and interoperability between opaque agentic applications.
One of the biggest challenges in enterprise AI adoption is getting agents built on different frameworks and vendors to work together. That’s why we created an open Agent2Agent (A2A) protocol, a collaborative way to help agents across different ecosystems communicate with each other. As the first hyperscaler to drive this initiative for the industry, we believe this protocol will be critical to support multi-agent communication by giving your agents a common language – irrespective of the framework or vendor they are built on. With A2A, agents can show each other their capabilities and negotiate how they will interact with users (via text, forms, or bidirectional audio/video) – all while working securely together.
- 📚 Read the technical documentation to understand the capabilities
- 📝 Review the json specification of the protocol structures
- 🎬 Use our samples to see A2A in action
- Sample A2A Client/Server (Python, JS)
- Multi-Agent Web App
- CLI (Python, JS)
- 🤖 Use our sample agents to see how to bring A2A to agent frameworks
- 📑 Review key topics to understand protocol details
We welcome contributions! Please see our contributing guide to get started.
Have questions? Join the discussion in our community forum
Want to provide protocol improvement feedback google form
- Agent Discovery
- Agent Card contains an authorization scheme and, optionally, credentials.
- Agent collaboration
- Query unanticipated skill: Determine whether we should support a QuerySkill() method to interrogate whether an agent supports an ‘unanticipated’ skill.
- Agent UX re-negotiation within a Task
- During a conversation, the agent dynamically adds audio or video.
- Extending support to client methods, along with improvements to streaming and push notifications.
- Include additional examples of agents
A2A Protocol is an open source project run by Google LLC, under License and open to contributions from the entire community.