Setup
Endpoints
JSON-RPC methods (v1.0)
Both the PascalCase names and the spec slug aliases are accepted on every method, so you can call whichever your client library prefers.
Push notifications
Register an HTTPS webhook against a task; the server POSTs the streaming events (status + artifact updates) as they happen. Useful when the client can’t hold an SSE connection open for the full task lifetime.PushNotificationDispatcher SSRF-guards every URL: HTTPS
only, no localhost, no loopback / link-local / RFC1918 hosts. Pass
allow_insecure_webhooks=True (or your own dispatcher) to relax this
for development.
Task store extension
A2AServer stores tasks in an InMemoryTaskStore by default
(LRU-bounded at 10K entries). Swap in a persistent backend by
implementing the TaskStore protocol:
Spec compliance matrix
Example requests
- Discover
- Send (blocking)
- Stream (SSE)
A2A Client (A2AAgent)
UseA2AAgent to call a remote A2A server from within your agent tree:
v1.0 Protocol Details
A2A v1.0 uses:- PascalCase JSON-RPC method names (
SendMessage, notmessage/send) - Lowercase role values (
user,agent) - Unified Part type with oneof content fields (
text,raw,url,data) plusmediaType supportedInterfaceson AgentCard (replaces top-levelurl)