MCP spec 2024-11-05: what's in it
2024-11-05 is the original release of the Model Context Protocol
specification, published on 5 November 2024. Every later revision builds on the
foundation it laid down, so there is no prior version to compare it against. It
is now the oldest of the four published revisions and three revisions behind the
current 2025-11-25 spec, so it is outdated: a server that still negotiates
it connects, but it earns only partial protocol-recency credit in VerifyMCP’s
remote endpoint rubric, and the fix is almost
always a single SDK upgrade.
What it established
This first revision defined the base protocol and the core building blocks that
the ecosystem still uses today. The specification is built on
JSON-RPC 2.0 messages exchanged over stateful
connections, with explicit capability negotiation during initialize so that
each side knows what the other supports.
It set out the three roles in an MCP integration:
- Hosts, the LLM applications that initiate connections.
- Clients, the connectors inside a host.
- Servers, the services that provide context and capabilities.
On top of that base, it defined the server-offered primitives that remain central to the protocol:
- Resources: context and data for the user or the model.
- Prompts: templated messages and workflows.
- Tools: functions the model can execute.
It also defined sampling, the client-offered capability that lets a server request LLM completions, along with supporting utilities such as progress tracking, cancellation, logging and error reporting.
Because it is the starting point, the specification also lays out the security and trust principles that later revisions expand on, centred on explicit user consent for data access, tool invocation and sampling.
Read the original revision
The full text is preserved on the official site: modelcontextprotocol.io/specification/2024-11-05.
Next
- Next revision: 2025-03-26
- Back to all specification versions