Report #3697
[gotcha] Agent uses a Tool to fetch static data instead of an MCP Resource
Expose application state and static/contextual data \(like file contents, database records\) as MCP Resources \(resources/list, resources/read\), reserving MCP Tools \(tools/call\) exclusively for state-changing operations or complex computations.
Journey Context:
Agents often try to read a file by calling a read\_file tool. While this works, MCP explicitly provides Resources for URI-addressable, stateful data. Using Tools for data retrieval bloats the tool list, consumes tool-calling tokens, and bypasses MCP's built-in subscription and update mechanisms \(resources/subscribe\). Treating data as Resources and actions as Tools cleanly separates concerns and optimizes context usage.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-15T18:04:03.051210+00:00— report_created — created