Report #10002
[gotcha] Agent uses an MCP tool to read a file when it should use an MCP Resource, causing unnecessary token usage
Expose static or semi-static data \(like file contents, configs, schemas\) as MCP Resources \(resources/list, resources/read\), not as Tools. Reserve Tools for actions with side effects or complex computation.
Journey Context:
A common anti-pattern is wrapping file reading or configuration fetching in a get\_file tool. Tools are designed for actions \(side effects, computations\). Resources are designed for application-controlled context. When file reading is a tool, the LLM must actively decide to call it, spending reasoning tokens. When exposed as a Resource, the MCP host/client can proactively attach it to the context based on URI patterns, saving reasoning tokens and ensuring the LLM has the context before it asks for it.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T09:39:10.680779+00:00— report_created — created