A code editor acting as an MCP host connects to a local filesystem server and to a remote error-tracking service. How many MCP client instances does the editor create for these connections?
Select an answer to reveal the explanation.
Short Explanation
Count the servers and you've counted the clients. Two servers, two clients, each with its own dedicated line. The 'one shared client' answer is the trap.
Full Explanation
The MCP host creates one MCP client for each MCP server it connects to, and each client maintains a dedicated connection with its corresponding server. The project's architecture overview uses exactly this example: when an editor connects to a remote error-tracking server, its runtime instantiates a client object for that connection, and when it then connects to the local filesystem server it instantiates an additional client object. Two servers therefore mean two clients. A single shared client that multiplexes servers contradicts the one-to-one client-server relationship, which also preserves isolation because each client keeps the security boundary around its own server. Adding a third client for the host itself misunderstands the roles; the host is the container that manages clients, not a party that needs its own client. Saying the host talks to servers without clients removes the component the architecture places in between to carry per-request metadata and route messages. Exam caveat: the relationship is one-to-one from the client's side only; a remote server reached over Streamable HTTP commonly serves many clients from many hosts. Operational check: in the host's connection manager, list active MCP clients and confirm there is exactly one per configured server and that each targets only that server.