- The host coordinates the AI experience and multiple connections.
- The client maintains one server session and negotiated capability set.
- The server owns its tools, resources, validation, and authorization.
MCP uses a host, client, and server architecture to connect AI applications with external capabilities. The three roles are easy to blur together because they can run in one process or across different machines. They still have different responsibilities, and those boundaries matter when you design permissions, debug failures, or choose what telemetry to collect.
The host is the coordinator
The host application owns the user experience and usually coordinates the language model, consent prompts, policy decisions, context assembly, and multiple server connections. It decides which servers are available and how their results are presented. The protocol does not require every host to expose the same interface.
The client is the connection boundary
A host creates a client for each server connection. The client handles initialization, protocol version agreement, capability negotiation, request and notification routing, and session lifecycle. Keeping one client connection associated with one server makes permission and failure behavior easier to isolate.
The server is the capability provider
The server implements the domain behavior. It may expose tools, resources, prompts, logging, completions, or other negotiated capabilities. Servers can be local processes or remote services. They should validate inputs, enforce their own authorization rules, and avoid assuming that a connected client is automatically trusted.
How a request travels
- The host makes a capability available through a configured client.
- The client sends a protocol request to the server over the selected transport.
- The server validates the method and arguments, performs the operation, and returns a result or error.
- The client routes the response to the host, which decides how it affects the model or user interface.
Where observability belongs
Each role has a different view. Host telemetry can include model and user experience context. Client telemetry can show connection and routing behavior. Server-boundary telemetry can show what the server received and returned, including tool names, observed duration, and application-level errors. None of these views should be described as the entire agent trace unless the system actually correlates all of them.
Common architecture mistakes
- Treating the server as if it owns the model's hidden reasoning.
- Assuming one successful connection proves that every tool is usable.
- Letting a server trust client-provided labels as complete identity or authorization.
- Collecting full arguments and results by default when metadata is sufficient.
Can host, client, and server run in one process?
They can be colocated, but their protocol roles remain distinct. Many local integrations use one application to start and communicate with a server process.
Why is the one-client-to-one-server relationship useful?
It gives the host an isolated place to manage a server's lifecycle, negotiated capabilities, permissions, and failures.
About the publisher
TrackMCP, also written Track MCP
TrackMCP helps teams understand which clients connect to their MCP servers, which tools agents use, and where workflows fail. Learn more about Track MCP.
See this on your own server
TrackMCP turns your MCP server's calls into adoption, workflows, and outcomes. One line to install.