The proto
service A2A {
rpc SendTask(TaskRequest) returns (TaskResponse);
rpc SubscribeTask(TaskRequest) returns (stream TaskDelta);
rpc GetTask(GetTaskRequest) returns (Task);
rpc CancelTask(CancelRequest) returns (Task);
}Advertisement
Streaming is native
gRPC's server-streaming maps 1:1 to A2A's sendSubscribe. More efficient than SSE, especially for high-frequency updates.
Advertisement
Binary encoding wins bandwidth
Protobuf is 3-10x smaller than JSON. For high-QPS + bandwidth-constrained deployments, meaningful savings.