A host connects to dozens of MCP servers exposing hundreds of tools, and the tool definitions alone consume most of the model's context window. Which client pattern addresses this problem?
Select an answer to reveal the explanation.
Short Explanation
Don't dump the whole toolbox on the table when you only need a screwdriver. Progressive discovery lets the model search, then load just the tools it needs. Pagination sounds similar, but it's a transport detail, not a context fix.
Full Explanation
The client best practices describe progressive tool discovery for hosts with large tool catalogs. The host still fetches definitions through tools/list but defers injecting them into the model's context; instead it gives the model a lightweight search meta-tool, then loads full definitions, including input and output schemas, only for the tools the task requires. A common layout is catalog, inspect, execute, using keyword, embedding, subagent or hybrid retrieval, and the guidance suggests switching to this approach once definitions exceed a threshold share of the context window. Pagination of tools/list controls how a server returns a long list to the client in pages; it is a protocol mechanism between client and server and says nothing about what the host places in the model's context. Sampling is deprecated in the 2026-07-28 revision and was a way for servers to request completions, not a way to filter tools. Resource subscriptions deliver notifications when specific resource URIs change; they have no relation to tool usage or to context size. Exam caveat: hosts should still honor ttlMs and list_changed for the definitions they cache, and re-index the search catalog when tools change. Operational check: measure the tokens consumed by tool definitions at the start of a conversation before and after enabling progressive discovery, and confirm only requested definitions enter context.