# ADK with Agent2Agent (A2A) Protocol

<div class="language-support-tag">
  <span class="lst-supported">Supported in ADK</span><span class="lst-python">Python</span><span class="lst-go">Go</span><span class="lst-java">Java</span><span class="lst-preview">Experimental</span>
</div>

With Agent Development Kit (ADK), you can build complex multi-agent systems where different agents need to collaborate and interact using [Agent2Agent (A2A) Protocol](https://a2a-protocol.org/)! This section provides a comprehensive guide to building powerful multi-agent systems where agents can communicate and collaborate securely and efficiently.

Navigate through the guides below to learn about ADK's A2A capabilities:

  **[Introduction to A2A](./intro.md)**

  Start here to learn the fundamentals of A2A by building a multi-agent system with a root agent, a local sub-agent, and a remote A2A agent. The following guides cover how do I expose your agent so that other agents can use it via the A2A protocol:

  *   **[A2A Quickstart (Exposing) for Python](./quickstart-exposing.md)**
  *   **[A2A Quickstart (Exposing) for Go](./quickstart-exposing-go.md)**
  *   **[A2A Quickstart (Exposing) for Java](./quickstart-exposing-java.md)**

  These guides show you how to allow your agent to use another, remote agent using A2A protocol:

  *   **[A2A Quickstart (Consuming) for Python](./quickstart-consuming.md)**
      * **[A2A Extension - V2 Implementation](./a2a-extension.md)**
  *   **[A2A Quickstart (Consuming) for Go](./quickstart-consuming-go.md)**
  *   **[A2A Quickstart (Consuming) for Java](./quickstart-consuming-java.md)**


  [**Official Website for Agent2Agent (A2A) Protocol**](https://a2a-protocol.org/)

  The official website for A2A Protocol.
  