Protocol Over Tool
Core Concept
When you find yourself building a tool that bridges two systems, stop and ask: should this be a protocol instead?
A tool solves your problem. A protocol solves a category of problems. The effort to build either is often similar, but a protocol compounds — it lets other people solve their own version of the same problem without you.
The Two Approaches
| Build a Tool | Build a Protocol | |
|---|---|---|
| Solves | Your specific problem | A category of problems |
| Integration cost | N tools x M systems = N*M integrations | N tools x 1 protocol + M adapters = N+M integrations |
| Who benefits | You | Everyone with the same problem |
| Adoption | You use it | Others can adopt independently |
| Extensibility | You maintain every integration | Others write their own adapters |
| Lock-in | Tied to your architecture | Architecture-agnostic |
The math is the key insight: N*M vs N+M. Five agents and four PM systems is 20 bespoke integrations or 9 protocol-conforming pieces. At scale, the protocol wins by orders of magnitude.
When to Reach for a Protocol
Not everything should be a protocol. Use this heuristic:
- Multiple producers and consumers exist — if only one system will ever serve this data and one system will ever consume it, a direct integration is simpler
- The schema is more stable than the systems — “a unit of work has a title, status, and description” is stable. Specific PM tools come and go.
- You’d otherwise build the same adapter twice — the moment you think “I need a Linear integration AND a Jira integration,” you need a protocol
- Interoperability is a feature, not an accident — if you want other people to plug into your system (or you want to plug into theirs), a protocol is the only way
When NOT to Reach for a Protocol
- You’re the only consumer. A protocol with one adapter is an over-engineered tool. Build the tool, extract the protocol later if demand appears.
- The problem is too novel. You don’t know the right abstractions yet. Build the tool, learn, then standardize. (This is why WCP starts as a tool and becomes a protocol in Phase 3.)
- Speed matters more than interoperability. Ship the direct integration, refactor later.
Intellectual Ancestry
TCP/IP — didn’t try to be a better network. Defined how ANY network could talk to any other network. Every proprietary network protocol lost.
HTTP / REST — didn’t try to build a better file transfer tool. Defined how any client could talk to any server. The web is a protocol, not a product.
LSP (Language Server Protocol) — Microsoft didn’t build a better IntelliSense for every editor. They defined how any editor could talk to any language server. One protocol replaced hundreds of editor-specific integrations.
MCP (Model Context Protocol) — Anthropic didn’t build integrations between Claude and every tool. They defined how any model could talk to any tool server. Same pattern.
RSS — a protocol for “here’s what’s new.” Simple, decentralized, composable. Worked for two decades despite every platform trying to replace it with proprietary feeds.
Where I’ve Seen It
- WCP (Work Context Protocol) — the originating insight. Instead of building a Linear integration for pipeline-skills (ROAD-08), build a protocol for work context that any PM system can serve and any agent can consume. The filesystem-backed MVP is the reference implementation. A Linear adapter comes later. The protocol IS the product.
- Augmentation-Over-Automation — related but different axis. Augmentation is about human/machine collaboration design. Protocol-over-tool is about system interoperability design. Both are about designing the interface rather than the implementation.
The Trap: Premature Protocol
The biggest risk is designing a protocol before you understand the problem. Every failed XML schema and abandoned W3C spec is evidence of premature standardization.
The antidote is Phase 1 → Phase 3 thinking:
- Build the tool you need. Use it.
- Discover what’s stable (the schema) vs. what’s incidental (the storage, the UI).
- Extract the protocol from what survived real use.
This is why successful protocols almost always come from working implementations, not committee specifications. HTTP came from Tim Berners-Lee’s working hypertext system. MCP came from Anthropic’s working tool-use infrastructure. WCP should come from a working task tracker.
Cross-References
- Augmentation-Over-Automation — companion pattern (human/machine interface design)
- Software-Laws — Zawinski’s Law, Gall’s Law (complex systems that work evolved from simple systems that worked)
- Integration-vs-Composition — protocols are compositional by nature; the tension between integration and composition is resolved by choosing protocols
- Context-Over-Interface — same structural insight applied to AI workflows: the context layer (protocol) beats the input device (tool) because it’s composable across any interface