Jacob Banks
[N-0008]

Rest Won And Thats Why Were Stuck

[STUB]
Planted
2026-07-07
Tended
2026-07-07
State
[STUB]
Links out
3

REST won, and that’s why we’re stuck

REST won so completely that we forgot it is a set of opinions about resource shape, not a wire protocol. Everything since — gRPC, GraphQL, MCP — inherits HTTP’s constraints without examining them. Protocol design should begin with “what is the relationship between these two parties?”, not with “which HTTP verbs can I overload?”

Parent discussions

  • Agent-Editor Protocol — the protocol that raised this question

Connected concepts

  • Delegation is not collaboration — request/response is delegation’s wire format; a collaboration protocol needs peers
  • Proceduralism as Hidden Sovereignty — REST is proceduralism for APIs: a totalizing “neutral” framework that removes its own assumptions from the space of things that can be questioned

Key insight

REST’s opinions were right for their moment: the world is nouns; interactions are stateless; a uniform interface beats a rich one. For documents circa 2000, correct on all counts. But the win was so total the opinions became invisible, and now every dissent ships wearing HTTP as a costume. GraphQL rejects REST’s resource shape and delivers the rebellion as a POST to /graphql. gRPC wants RPC semantics and tunnels them through HTTP/2 frames. MCP bolts the long-lived, stateful, bidirectional relationships agents actually need onto JSON-RPC as an afterthought. In each case the designers asked “how do I express my semantics over HTTP?” when the prior question — does this relationship even have a client and a server? — went unasked.

The Agent-Editor Protocol in the vault is an interesting case because its relationship is not client-server. The agent and editor are peers; either may speak first. Request/response would have made the editor a servant that only speaks when spoken to. So newline-delimited JSON over a raw TCP socket, messages rather than endpoints. An open question: the V0 spec has the MCP server doing a blocking wait for the editor’s answer — does that reimport request/response in miniature, even after escaping HTTP?

Open question

Is MCP going to re-freeze the design space for another twenty years the way REST did?

Needs

dead links from this note that are not yet planted

  • Agent-Editor Protocol
  • Proceduralism as Hidden Sovereignty