MCP servers are not free. Every connected server adds tool definitions to the context window, and tool definitions are not small. At 32 active servers, the overhead consumed roughly 75% of available context before a single user message was processed.
How the Math Works
Each MCP server exposes a set of tools. Each tool definition includes a name, description, input schema, and output schema. A typical server with 8–12 tools contributes 2,000–4,000 tokens of definition overhead.
32 servers at an average of 3,000 tokens each: 96,000 tokens. On a 128k context window, that is 75% gone at initialization. What remains has to cover the system prompt, conversation history, knowledge base files, and actual task content.
The tool execution overhead comes on top of this. When a tool call returns a result, that result is appended to the context. A server returning a large payload — a database query result, a file listing, a search response — can add another 2,000–10,000 tokens per call.
What 32 Servers Actually Looked Like
The setup was a general-purpose development agent with access to: file system tools, multiple database connectors, several API integrations, git tools, browser automation, and a set of internal tooling servers. Each category seemed justified individually. Collectively, they were a context sink.
Observed effects: the agent began truncating conversation history aggressively after 4–5 turns. Retrieval quality degraded because available space for knowledge base injection dropped below useful thresholds. Long tasks failed to complete because context filled before the final steps.
The config said 32 servers. The context window said 25k tokens remaining.
The Practical Ceiling
Through reduction testing, the functional ceiling for a well-performing agent is 6–10 MCP servers for general tasks, fewer for tasks requiring significant knowledge base injection or long conversation histories.
The selection approach: identify the 6 servers used in 80% of tasks and make those the default set. The remaining servers load on demand or in task-specific configurations.
Every MCP server you connect is a tax. Pay it deliberately.
Comments 0