Skip to content

A2A Protocol Not Fully Supported in a2a_adk_base_agent Template for Agent Engine deployment #602

@tbolis-at-mulesoft

Description

@tbolis-at-mulesoft

Description

When deploying an agent using Agent Engine and the a2a_adk_base_agent template, the agent currently only works when invoked using a non–A2A-compliant message format.

The agent responds correctly, but it can only be invoked with a simplified payload like:

{
  "message": {
    "role": "ROLE_USER",
    "content": [
      {
        "text": "What's the weather like in New York?"
      }
    ]
  }
}

This is not the expected A2A protocol message structure.

Expected Behavior

The agent should support invocation using the standard A2A message formats.

A2A (HTTP+JSON) format

{
  "transport": "HTTP+JSON",
  "method": "message/send",
  "message": {
    "kind": "message",
    "messageId": "{{uuid}}",
    "metadata": {},
    "parts": [
      {
        "kind": "text",
        "text": "What's the weather like in New York?"
      }
    ],
    "role": "ROLE_USER"
  }
}

JSON-RPC format

{
  "jsonrpc": "2.0",
  "id": "1234",
  "method": "message/send",
  "params": {
    "message": {
      "kind": "message",
      "messageId": "msg-1764513202216-juo6efdu7",
      "metadata": {},
      "parts": [
        {
          "kind": "text",
          "text": "What's the weather like?"
        }
      ],
      "role": "user"
    }
  }
}

Actual Behavior

The agent fails to process A2A-compliant message envelopes.
Only the simplified non-A2A JSON structure works.

Impact

This prevents full compatibility with the A2A protocol and blocks integration with A2A-compliant clients.

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions