Skill registry
Agent infrastructurePublic skills

A2A Agent Orchestration

Multi-agent coordination — discover capabilities, dispatch tasks, stream results, and manage remote agent lifecycles via the A2A protocol.

What this skill teaches

A reusable playbook for a specific kind of work.

An MCP server tells an agent which actions are available. A skill adds the judgment around those actions: how to recognize the job, which sequence to follow, what to avoid, and how to decide that the result is complete.

Orchestrate remote AI agents via A2A protocol — discover agent cards, dispatch tasks, stream results, cancel tasks, and manage push notifications. Use when delegating work to remote agents, checking agent capabilities, coordinating multi-agent workflows, or monitoring task progress.

Architecture

How A2A Agent Orchestration guides an ADK-Rust agent.

The skill stays readable and portable because it contains instructions rather than service credentials or business data. ADK-Rust supplies it to the agent, the agent chooses from its reviewed tool boundary, and the connected MCP server performs the authenticated operation.

01

User request

The agent receives a goal expressed in ordinary language.

02

A2A Agent Orchestration skill

Matches intent, supplies the decision guide, and narrows the tool boundary.

03

ADK-Rust agent

Plans the workflow and streams each meaningful step through the runtime.

04

mcp-a2a

Executes authenticated operations against the system that owns the capability.

05

Verified result

The skill's completion rules shape the evidence returned to the user.

Portable instructions: SKILL.md · Capability boundary: mcp-a2a · Allowed tools: 10

Decision guide

How the agent turns a request into the right action.

These routes come directly from the skill instructions. They help the model recognize intent and select a focused tool or workflow instead of improvising across the entire capability surface.

01

"delegate", "send to agent", "dispatch"?

send_task / send_task_streaming

02

"what agents", "capabilities", "who can"?

list_agents / fetch_agent_card

03

"task status", "progress", "check on"?

get_task / list_tasks

04

"cancel", "stop task"?

cancel_task

05

"subscribe", "notifications"?

subscribe_events / manage_push_notifications

Proven workflows

Repeatable sequences for useful outcomes.

A workflow joins several tool calls into a task the user actually recognizes. The skill explains the sequence and the intended result while ADK-Rust streams the agent's progress through the shared runtime.

013 calls

Discover & Dispatch

Find agent → verify → send task

021 calls

Stream Results

Real-time partial outputs

031-2 calls

Monitor

Track task to completion

041 calls

Cancel

Abort stuck tasks

Tool boundary

The skill may use 10 documented tools.

This allowlist is declared by the skill. It keeps the agent focused on the actions needed for this job while mcp-a2a retains responsibility for authentication, validation, and the connected system.

fetch_agent_card
validate_agent_card
list_agents
send_task
send_task_streaming
get_task
list_tasks
cancel_task
subscribe_events
manage_push_notifications

Working rules

What the agent should do.

  • Validate agent card before dispatching sensitive data
  • Set explicit timeouts on all tasks
  • Track every task to completion (don't fire-and-forget)
  • Use streaming for long-running tasks (better UX)

Operating boundaries

What the agent should avoid.

  • Don't send sensitive data to unvalidated agents
  • Don't leave tasks running indefinitely without timeout
  • Don't dispatch without checking agent is available

Install and connect

Add the skill beside the capability it expects.

Install the repository where your ADK-Rust skill loader can discover it, connect mcp-a2a, and confirm the declared tools are available before asking the agent to use the workflow.

Install the skill
git clone https://github.com/zavora-ai/skill-a2a-agent-orchestration.git \
  ~/.skills/skills/a2a-agent-orchestration
ADK-Rust loading shape
let skills = SkillLoader::from_dir("~/.skills/skills").await?;
let skill = skills.load("a2a-agent-orchestration").await?;

let agent = LlmAgentBuilder::new("agent")
    .instruction(skill.instructions())
    .tools(skill.allowed_tools(toolset)?)
    .build()?;

The repository's compatibility statement: Requires mcp-a2a server connected.

Official documentation

Read the complete skill package.

The repository remains authoritative for its exact instructions, examples, helper scripts, assets, MCP requirements, license, and later updates.

Source record

Repository metadata for this skill entry.

View public repository ↗
License
Apache-2.0
Allowed tools
10
References
3
Revision
af1f68ba5644
Updated
May 31, 2026