Skip to main content
Latent Space

The Creators of Model Context Protocol

79 min episode · 3 min read
·

Episode

79 min

Read time

3 min

AI-Generated Summary

Key Takeaways

  • Protocol Design Philosophy: MCP solves the m-times-n problem where multiple AI applications need multiple integrations by creating a universal connector layer. The team deliberately borrowed from Language Server Protocol while studying LSP criticisms to avoid mistakes, choosing JSON RPC for non-controversial transport while innovating on primitives like tools, resources, and prompts that manifest differently in applications based on presentation needs rather than semantic differences.
  • Three Core Primitives: Tools execute model-initiated actions, resources provide user or application-controlled context data that can populate attachment menus or enable RAG indexing, and prompts deliver user-substituted text like slash commands. This separation allows application developers to create differentiated experiences rather than treating everything as tool calling. The first implementation focused on prompts, not tools, enabling users to pull Sentry backtraces into context windows before model interaction.
  • Development Timeline and Approach: The protocol went from initial concept to launch in approximately four months, from July to November 2024. The team spent months building unrewarding groundwork across TypeScript, Python, and Rust SDKs before the internal hackathon one month before release generated excitement with projects like three-d printer control. Early alpha versions appeared in Zed editor repositories six weeks before official announcement for those monitoring open source activity.
  • Stateful vs Stateless Evolution: The recent shift from SSE-only to streamable HTTP transport addresses operational complexity while maintaining statefulness for future AI interactions. The new design allows gradual enhancement from plain HTTP POST endpoints to streaming results to bidirectional requests, with session resumption enabling horizontal scaling and spotty network handling. This balances the belief that AI applications will become inherently more stateful with practical deployment requirements at scale.
  • Tool Capacity and Filtering: Claude handles approximately 250 tools reliably, though actual limits depend on tool description overlap and naming clarity. Having GitLab and GitHub servers simultaneously creates more confusion than 250 distinct tools. Applications should implement filtering mechanisms, potentially using smaller models to select relevant tools before passing to larger models, or expose user controls to activate specific tool subsets contextually rather than maintaining always-on access to everything.

What It Covers

Justin Spah Summers and David Soria Parra, creators of Model Context Protocol at Anthropic, reveal the origin story of MCP from July 2024 frustrations with copying data between Claude Desktop and IDEs. They explain design decisions inspired by Language Server Protocol, the m-times-n integration problem, and why MCP differentiates tools, resources, and prompts as distinct primitives for AI applications.

Key Questions Answered

  • Protocol Design Philosophy: MCP solves the m-times-n problem where multiple AI applications need multiple integrations by creating a universal connector layer. The team deliberately borrowed from Language Server Protocol while studying LSP criticisms to avoid mistakes, choosing JSON RPC for non-controversial transport while innovating on primitives like tools, resources, and prompts that manifest differently in applications based on presentation needs rather than semantic differences.
  • Three Core Primitives: Tools execute model-initiated actions, resources provide user or application-controlled context data that can populate attachment menus or enable RAG indexing, and prompts deliver user-substituted text like slash commands. This separation allows application developers to create differentiated experiences rather than treating everything as tool calling. The first implementation focused on prompts, not tools, enabling users to pull Sentry backtraces into context windows before model interaction.
  • Development Timeline and Approach: The protocol went from initial concept to launch in approximately four months, from July to November 2024. The team spent months building unrewarding groundwork across TypeScript, Python, and Rust SDKs before the internal hackathon one month before release generated excitement with projects like three-d printer control. Early alpha versions appeared in Zed editor repositories six weeks before official announcement for those monitoring open source activity.
  • Stateful vs Stateless Evolution: The recent shift from SSE-only to streamable HTTP transport addresses operational complexity while maintaining statefulness for future AI interactions. The new design allows gradual enhancement from plain HTTP POST endpoints to streaming results to bidirectional requests, with session resumption enabling horizontal scaling and spotty network handling. This balances the belief that AI applications will become inherently more stateful with practical deployment requirements at scale.
  • Tool Capacity and Filtering: Claude handles approximately 250 tools reliably, though actual limits depend on tool description overlap and naming clarity. Having GitLab and GitHub servers simultaneously creates more confusion than 250 distinct tools. Applications should implement filtering mechanisms, potentially using smaller models to select relevant tools before passing to larger models, or expose user controls to activate specific tool subsets contextually rather than maintaining always-on access to everything.
  • Authorization and Remote Servers: The next protocol revision includes OAuth 2.1 authorization for user-to-server authentication, critical for the anticipated shift from local to predominantly remote MCP servers. Local stdio transport can handle authorization through browser popups, while remote deployments require proper OAuth flows. The team maintains minimal specifications, only adding features proven through practical pain points rather than overdesigning upfront, with extensibility allowing prototyping before protocol inclusion.

Notable Moment

The protocol emerged from pure developer frustration when David Soria Parra, three months into his Anthropic role working on internal tooling, grew annoyed constantly copying content between Claude Desktop's artifacts feature and his IDE. This personal pain point, combined with concurrent work on an LSP-related project, sparked the realization that a protocol could solve the integration problem, leading to the room conversation with Justin that launched MCP development.

Know someone who'd find this useful?

You just read a 3-minute summary of a 76-minute episode.

Get Latent Space summarized like this every Monday — plus up to 2 more podcasts, free.

Pick Your Podcasts — Free

Keep Reading

More from Latent Space

We summarize every new episode. Want them in your inbox?

Similar Episodes

Related episodes from other podcasts

This podcast is featured in Best AI Podcasts (2026) — ranked and reviewed with AI summaries.

You're clearly into Latent Space.

Every Monday, we deliver AI summaries of the latest episodes from Latent Space and 192+ other podcasts. Free for up to 3 shows.

Start My Monday Digest

No credit card · Unsubscribe anytime