Skip to content

Agent Protocol: Agent-to-Agent Communication

Overview

Agent Protocol is the standard for agents communicating with each other.

Different from MCP (which is for tools) - this is for agent-to-agent messaging.


MCP vs Agent Protocol

Key Difference

MCP (Model Context Protocol):
  Agent ←→ Tools
  "Call function X with args Y"

Agent Protocol:
  Agent ←→ Agent
  "Delegate task X to you"

Agent Protocol Basics

Request/Response Pattern

class AgentProtocol:
    """Standard agent-to-agent communication"""

    def delegate_task(self, task: dict) -> dict:
        """Send task to another agent"""

        request = {
            "task_id": "task_123",
            "description": "Analyze this data",
            "data": {...},
            "deadline": "2024-08-10T15:00:00Z",
            "required_format": "json",
            "priority": "high"
        }

        response = self.send_request(request)

        return response

    def receive_task(self, request: dict) -> dict:
        """Receive task from another agent"""

        task_id = request["task_id"]
        task_desc = request["description"]

        # Execute task
        result = self.execute(task_desc)

        # Send response
        response = {
            "task_id": task_id,
            "status": "completed",
            "result": result,
            "execution_time_ms": 1234
        }

        return response

Comparison: Subagents vs Agent Protocol

Subagents (Built-in)

# Using Subagents:
parent = ParentAgent()
child = SubAgent()

result = child.run(task)  # Direct function call

Agent Protocol

# Using Agent Protocol:
parent = Agent()
other_agent = RemoteAgent()

result = parent.send_message({
    "type": "task",
    "content": task
})

# Network call, async, protocol-based

When to Use

Decision

Scenario Use Subagents Use Agent Protocol
Same process ✅ Yes ❌ No
Different services ❌ No ✅ Yes
Network communication ❌ No ✅ Yes
Containerized agents ❌ No ✅ Yes
Speed critical ✅ Yes ❌ No
Distributed ❌ No ✅ Yes

3 Warnings ⚠️

Warning 1: Confusing MCP and Agent Protocol

# ❌ WRONG
# Using MCP for agent-to-agent

# ✅ RIGHT
# MCP for tools
# Agent Protocol for agents

Warning 2: Network Overhead

# ❌ WRONG
# Agent Protocol for everything
# Massive latency

# ✅ RIGHT
# Use Subagents for co-located
# Use Agent Protocol for distributed

Warning 3: Serialization Issues

# ❌ WRONG
# Not checking message format

# ✅ RIGHT
# Validate message schema
# Ensure compatibility

Last Updated: August 9, 2026