A2A agent tools
RoadmapThis capability is on the Roadmap; the API shown here is the planned design.
Agent Broker is an A2A server, and A2A-compliant agents in the registry can be
consumed directly from Python. AgentHandle.as_tool() wraps a remote A2A agent
as a callable tool in your framework — the same “resolve, then bind” shape as
MCP tools, for a remote agent instead of a remote tool server.
handle = await donkey.registry.resolve_agent("com.acme/claims-triage-agent/1.0.0")
tool = handle.as_tool() # callable in your framework's native tool shape
agent = create_react_agent(donkey.langgraph.chat_model("gpt-4o"), [tool])This lets a Python agent delegate to an Agent Broker agent without you
learning the A2A protocol. Under the hood, as_tool() uses the official
a2a-sdk for protocol handling.
Install
A2A support ships behind its own extra, so installs that only need MCP tools carry no extra dependency:
pip install "donkey-kit[a2a]"Where this fits
AgentHandlecomes fromExchangeRegistry.resolve_agent()— the same registry surface that resolves MCP servers intoMcpServerHandles. See Discovery, search & filter.as_tool()returns a framework-native callable, following the same conventions as Framework binding.- To make your agent callable by others over A2A, see A2A agents.
Last updated on