Capabilities in Agent Card

"capabilities": {
  "streaming": true,
  "pushNotifications": false,
  "stateHistory": true,
  "extensions": ["secure-passport", "traceability"]
}
Advertisement

Client checks before calling

Client reads the card, decides which method to call. Falls back gracefully — no streaming → use tasks/send.

Advertisement

Runtime negotiation

Client can send Accept: text/event-stream with tasks/sendSubscribe. Server that doesn't support returns 405; client falls back.