Expand description
a2a_call tool — invoke a remote A2A (Agent2Agent v1.0) agent.
A2A is an open protocol (Linux Foundation / originally Google) that lets agents built by different vendors delegate tasks to each other via HTTP+JSON.
§Protocol overview
- Client sends
POST {base_url}/message:sendwith aSendMessageRequest. - Server returns either a direct
Message(synchronous) or aTask(async). - If a
Taskis returned, the client pollsGET {base_url}/tasks/{id}until the task reaches a terminal state (COMPLETED,FAILED, etc.). - Artifacts from the completed task contain the final output.
Structs§
- A2aCall
Tool - Tool that calls a remote A2A v1.0 agent and returns its text output.
- A2aCard
Tool - Tool that fetches and summarises a remote A2A Agent Card
(
GET /.well-known/agent.json). - A2aTask
Check Tool - Tool that checks the current state and artifacts of an A2A task.
- Agent
Authentication - Authentication scheme described in the Agent Card.
- Agent
Capabilities - Capability flags from the A2A Agent Card.
- Agent
Card - Subset of the A2A v1.0 Agent Card returned by
GET /.well-known/agent.json. - Agent
Skill - One skill entry in the Agent Card.
- Artifact
- An artifact produced by the remote agent.
- Message
Response - A direct message response (no task tracking needed).
- Part
- A text, file, or data part inside a Message or Artifact.
- Task
- A task returned by
POST /message:sendorGET /tasks/{id}. - Task
Status
Enums§
- Send
Message Response - Top-level response from
POST /message:send. - Task
State - Task lifecycle state values from the A2A v1.0 spec.