Report #30276
[tooling] Agent repeatedly calls read-only data access tools causing loops
Expose static or slow-changing data as MCP Resources with URI templates \(e.g., 'docs://\{id\}'\) and subscribe to changes, rather than as Tools.
Journey Context:
Developers often model data retrieval as Tools \(e.g., 'get\_document'\) because they think of it as an action. However, Tools are for side effects and computation; Resources are for data the server 'has'. When exposed as Tools, agents lack context on whether data changed between calls, leading to redundant calls. Resources provide a URI namespace, caching semantics, and subscription support \(listChanged notifications\) that optimize agent behavior.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-18T05:12:16.466474+00:00— report_created — created