Agent Protocol
The agent designs tool schemas for MCP, Google A2A, and OpenAI Function Calling protocols. It implements transport selection, capability discovery, authentication flows (OAuth 2.1, API keys), structured error handling, rate limiting, and protocol bridges for heterogeneous agent ecosystems.
Core Capabilities
- Protocol selection & comparison — MCP (tool/resource/prompt serving), Google A2A (agent cards, task lifecycle, streaming), OpenAI Function Calling (JSON Schema, parallel calls, strict mode), LangChain/LangGraph tools, and custom WebSocket/gRPC messaging
- Tool schema design — JSON Schema input/output validation, semantic naming conventions, description engineering for LLM comprehension, required vs optional parameters, enum and default strategies
- Transport & discovery — stdio/SSE/WebSocket for MCP, HTTP+JSON-RPC for A2A, agent card capability advertisement, health checking, and protocol version negotiation
- Security & authentication — OAuth 2.1 flows, API key rotation and scoping, request signing, per-identity rate limiting, and audit logging for inter-agent calls
When to Use
- Designing tool interfaces for LLM-powered agents
- Building MCP servers that expose APIs to Claude, Cursor, or other clients
- Implementing agent-to-agent communication in multi-agent systems
- Bridging between different agent protocols (MCP to A2A, etc.)
- Standardizing tool calling patterns across a team or organization
- Debugging agent tool selection failures
Clarify First
Before designing the protocol, confirm these inputs. If any is unknown or vague, ASK — do not assume:
Stop rule: ask only the 2-3 that most change the output. If the user says "just draft it," proceed and list your assumptions at the top of the artifact.
Decision Framework
What are you building?
│
├─ Tools for a single LLM client (Claude, Cursor, Copilot)
│ └─ Use MCP — it's the native protocol for tool serving
│
├─ Agent-to-agent communication across organizations
│ └─ Use A2A — designed for cross-boundary agent discovery and delegation
│
├─ Tools for OpenAI models specifically
│ └─ Use OpenAI Function Calling — tightest integration
│
├─ Python pipeline with multiple chained tools
│ └─ Use LangChain Tools — simplest for in-process orchestration
│
└─ Heterogeneous agent ecosystem (multiple protocols)
└─ Use Protocol Bridge pattern — translate between protocols at boundaries
References
Load the reference that matches the task — keep this file lean and pull detail on demand:
- references/protocol-selection.md — full MCP vs A2A vs OpenAI Functions vs LangChain Tools comparison matrix. Read when comparing protocols before committing to one.
- references/mcp-implementation.md — tool schema anatomy, naming/description rules, and TypeScript MCP server code (stdio + authenticated SSE). Read when building an MCP server or designing tool schemas.
- references/a2a-and-bridges.md — A2A agent card, task lifecycle, full Python A2A client, and the Protocol Bridge pattern. Read when building agent-to-agent communication or bridging protocols.
- references/errors-testing-and-quality.md — structured error format, error code taxonomy, schema/integration testing, pitfalls, best practices, troubleshooting, and success criteria. Read when hardening for production or diagnosing failures.
Scope & Limitations
This skill covers:
- Designing tool schemas for MCP, A2A, OpenAI Function Calling, and LangChain Tools
- Transport selection, capability discovery, and protocol version negotiation
- Authentication, rate limiting, and structured error handling for agent communication
- Protocol bridging between heterogeneous agent ecosystems
This skill does NOT cover:
- Building complete MCP server applications with business logic — see
engineering/mcp-server-builder
- Agent orchestration patterns, planning loops, or multi-step reasoning — see
engineering/agent-workflow-designer
- Designing agent personas, memory systems, or behavioral profiles — see
engineering/agent-designer
- Infrastructure deployment, CI/CD pipelines, or container orchestration for agent services — see
engineering/senior-devops
Integration Points
| Skill |
Integration |
Data Flow |
engineering/mcp-server-builder |
Protocol schemas defined here feed directly into MCP server scaffolding |
Tool definitions and inputSchema objects flow into server code generation |
engineering/agent-workflow-designer |
Workflow orchestrators consume protocol interfaces to dispatch tasks |
Agent-protocol defines the transport contract; workflow-designer defines execution order and branching |
engineering/agent-designer |
Agent identity and capability profiles reference protocol-level skill declarations |
Agent cards and capability metadata from protocol design inform agent persona configuration |
engineering/senior-security |
Security review of auth flows, token scoping, and rate limiting configurations |
OAuth 2.1 flows, API key rotation policies, and audit logging patterns flow into security assessments |
engineering/api-design-reviewer |
REST and JSON-RPC endpoint design review for A2A and MCP HTTP transports |
API schema and endpoint contracts feed into design review checklists |
engineering/observability-designer |
Monitoring and tracing for inter-agent calls, latency tracking, and error budgets |
Tool call logs with agent ID, latency, and error codes flow into observability dashboards |
1---2name: agent-protocol3description: Design AI agent communication protocols: MCP tool schemas, A2A, function calling, and inter- agent messaging. Use when building multi-agent systems, defining tool interfaces, or implementing agent-to-agent communication.4license: MIT + Commons Clause5---6# Agent Protocol
7
8The agent designs tool schemas for MCP, Google A2A, and OpenAI Function Calling protocols. It implements transport selection, capability discovery, authentication flows (OAuth 2.1, API keys), structured error handling, rate limiting, and protocol bridges for heterogeneous agent ecosystems.
9
10## Core Capabilities
11
12- **Protocol selection & comparison** — MCP (tool/resource/prompt serving), Google A2A (agent cards, task lifecycle, streaming), OpenAI Function Calling (JSON Schema, parallel calls, strict mode), LangChain/LangGraph tools, and custom WebSocket/gRPC messaging
13- **Tool schema design** — JSON Schema input/output validation, semantic naming conventions, description engineering for LLM comprehension, required vs optional parameters, enum and default strategies
14- **Transport & discovery** — stdio/SSE/WebSocket for MCP, HTTP+JSON-RPC for A2A, agent card capability advertisement, health checking, and protocol version negotiation
15- **Security & authentication** — OAuth 2.1 flows, API key rotation and scoping, request signing, per-identity rate limiting, and audit logging for inter-agent calls
16
17## When to Use
18
19- Designing tool interfaces for LLM-powered agents
20- Building MCP servers that expose APIs to Claude, Cursor, or other clients
21- Implementing agent-to-agent communication in multi-agent systems
22- Bridging between different agent protocols (MCP to A2A, etc.)
23- Standardizing tool calling patterns across a team or organization
24- Debugging agent tool selection failures
25
26## Clarify First
27
28Before designing the protocol, confirm these inputs. If any is unknown or vague, ASK — do not assume:
29
30- [ ] **Protocol target** — MCP, A2A, OpenAI Function Calling, or LangChain Tools (drives the entire schema and transport design via the Decision Framework below)
31- [ ] **Transport & client** — which client consumes it (stdio/SSE/WebSocket for MCP, HTTP+JSON-RPC for A2A)
32- [ ] **Auth & trust boundary** — in-process vs cross-organization (determines OAuth 2.1 vs API key vs none, plus rate limiting and signing)
33
34Stop rule: ask only the 2-3 that most change the output. If the user says "just draft it," proceed and list your assumptions at the top of the artifact.
35
36## Decision Framework
37
38```
39What are you building?
40│
41├─ Tools for a single LLM client (Claude, Cursor, Copilot)
42│ └─ Use MCP — it's the native protocol for tool serving
43│
44├─ Agent-to-agent communication across organizations
45│ └─ Use A2A — designed for cross-boundary agent discovery and delegation
46│
47├─ Tools for OpenAI models specifically
48│ └─ Use OpenAI Function Calling — tightest integration
49│
50├─ Python pipeline with multiple chained tools
51│ └─ Use LangChain Tools — simplest for in-process orchestration
52│
53└─ Heterogeneous agent ecosystem (multiple protocols)
54 └─ Use Protocol Bridge pattern — translate between protocols at boundaries
55```
56
57## References
58
59Load the reference that matches the task — keep this file lean and pull detail on demand:
60
61- **[references/protocol-selection.md](references/protocol-selection.md)** — full MCP vs A2A vs OpenAI Functions vs LangChain Tools comparison matrix. Read when comparing protocols before committing to one.
62- **[references/mcp-implementation.md](references/mcp-implementation.md)** — tool schema anatomy, naming/description rules, and TypeScript MCP server code (stdio + authenticated SSE). Read when building an MCP server or designing tool schemas.
63- **[references/a2a-and-bridges.md](references/a2a-and-bridges.md)** — A2A agent card, task lifecycle, full Python A2A client, and the Protocol Bridge pattern. Read when building agent-to-agent communication or bridging protocols.
64- **[references/errors-testing-and-quality.md](references/errors-testing-and-quality.md)** — structured error format, error code taxonomy, schema/integration testing, pitfalls, best practices, troubleshooting, and success criteria. Read when hardening for production or diagnosing failures.
65
66## Scope & Limitations
67
68**This skill covers:**
69- Designing tool schemas for MCP, A2A, OpenAI Function Calling, and LangChain Tools
70- Transport selection, capability discovery, and protocol version negotiation
71- Authentication, rate limiting, and structured error handling for agent communication
72- Protocol bridging between heterogeneous agent ecosystems
73
74**This skill does NOT cover:**
75- Building complete MCP server applications with business logic — see `engineering/mcp-server-builder`
76- Agent orchestration patterns, planning loops, or multi-step reasoning — see `engineering/agent-workflow-designer`
77- Designing agent personas, memory systems, or behavioral profiles — see `engineering/agent-designer`
78- Infrastructure deployment, CI/CD pipelines, or container orchestration for agent services — see `engineering/senior-devops`
79
80## Integration Points
81
82| Skill | Integration | Data Flow |
83|-------|-------------|-----------|
84| `engineering/mcp-server-builder` | Protocol schemas defined here feed directly into MCP server scaffolding | Tool definitions and inputSchema objects flow into server code generation |
85| `engineering/agent-workflow-designer` | Workflow orchestrators consume protocol interfaces to dispatch tasks | Agent-protocol defines the transport contract; workflow-designer defines execution order and branching |
86| `engineering/agent-designer` | Agent identity and capability profiles reference protocol-level skill declarations | Agent cards and capability metadata from protocol design inform agent persona configuration |
87| `engineering/senior-security` | Security review of auth flows, token scoping, and rate limiting configurations | OAuth 2.1 flows, API key rotation policies, and audit logging patterns flow into security assessments |
88| `engineering/api-design-reviewer` | REST and JSON-RPC endpoint design review for A2A and MCP HTTP transports | API schema and endpoint contracts feed into design review checklists |
89| `engineering/observability-designer` | Monitoring and tracing for inter-agent calls, latency tracking, and error budgets | Tool call logs with agent ID, latency, and error codes flow into observability dashboards |