A2A Protocol

Google Agent-to-Agent protocol for inter-agent communication

Overview

The A2A (Agent-to-Agent) action type implements Google's Agent-to-Agent protocol, enabling standardized communication between AI agents via HTTP+JSON with SSE streaming support. Agents discover each other via Agent Cards served at well-known URLs and delegate tasks through a defined lifecycle.

Capabilities

  • Agent Cards - Metadata and capability discovery at /.well-known/agent.json
  • Task lifecycle - States: submitted, working, input-needed, completed, canceled, failed
  • SSE streaming - Real-time task progress updates via Server-Sent Events
  • Skill definitions - Declare agent capabilities with input/output modes and tags
  • Push notifications - Optional push-based task updates
  • Multimodal content - Tasks support text, files, and structured data

Example

Basic A2A agent configuration:

proxy:
  http_bind_port: 8080

origins:
  "agent.example.com":
    action:
      type: a2a
      agent_card:
        name: weather-agent
        description: Provides weather forecasts
        capabilities:
          streaming: true
        skills:
          - id: forecast
            name: Weather Forecast
            description: Get weather forecast for a location

Test it:

curl -H "Host: agent.example.com" http://localhost:8080/