The Three Roles
| Role | What it is | Example |
|---|---|---|
| Host | The AI application itself. Owns the model, the conversation, and the decision to allow anything | Claude Desktop, an IDE, a coding agent |
| Client | A connector living inside the host. Handles exactly one server | One per connected tool |
| Server | The thing exposing the tools or data | A file server, a database server, a ticketing API |
The nesting is the part most diagrams get wrong. The host contains the clients. It is not a middleman sitting between a client and a server. A host connected to five tools is running five clients, each with its own private 1-to-1 connection.
┌─── Host (the AI app) ────────────┐
│ Client 1 ─────────────┐ │
│ Client 2 ──────────┐ │ │
│ Client 3 ───────┐ │ │ │
└───────────────────┼──┼──┼────────┘
│ │ │ one client per server
┌─────────────┘ │ └──────────────┐
┌────┴─────┐ ┌──────┴─────┐ ┌───────┴────────┐
│ Files │ │ Database │ │ Remote API │
└──────────┘ └────────────┘ └────────────────┘That isolation is deliberate and is the protocol's main safety idea: a server cannot read your conversation, and cannot see the other servers connected alongside it. The host holds everything and decides what each server is told.