a2a_message

Sends messages to an A2A (Agent-to-Agent) protocol agent and returns the response.

This processor enables Redpanda Connect pipelines to communicate with A2A protocol agents. Currently only JSON-RPC transport is supported.

The processor sends a message to the agent and polls for task completion. The agent’s response is returned as the processor output.

For more information about the A2A protocol, see https://a2a-protocol.org/latest/specification

  • Common

  • Advanced

processors:
  label: ""
  a2a_message:
    agent_card_url: "" # No default (required)
    prompt: "" # No default (optional)
processors:
  label: ""
  a2a_message:
    agent_card_url: "" # No default (required)
    prompt: "" # No default (optional)
    final_message_only: true

Fields

agent_card_url

URL for the A2A agent card. Can be either a base URL (e.g., https://example.com) or a full path to the agent card (e.g., https://example.com/.well-known/agent.json). If no path is provided, defaults to /.well-known/agent.json. Authentication uses OAuth2 from environment variables.

Type: string

final_message_only

If true, returns only the text from the final agent message (concatenated from all text parts). If false, returns the complete Message or Task object as structured data with full history, artifacts, and metadata.

Example with final_message_only: true (default):

Here is the answer to your question...

Example with final_message_only: false:

{
  "id": "task-123",
  "contextId": "ctx-456",
  "status": {
    "state": "completed"
  },
  "history": [
    {"role": "user", "parts": [{"text": "Your question"}]},
    {"role": "agent", "parts": [{"text": "Here is the answer to your question..."}]}
  ],
  "artifacts": []
}

Type: bool

Default: true

prompt

The user prompt to send to the agent. By default, the processor submits the entire payload as a string.

This field supports interpolation functions.

Type: string