Official Java SDK for the Agent2Agent (A2A) Protocol
490
stars
885
commits
Java
primary language
Sep 9, 2026
updated
A multi-module Maven library providing client and server support for A2A agent communication over JSON-RPC, gRPC, and REST transports.
Full documentation is available at a2aproject.github.io/a2a-java.
Requires Java 17+.
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>
<!-- Use a released version from https://github.com/a2aproject/a2a-java/releases -->
<version>${org.a2aproject.sdk.version}</version>
</dependency>
See the Server Guide for full setup instructions.
mvn clean install
We copy https://github.com/a2aproject/A2A/blob/main/specification/grpc/a2a.proto to the spec-grpc/ project, and adjust the java_package option to be as follows:
option java_package = "org.a2aproject.sdk.grpc";
Then build the spec-grpc module with mvn clean install -Dskip.protobuf.generate=false to regenerate the gRPC classes in the org.a2aproject.sdk.grpc package.
Community contributed integrations with various Java runtimes:
To contribute an integration, see CONTRIBUTING_INTEGRATIONS.md.
See the extras folder for optional add-ons (OpenTelemetry, JPA-backed task store, Kafka-based replicated queue manager, Vert.x and Android HTTP clients).
This project is licensed under the terms of the Apache 2.0 License.
See CONTRIBUTING.md for contribution guidelines.
(top 30 of 56)
Java
99.8%
Official Java SDK for the Agent2Agent (A2A) Protocol
490
stars
885
commits
Java
primary language
Sep 9, 2026
updated
A multi-module Maven library providing client and server support for A2A agent communication over JSON-RPC, gRPC, and REST transports.
Full documentation is available at a2aproject.github.io/a2a-java.
Requires Java 17+.
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>
<!-- Use a released version from https://github.com/a2aproject/a2a-java/releases -->
<version>${org.a2aproject.sdk.version}</version>
</dependency>
See the Server Guide for full setup instructions.
mvn clean install
We copy https://github.com/a2aproject/A2A/blob/main/specification/grpc/a2a.proto to the spec-grpc/ project, and adjust the java_package option to be as follows:
option java_package = "org.a2aproject.sdk.grpc";
Then build the spec-grpc module with mvn clean install -Dskip.protobuf.generate=false to regenerate the gRPC classes in the org.a2aproject.sdk.grpc package.
Community contributed integrations with various Java runtimes:
To contribute an integration, see CONTRIBUTING_INTEGRATIONS.md.
See the extras folder for optional add-ons (OpenTelemetry, JPA-backed task store, Kafka-based replicated queue manager, Vert.x and Android HTTP clients).
This project is licensed under the terms of the Apache 2.0 License.
See CONTRIBUTING.md for contribution guidelines.
(top 30 of 56)
Java
99.8%