A2A: Request
a2a_requestCall a read-only A2A JSON-RPC method directly on a peer and get the raw protobuf JSON reply, for scenarios the typed tools don't cover. Works only with methods listed and the peer's own endpoint.
Instructions
Escape hatch: call an A2A JSON-RPC method directly on a peer and return its raw reply, unshaped. Use this only for something the typed tools do not cover — they shape their responses, and a raw A2A reply is protobuf JSON, so a Part arrives as {"text":"…"} and a state as "TASK_STATE_SUBMITTED". The endpoint always comes from the peer's own agent card, so this cannot be aimed at an arbitrary URL. Writes are DISABLED: only the read-only methods are offered. Set A2A_ALLOW_WRITES=1 to allow the mutating ones.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | The peer's BASE url, e.g. `http://127.0.0.1:41241`. Not the card path: the client appends /.well-known/agent-card.json itself. Get the list from a2a_list_agents. | |
| method | Yes | The A2A v1.0 RPC name, PascalCase — `GetTask`, `ListTasks`, `SendMessage`. NOT the 0.x names (`tasks/get`, `message/send`): v1.0 renamed all of them, and an 0.x name comes back as -32601 method not found. Only the read-only methods are available right now. | |
| params | No | The method's params object, e.g. `{"id": "task-abc"}` for GetTask or `{"pageSize": 10}` for ListTasks. Field names are camelCase (`historyLength`, `pageToken`) because the wire format is protobuf JSON. |