The A2A v1 to v0.3 Transcoder policy enables A2A v1.0 JSON-RPC clients, such as Broker v2 and Mule A2A Connector v2, to communicate with A2A v0.3 backend agents without requiring backend upgrades. Apply this policy to A2A v0.3 backend server instances. The policy transcodes protocol messages bidirectionally, enabling organizations to upgrade their clients to A2A v1.0 while continuing to use existing v0.3 backends, including third-party agents.
The policy transforms the following elements between v1.0 and v0.3 formats:
-
Method names: Converts between v1.0 method names (SendMessage, GetTask, SubscribeToTask) and v0.3 method names (message/send, tasks/get, tasks/resubscribe)
-
Message part structure: Converts between v1.0 JSON member names and the v0.3 kind discriminator (text, file, data)
-
Enumerations: Transcodes enum values such as Message.role from ROLE_USER to user and TaskState from TASK_STATE_SUBMITTED to submitted
-
Error formats: Converts between the v1.0 google.rpc.ErrorInfo array format and the v0.3 plain string format
-
Agent cards: Transforms agent card responses from the v0.3 format to the v1.0 format with additionalInterfaces
-
Server-Sent Events (SSE): Transcodes SSE streams for SendStreamingMessage and SubscribeToTask per-event
The policy applies these transformations in both directions: v1.0 to v0.3 for outbound requests and v0.3 to v1.0 for inbound responses.
The following A2A v1.0 methods aren’t supported when transcoding to v0.3:
-
ListTasks: The v0.3 protocol has no JSON-RPC equivalent for this method. Requests are rejected with error code -32601 UNSUPPORTED_METHOD_FOR_V03.
-
Push notification configuration methods: All push notification methods (CreateTaskPushNotificationConfig, GetTaskPushNotificationConfig, ListTaskPushNotificationConfigs, DeleteTaskPushNotificationConfig) are rejected with error code -32003 PUSH_NOTIFICATION_NOT_SUPPORTED.
All other v1.0 methods are supported with full transcoding.
|
|
This policy supports A2A v1.0 JSON-RPC clients only. The HTTP+JSON REST binding isn’t supported.
|