/The Three Roles

The Three Roles

RoleWhat it isExample
HostThe AI application itself. Owns the model, the conversation, and the decision to allow anythingClaude Desktop, an IDE, a coding agent
ClientA connector living inside the host. Handles exactly one serverOne per connected tool
ServerThe thing exposing the tools or dataA 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.