Goal
Add a generic a2a-client service to mcp2cli for standard Agent-to-Agent JSON-RPC/SSE interactions.
Context
The Herdr/MonkeyProof architecture should talk to remote workers through A2A where possible. MonkeyProof has a facade, Bilby has an A2A server, and King agents expose A2A surfaces. A generic client avoids one-off curl commands and makes agent-to-agent work repeatable.
Proposed Tools
get_agent_card
send_message
send_streaming_message
send_followup
cancel_task
- optional
list_known_agents if backed by config/discovery
Requirements
- Include
A2A-Version: 1.0 automatically unless overridden.
- Support endpoint URL, message text, task id, metadata, and timeout.
- Preserve structured task/artifact/status output.
- Support streaming output when practical; if not, provide a clear polling/read fallback.
- Keep endpoint credentials in config/secret stores, not prompts or committed files.
- Include examples for:
- MonkeyProof A2A on CT 120;
- Bilby A2A;
- King agents A2A where applicable.
Acceptance Criteria
mcp2cli a2a-client --help lists the tools.
mcp2cli schema a2a-client.send_message documents parameters.
- Can retrieve an agent card from a configured endpoint.
- Can submit a task and return task status/artifacts.
- Can send a follow-up to an existing task id.
- Can cancel a task where the endpoint supports it.
Goal
Add a generic
a2a-clientservice to mcp2cli for standard Agent-to-Agent JSON-RPC/SSE interactions.Context
The Herdr/MonkeyProof architecture should talk to remote workers through A2A where possible. MonkeyProof has a facade, Bilby has an A2A server, and King agents expose A2A surfaces. A generic client avoids one-off curl commands and makes agent-to-agent work repeatable.
Proposed Tools
get_agent_cardsend_messagesend_streaming_messagesend_followupcancel_tasklist_known_agentsif backed by config/discoveryRequirements
A2A-Version: 1.0automatically unless overridden.Acceptance Criteria
mcp2cli a2a-client --helplists the tools.mcp2cli schema a2a-client.send_messagedocuments parameters.