Originally published in Temrel, a weekly newsletter on agentic engineering.

You have built an MCP server the right way: handshakes, and perhaps even sampling. On Monday 28 July, the spec finalises and a great deal of "the right way" becomes legacy. It is not going to blow up, but the clock starts.

An MCP primer (skip if you know it)

The Model Context Protocol (MCP) is an open standard from Anthropic (late 2024) that defines how AI apps connect to external tools and data. It runs on local stdio or, more commonly, streamable HTTP for remote tools. Three roles: the host (the app, e.g. Claude Code or Cursor), the client (runs inside the host, manages the connection), and the server (wraps a tool's capability, e.g. GitHub or Postgres).

Servers expose three primitives: Tools (functions, JSON inputs), Resources (data indexed by URI), and Prompts (e.g. slash commands). Client-side primitives let the server ask the client for something: Sampling (LLM completions client-side), Roots (which directories are in scope), and Elicitation (asking for more information mid-operation). Two of these are on death row.