Different audiences
REST is for humans writing client code. MCP is for LLMs picking the next tool. The shapes diverge because the consumers differ.
Concrete differences
- Discovery — REST: read docs. MCP:
tools/listreturns names, descriptions, JSON schemas. - Auth — REST: anything goes. MCP: OAuth 2.1 with PKCE is the spec.
- Errors — REST: HTTP codes + arbitrary bodies. MCP: structured error with machine-readable code the model can act on.
- Pagination — REST: every API invents its own. MCP: cursor-based, spec-defined.
- Bounded output — REST: returns whatever. MCP: server should cap output for token budget.
Wrap, don't replace
Most MCP servers are 200 lines of glue over an existing REST API. The win is the schema, the consent UI, and the structured errors — not rewriting your backend.
FAQ
- Does MCP replace REST?
- No. MCP is the bridge between LLMs and tools; REST is still the bridge between services. Most MCP servers wrap a REST API.
- Why not just give the LLM REST docs?
- You can — and many do — but pagination, auth, error shapes, and verb semantics confuse models. MCP gives the LLM tools, not docs.
- Will MCP support streaming and webhooks?
- Streaming yes (resources can stream). Webhooks no — MCP is request/response from the model's perspective; push events live elsewhere.