a2aproject/a2a-java
Official Java SDK for the Agent2Agent (A2A) Protocol
What it solves
This library provides a standardized way for Java-based AI agents to communicate with each other. It implements the Agent2Agent (A2A) Protocol, allowing developers to build agentic applications that can interact regardless of the underlying transport layer or the specific agent implementation.
How it works
It is a multi-module Maven library that provides both client and server support. It enables agent communication over three primary transport mechanisms: JSON-RPC, gRPC, and REST (HTTP+JSON). The SDK allows a Java application to be run as an A2A server or to act as a client that can communicate with any other A2A-compliant agent.
Who it’s for
Java developers building agentic AI applications who need a standardized protocol for inter-agent communication and interoperability.
Highlights
- Multi-transport support: Supports JSON-RPC, gRPC, and REST for flexible communication.
- Reference implementations: Includes reference servers for JSON-RPC.
- Enterprise Java integration: Community integrations available for Quarkus and Jakarta EE.
- Extensible extras: Optional add-ons for OpenTelemetry, Kafka-based queue management, and Android HTTP clients.
Related
- Project
- Project
- Project
- Project
- Project