Java Apache-2.0

a2a-java

Official Java SDK for the Agent2Agent (A2A) Protocol

A

a2aproject

Dernière activité 28 sept. 2026
a2aproject/a2a-java

500

étoiles

179

forks

57

issues ouvertes

a2aa2a-clienta2a-serveragent2agentaiai-agentshacktoberfestjava

Ce README est souvent en anglais.

A2A Java SDK

License

A2A Logo

A Java library that helps run agentic applications as A2A servers following the Agent2Agent (A2A) Protocol.

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

Documentation

Full documentation is available at a2aproject.github.io/a2a-java.

Quick Start

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.

Build

mvn clean install

Regeneration of gRPC files

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.

Examples

Server Integrations

Community contributed integrations with various Java runtimes:

  • Quarkus — This project contains the reference implementations for JSON-RPC, gRPC, and HTTP+JSON (REST) transports.
  • Jakarta EE — a2a-jakarta works with any runtime supporting the Jakarta EE Web Profile.

To contribute an integration, see CONTRIBUTING_INTEGRATIONS.md.

Extras

See the extras folder for optional add-ons (OpenTelemetry, JPA-backed task store, Kafka-based replicated queue manager, Vert.x and Android HTTP clients).

License

This project is licensed under the terms of the Apache 2.0 License.

Contributing

See CONTRIBUTING.md for contribution guidelines.

Projets similaires

Official Python SDK for the Agent2Agent (A2A) Protocol

Pythona2aa2a-clienta2a-mcp
Aa2aproject
2,2 k étoiles499

Agent2Agent (A2A) is an open protocol enabling communication and interoperability between opaque agentic applications.

Shella2aa2a-mcpa2a-protocol
Aa2aproject
26 k étoiles2,6 k

Official JavaScript SDK for the Agent2Agent (A2A) Protocol

TypeScript
Aa2aproject
629 étoiles174