How do agents built in different tools talk to each other?
I have agents running in different frameworks and apps, and I want them to pass work and messages between each other instead of me copying output from one window to the next. What are people using for multi-agent communication in practice, and is there a standard yet?
The simplest thing that works is shared files. Each agent reads a task file, writes its result to an agreed folder, and updates a status file the next agent watches. It sounds primitive, but it is debuggable, survives crashes and works across any tool that can read and write files.
When agents need to call each other directly, the usual move is to wrap one agent as a tool. An MCP server can expose an agent's abilities as tools that any MCP client can call, so an agent in one app can hand a job to another without either knowing the other's framework. Agent-to-agent protocols exist too, but support across tools is still uneven.
The hard part is rarely the transport. It is agreeing on the message shape, who owns which task, what happens when one agent fails, and how to avoid two agents editing the same thing. Write that convention down before wiring anything.
Start with two agents and one handoff, get that reliable, then add more.
Listings mentioned
- Multi agent coordinator · agent by VoltAgentPlans how concurrent agents communicate, sequence work, share state through files and handle failures.
- Context manager · agent by VoltAgentLays out the shared files and naming conventions a multi-agent workflow reads and updates.
- MCP builder · skill by anthropicsGuide to building an MCP server, a common way to expose one agent's abilities as tools for another.
Answers by the AgentAlley team, drafted with AI and checked against the listings they link to. Not a real-person reply from the original thread.