# A Declared Capability Costs You Every Turn, Not Every Use ## Claim Making a tool available to an agent charges you on every turn whether or not you call it, so capability surface has to be budgeted separately from capability use. <!-- atomicity: 1 idea ✓ --> ## Evidence **Source**: [[3. Resources/Readwise/Articles/Drupal AI Learners Club - 2026-07-31 - Getting AI to Read Your Docs With Jurgen Haas]] — Jürgen Haas, ECA maintainer, measuring his own MCP server > [!quote] > It's like a toll. Every turn creates that cost. Every MCP tool carries a schema the agent must know, and the full set of schemas accompanies **every** request to the model — not only requests that invoke a tool. Haas measured it: his three-tool ECA server costs roughly 600 tokens per turn, while a 130-tool server he had enabled cost roughly **45,000 tokens per turn**. He discovered this only after a trivial task burned 250,000 tokens and he went looking for why. The mitigation is structural rather than behavioural, and it works because the two gates have different lifetimes. Whether a server is *enabled* is fixed in agent configuration at launch. Whether its tools are *permitted* can vary per agent. So the pattern is: enable your servers, deny all tools by default, and grant permissions only to a specialist sub-agent that needs them. That change alone took his per-turn cost from around 50,000 tokens to around 1,500. His candour about the discovery is the reason to trust the number: *"everyone including myself is mixing that up."* He understood the distinction only when he measured for the talk. ## Scope & conditions - **Holds** wherever a declared capability's description must accompany every request — MCP tool schemas today, and any successor protocol with the same shape. - **Holds** most sharply when tool count is high and invocation rate is low, which is the common case for broadly-provisioned agents. - **Breaks** if a protocol caches or references schemas out of band rather than resending them, which would collapse the toll toward zero. This is a plausible near-term fix, so the note has a shelf life tied to protocol design rather than to model capability. - **Breaks** where permissions cannot be separated from configuration; the mitigation depends on that separation, which is not guaranteed across agent implementations. Haas verified it in OpenCode and explicitly did not verify it elsewhere. - **Weakens** as a decision rule below roughly three lookups per session, which is where he puts the break-even for using an MCP server at all versus plain fetching. ## Links - [[AI Agent Safety MOC]] — connects always-on declared capability costs to agent architecture and safety boundaries. - [[3. Resources/Permanent Notes/Effort Is a Cost-Quality Dial That Subsumes Prompt Complexity]] — because contrasts on altitude: effort is a per-request dial you set, while capability surface is a fixed overhead you pay before any request is made. The two are different lines on the same bill and are easy to conflate. - [[3. Resources/Permanent Notes/Vague Prompts Are Expensive Specificity Cuts AI Error and Cost Together]] — because extends: both identify a token cost that stays invisible until someone measures it, one at the prompt and one at the tool manifest. - [[3. Resources/Permanent Notes/Tool-Interface Choice Shapes Agent Architecture More Than Model Choice]] — because extends: tool surface is an architectural decision, and this puts a measurable price on it. - [[3. Resources/Permanent Notes/The Harness Now Outpaces the Model as the Source of Agent Capability Gains]] — because applies-in: the harness's configuration, not the model, is what determines this cost. - [[AI Cost & Tokenomics MOC]] — because applies-in: the missing altitude in the existing FinOps picture, which covers request-level and dial-level control but not standing capability overhead. - [[3. Resources/Permanent Notes/Interface Surface Area Costs Selection Accuracy Not Just Tokens]] — the second, less visible cost of the same surface: selection quality degrades as the catalogue grows, independent of the token toll - [[3. Resources/Permanent Notes/Agent Memory Is Written Far More Often Than It Is Read]] — because extends: the token toll is the visible cost of carried surface; the never-read memory file is the invisible one, paid in drift against a codebase nobody reconciles it with. ## Implications - The practical audit is one question: how many tools does each enabled MCP server expose, and do you invoke them often enough to justify carrying their schemas on every turn? - The design rule that follows for tool authors is to keep tool counts small, and to consider exposing a single tool that reports what other tools exist rather than declaring them all up front. - Generalises past MCP: any system where declaring a capability has a fixed per-interaction cost will reward provisioning narrowly and granting broadly only where used. ## Open Questions - Does the deferred-discovery pattern — one tool that lists the others — actually reduce total cost, or merely move it into the sessions that need it? - What is a reasonable tokens-per-tool budgeting heuristic, given schema verbosity varies widely between servers? - Is the three-lookup break-even robust, or does it shift substantially with tool count and page size? Haas asserts it without showing the arithmetic. ## Source - [[3. Resources/Readwise/Articles/Drupal AI Learners Club - 2026-07-31 - Getting AI to Read Your Docs With Jurgen Haas]] — the cost A / cost B distinction, the 600-vs-45,000 measurement, and the two-gate permission mitigation