Agent Systems: Inter-Agent Communication and Protocols
Figure
Figure: independent agents coordinate through explicit task, evidence, status, and error messages.
In one sentence. Give messages between agents an explicit protocol — identity, schema, turn-taking — so that a conversation between them can be inspected.
Problem
Agents have different context, assumptions, tools, and lifetimes. An implicit shared conversation does not provide a reliable coordination contract.
Message contract
sender · recipient · task id · artifact · provenance · status · requested action
Mathematical messages should carry hypotheses, dependencies, uncertainty, and unresolved obligations, not only conclusions. Version or identify artifacts so that a later message cannot silently refer to changed content.
Protocol versus orchestration
Orchestration decides who acts next and when the task ends. A protocol specifies what is transferred between components. Tool protocols such as MCP and agent- to-agent protocols are useful because they make the seam explicit.
Forces and failure modes
Protocols support independent deployment and replacement, but add serialization, schema evolution, and failure handling. Guard against inconsistent state, duplicated work, unbounded message histories, and messages that omit assumptions.
Design test
Could a new agent reconstruct the claim, its assumptions, evidence, and next action from the message alone?
Real-world application
In a multi-team service desk, agents should exchange task IDs, status, evidence, and error types rather than free-form dialogue. A versioned message protocol allows one worker to be replaced, retried, or audited without changing every other worker.
Reference basis
The pattern is Gulli, Agentic Design Patterns, Chapter 15, “Inter-Agent Communication (A2A),” and Dibia, Designing Multi-Agent Systems, Chapter 12, “Protocols for Distributed Agents.” The MCP specification is a primary protocol reference for standardized access to tools and data; it is complementary to agent-to-agent messaging, and Gulli gives it a separate treatment in Chapter 10. For server-side implementation patterns, see Stephen Clear, Claude AI Bible, Chapter 16 and Appendix D.