← Blog

· The Ploybot team

A2A agents: let other systems hand work to your agent

With the A2A protocol, a system or another agent sends a task to yours. Ploybot deploys it to your cloud account without turning it into a different agent: same identity, same policy, same budget and the same evidence.

An open robotic hand surrounded by polygons and binary digits

So far we have talked about agents that work with a person in front of them: someone opens Codex or Claude Code and asks it for something. But there is another increasingly common case: the request comes from another system. An incoming ticket, a nightly job, another agent that needs yours to review a deployment.

That is what A2A (agent-to-agent) is for: an open protocol for one agent to send a task to another and follow its status.

A2A in two pieces

The same agent, somewhere else

In Ploybot, an A2A agent is not a different kind of agent. It is the same one you already have in the catalogue, with its identity, capabilities, policy and history. What changes is where it reasons: instead of a person’s laptop, it runs in a runtime inside your cloud account.

The agent’s recipe says which prompt it uses, with which model, which MCP tools it has and how much it may spend. ploybot deploy takes it to your account: AWS Lambda, an ECS Fargate service or Azure Functions. Cloud credentials and the model key are requested at that moment and stay in your account (Secrets Manager or the Function App settings), not in the Ploybot catalogue.

Who can hand it work

The Agent Card is public, because it is discovery. But message/send requires a Bearer token. The deployment generates that token, stores it in your account and shows it to you once. Without it, the runtime answers 401 and spends nothing. And if no token is configured, the runtime simply does not start: leaving it open has to be an explicit decision, not an oversight.

Model spend is not a tool

There is a design detail that matters. If the model itself had to request its budget over MCP, it would either never ask or end up counting itself. That is why the runtime reserves the spend before each model call, against the control plane. If the reservation is not granted, there is no call.

Sensitive actions still wait for a person

The A2A agent’s tools are the usual ones, over MCP, under the same policy. When something needs approval, the A2A task moves to auth-required. Whoever decides gets notified as with any other operation, and once they approve, the caller retries the same message and the task carries on.

If the recipe names a verified AI endpoint, Prompt Shield runs inside the runtime itself: it checks every prompt, obfuscates personal data in strict mode and records in the evidence that it did so.

Try it from the browser

The console has an A2A chat at /console/a2a/. Give it the URL of the agent or its Agent Card and talk to it: you see the task states, the replies and the JSON of each one. If the agent is yours and you have access, the console obtains a short-lived grant from your session and you do not have to handle the Bearer. It also works for testing A2A agents outside Ploybot.

And between your own agents?

When the caller is another of your agents, Ploybot adds one more rule: there has to be an explicit policy saying agent X may invoke agent Y. If X delegates a capability to Y, Y receives a new grant that says so, and everything it does with it goes through policy, approval and the gateway again. And it does not impersonate X: it is still Y, and that is what gets recorded.

Get started

Create an account, set up an agent and try the console’s A2A chat. If you want to take it to your AWS or Azure account, write to us and we will prepare it with you.

Shall we try it with your agents?

Try the A2A chat