Back to Blog

MCP and the Quiet Standardization of AI Tool Use

Prateek SinghApril 1, 20263 min read
MCP and the Quiet Standardization of AI Tool Use

Model Context Protocol started as Anthropic's spec for hooking Claude into tools. A year later, every major AI provider, IDE, and SaaS vendor speaks it. This is what protocol-winning looks like in real time.

The thing that almost didn't happen

When Anthropic released Model Context Protocol in November 2024, the framing was modest: an open spec for connecting language models to data sources and tools. The blog post was a few hundred words. There was no launch event. The reference implementations were Python and TypeScript SDKs that took an afternoon to read end-to-end.

Eighteen months later, MCP is the protocol that quietly ate every other competing approach. OpenAI, Google, Microsoft, and Mistral all ship native MCP support. Every major IDE — Cursor, Windsurf, Zed, VS Code — speaks MCP. Slack, Linear, GitHub, Notion, Stripe, and Zendesk all maintain official MCP servers. The protocol won, and almost nobody is celebrating, because winning protocols aren't supposed to feel exciting. They're supposed to feel inevitable.

Why MCP, and not the alternatives

The function-calling specs that came before MCP — OpenAI's plugin manifest, ChatGPT's actions, LangChain's tool wrappers — all tried to solve the same problem: how does a language model know what tools exist and how to call them? They failed at industry adoption for the same reason: each one tied the tool to a specific platform.

MCP made one decision differently. It separated the protocol (how a client and server talk) from the client (which model is on the other side). A Linear MCP server doesn't care if it's being called by Claude, GPT, Gemini, or a homegrown agent. The same server works for all of them, with no per-vendor adapter.

That single decision — protocol over platform — is the same one that made HTTP win over Gopher and TCP/IP win over OSI. The pattern repeats every twenty years. The lesson seemed unlearnable until MCP made it impossible to ignore.

The economics that finished the job

Once MCP existed, the math worked out for everyone in the value chain.

For tool vendors (Slack, GitHub, Stripe), writing one MCP server unlocked every AI client at once. The build cost was bounded; the addressable surface was the entire AI ecosystem. Refusing to ship one became the bigger risk.

For AI vendors, supporting MCP meant their model could connect to hundreds of tools they didn't have to integrate themselves. The pitch to enterprise buyers shifted from "we have integrations with X" to "we speak MCP — bring your own tools." The first answer is a feature; the second is a platform.

For end users, the win was less visible but more real: tools that used to require a custom integration per AI app now Just Worked. Connect your Claude desktop to your Notion. Connect your Cursor to your Postgres. Connect your team's internal AI bot to your incident-management tool. None of this required any vendor to do bespoke work for you.

What MCP is not

It's worth being precise. MCP is not an agent framework. It doesn't tell the model when to call a tool, or how to recover from a failed call, or how to chain multiple calls into a workflow. That work still belongs to the agent layer above MCP — and there are still many competing answers there (LangGraph, AutoGen, CrewAI, Anthropic's own Skills, OpenAI's Agents SDK).

MCP is also not a security boundary. A malicious or buggy MCP server can lie to the model about what it does. Permissions, sandboxing, and tool-call review are still the responsibility of whoever runs the client. If you're shipping AI to production, you still need a thoughtful answer to "what can this thing actually do."

What changes for builders

If you're building an AI product in 2026, three things follow from MCP's win:

Don't build vendor-specific tool wrappers anymore. If your product needs to call out to GitHub or Slack or Postgres, do it through their MCP server. You'll get the integration for free, and it'll keep working when you swap models.

If you have an API, ship an MCP server. The cost to write one is a weekend; the cost to not write one is being absent from every AI workflow your customers are building. There is no longer a defensible reason for an API-first product to skip this.

Plan for the agent layer to keep churning. The framework you pick today (LangGraph, OpenAI Agents SDK, custom) won't be the one you use in two years. MCP is the stable layer underneath. Build assuming the agent framework is replaceable — the tools beneath it aren't.

The quiet revolution

Most protocol wars are loud — fought through standards bodies, blog posts, and Hacker News flame wars. MCP won by being good enough that everyone shipped it before they noticed they'd agreed. The closest historical comparison isn't HTTP. It's USB-C.

That's the highest compliment a protocol can earn: at some point you stop noticing it's there.

Share this article

Related Posts

Your MCP Tools Cost 6.6× More Context Than They Need. I Measured It Against the New Spec.
AI & Machine Learning8 min read

Your MCP Tools Cost 6.6× More Context Than They Need. I Measured It Against the New Spec.

I measured what MCP tool definitions actually cost a context window: ~6.6× redundancy, ~17% of 200k at 72 tools — and the brand-new spec doesn't touch it. Plus the false-positive hunt that broke my own 'zero FP' claim and the detector that came out of it.

Read
ferrovec: a Tiny Rust HNSW Vector Index That Runs Semantic Search Inside the Browser Tab
AI & Machine Learning10 min read

ferrovec: a Tiny Rust HNSW Vector Index That Runs Semantic Search Inside the Browser Tab

I wanted semantic search with no server — and every Rust HNSW crate refused to compile to WebAssembly. So I wrote ferrovec: a hand-rolled HNSW vector index whose only Rust dependencies are serde and postcard, that denies unsafe code crate-wide, uses no system randomness, and produces a wasm build the project reports at ~33 KB gzipped. This is the launch: the algorithm, the determinism, the compaction, and the leap into the browser — the WASM core, transformers.js auto-embedding on a Web Worker, OPFS persistence, and single-writer leader election across tabs.

Read
crimson-crab: a Production-Grade Rust SDK for Claude — and Why tokio Leaves the Dependency Tree on wasm32
AI & Machine Learning8 min read

crimson-crab: a Production-Grade Rust SDK for Claude — and Why tokio Leaves the Dependency Tree on wasm32

crimson-crab is a Rust SDK for Anthropic's Claude API: v0.1.0, 191 passing tests, zero clippy warnings, and a library that denies unwrap, expect and panic at compile time. This is the launch post: why tokio sits in the native dependency tree and is absent from the wasm32 one, why 113 of the 191 tests are the documentation, and what happens when a response arrives from a model the SDK has never heard of.

Read