A2A Java SDK

Implement the Agent2Agent Protocol in Java

A multi-module Maven library providing client and server support for A2A agent communication over JSON-RPC, gRPC, and REST transports.

A2A Server

Run your agentic Java application as an A2A server. Implement AgentExecutor and let the SDK handle protocol, routing, and streaming.

A2A Client

Communicate with any A2A-compliant agent. Supports streaming, push notifications, and task lifecycle management out of the box.

Multiple Transports

JSON-RPC 2.0, gRPC, and HTTP+JSON/REST transports — pick what fits your stack, or support them all simultaneously.

Protocol Compatibility

Serve v1.0 and v0.3 clients side-by-side with zero changes to your AgentExecutor. The compat layer handles conversion automatically.

Quick Install

Add the A2A Java SDK reference server for JSON-RPC to your Maven project:

<dependency>
    <groupId>org.a2aproject.sdk</groupId>
    <artifactId>a2a-java-sdk-reference-jsonrpc</artifactId>
    <version>${org.a2aproject.sdk.version}</version>
</dependency>

See the Getting Started guide, or jump directly to the Server Guide and Client Guide for full setup instructions.

Latest Announcement

A2A Java SDK 1.3.0.Final Released

I am happy to announce the release of A2A Java SDK 1.3.0.Final . This release introduces multi-tenancy support, switches the authorization model to fail-closed by default, delivers a wave of security hardening, and improves protocol compliance across all transports. NOTE This release contains breaking changes . See the migration section for details. What's New Multi-Tenancy Support The headline feature of 1.3.0 is multi-tenancy ( #1084 ), which lets a...

7 minute(s) read

Compatibility

SDK Version A2A Protocol Java
1.0.0.Final 1.0, 0.3 17+
1.1.0.Final 1.0, 0.3 17+
1.2.0.Final 1.0, 0.3 17+
1.3.0.Final 1.0, 0.3 17+
dev (unreleased) 1.0, 0.3 17+