Three Layers, Three Concerns
The AI ecosystem is standardizing at three layers: context access (MCP), agent communication (A2A), and agent capability (evaluation). They're often conflated. Here's the mental model.
MCP: Standardizing Context Access
Model Context Protocol solves: "How does an LLM discover and use external tools, data, and prompts?" It's a client-server protocol where servers expose capabilities (tools, resources, prompts) and clients (LLMs/agents) consume them.
What MCP Standardizes
- Capability discovery:
list_tools(),list_resources(),list_prompts()— the client learns what's available at runtime - Tool invocation: JSON Schema-defined parameters, structured results, error handling
- Resource access: URI-addressable data (files, DB rows, API responses) with MIME types
- Prompt templates: Reusable, parameterized prompts stored server-side
MCP Evaluation Dimensions
- Server capability discovery: Does the client correctly enumerate and understand available tools/resources? Test with schema evolution (added/removed/changed tools).
- Tool schema validation: Does the client generate valid arguments per the JSON Schema? Measure: valid call rate, schema violation types, recovery from invalid calls.
- Resource access control: Are permissions enforced? Can the client only access authorized resources? Test: RBAC, row-level security, token scoping.
- Context injection quality: When resources are injected into the prompt, are they formatted correctly? Truncated appropriately? Relevant to the query?
A2A: Standardizing Agent Communication
Agent-to-Agent solves: "How do autonomous agents discover, negotiate, and delegate to each other?" It's a peer-to-peer protocol for agent interoperability.
What A2A Standardizes
- Agent discovery: Advertising capabilities, skills, and endpoints (Agent Cards)
- Task negotiation: Proposing, accepting, rejecting, or counter-offering tasks
- Streaming execution: Real-time updates, partial results, clarification requests
- Security: Authentication, authorization, audit trails for cross-agent calls
A2A Evaluation Dimensions
- Agent discovery: Can agents find each other? Is the Agent Card accurate? Test: registry lookup, capability matching, version compatibility.
- Skill negotiation: When Agent A delegates to Agent B, do they agree on the task schema, success criteria, and fallback? Measure: negotiation rounds, rejection rate, schema alignment.
- Task delegation fidelity: Does the delegated task complete as specified? Compare: requested outcome vs delivered outcome. Metrics: completion rate, quality score, deviation from spec.
- Inter-agent communication: Message format compliance, streaming chunk handling, timeout behavior, cancellation propagation.
- Security boundaries: Can Agent A only invoke skills Agent B explicitly advertised? Are credentials scoped? Audit trail completeness.
Agent Evaluation: Measuring Capability, Not Protocol
While MCP and A2A are protocols, agent evaluation is a measurement discipline. It assesses: given tools (MCP) and peers (A2A), how well does the agent actually solve problems?
Core Evaluation Dimensions
- Autonomy level: How much human intervention is needed? Scale: fully supervised → human-in-the-loop → human-on-the-loop → fully autonomous.
- Goal achievement: Did the final state satisfy the user intent? Use LLM-as-judge with rubric + trajectory access.
- Tool selection: Given N available tools (via MCP), does the agent pick the right one? Measure: precision@1, recall of relevant tools, hallucinated tool calls.
- Planning horizon: How many steps ahead does the agent reason? Test with tasks requiring 1, 3, 5, 10+ steps. Measure: success rate vs horizon length.
- Human-AI collaboration: When the agent escalates, is the context sufficient for the human to act? Measure: escalation rate, human time-to-resolution, context completeness.
How They Compose
┌─────────────────────────────────────────────────────────┐
│ Agent Runtime │
├─────────────────────────────────────────────────────────┤
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────────┐ │
│ │ Agent │ │ Agent │ │ Agent │ │
│ │ (Planner) │◄─┤ (Executor) │─►│ (Specialist) │ │
│ └──────┬──────┘ └──────┬──────┘ └────────┬────────┘ │
│ │ │ │ │
│ ▼ ▼ ▼ │
│ ┌─────────────────────────────────────────────────┐ │
│ │ A2A Protocol Layer │ │
│ │ (Discovery • Negotiation • Delegation • Auth) │ │
│ └─────────────────────────────────────────────────┘ │
│ │ │ │ │
│ ▼ ▼ ▼ │
│ ┌─────────────────────────────────────────────────┐ │
│ │ MCP Client Layer │ │
│ │ (Tool Calls • Resource Reads • Prompt Templates)│ │
│ └─────────────────────────────────────────────────┘ │
│ │ │ │ │
│ ▼ ▼ ▼ │
│ ┌─────────────────────────────────────────────────┐ │
│ │ MCP Servers │ │
│ │ (GitHub • Postgres • Slack • Filesystem • ...) │ │
│ └─────────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────────┘
Evaluation Strategy by Layer
| Layer | Protocol | What to Evaluate | How |
|---|---|---|---|
| Context Access | MCP | Tool/schema compliance, resource permissions, context quality | Unit tests per server, integration tests for client, fuzzing schemas |
| Agent Communication | A2A | Discovery accuracy, delegation fidelity, security boundaries | Multi-agent simulation, contract testing, chaos injection |
| Agent Capability | N/A (discipline) | Goal achievement, planning, tool use, recovery | Trajectory eval, benchmark suites (AgentBench, ToolBench), production monitoring |
Common Pitfalls
- Evaluating the protocol, not the agent. Passing MCP schema validation ≠ the agent uses tools well.
- Assuming A2A solves coordination. A2A standardizes the wire format; it doesn't guarantee agents will negotiate effectively. Test delegation scenarios explicitly.
- Skipping MCP server eval. Your custom MCP servers need their own test suites: tool correctness, resource freshness, auth edge cases.
- No cross-layer observability. Correlate: A2A delegation → MCP tool call → server response → agent decision. Without this, debugging multi-agent failures is guesswork.
Tooling Reality Check (Jan 2025)
- MCP: Official SDKs (Python, TypeScript, Go), growing server ecosystem. Evaluation: mostly custom.
- A2A: Early spec (Google-led), reference implementations emerging. Evaluation: nascent.
- Agent eval: LangSmith, Weights & Biases, AgentBench, custom trajectory diffing.
Recommendation
Start with MCP server evaluation (unit test your tools). Add agent capability evaluation (trajectory + goal achievement). Layer A2A evaluation only when you have multiple agents that genuinely need to delegate — not for single-agent systems.
The protocol standards are enablers. The evaluation discipline is what makes the system reliable.