MP-101 · Module 1
Protocol Architecture
4 min read
MCP follows a client-server architecture. The MCP client lives inside the AI application — Claude Desktop, Claude Code, Cursor, VS Code, or any tool that wants to give an AI model access to external capabilities. The MCP server is a lightweight process that wraps a specific tool or data source — a filesystem, a database, a SaaS API — and exposes it through the MCP protocol. The AI model never talks to the external system directly. It talks to the MCP client, which talks to the MCP server, which talks to the external system.
The protocol is built on JSON-RPC 2.0 — a simple, well-established standard for remote procedure calls over JSON. Every message is a JSON object with a method name and parameters. Requests get responses. Notifications are fire-and-forget. This is not a new wire format — it is a battle-tested foundation that any language can implement in hours. The innovation is not in the transport. It is in what rides on top of it.
When a client connects to a server, the first thing that happens is capability negotiation. The server announces what it supports — which tools are available, which resources can be read, whether it offers prompts. The client learns the server's full capability surface before the AI model ever sees it. This means the model gets a structured menu of what it can do, not a vague description. It sees tool names, parameter schemas, and descriptions — everything it needs to decide when and how to use each capability.
- 1. Connection The MCP client starts the server process (for local servers) or opens an HTTP connection (for remote servers). The transport is established.
- 2. Initialization Client and server exchange protocol versions and capabilities. The server declares which primitives it supports: tools, resources, prompts, or any combination.
- 3. Discovery The client requests the full list of available tools, resources, and prompts. Each comes with a name, description, and schema. The AI model can now see what is available.
- 4. Operation The AI model decides to invoke a tool, read a resource, or use a prompt. The client sends the request to the server. The server executes it and returns the result. This cycle repeats for the duration of the session.