Report #87569
[tooling] Agent wastes tokens polling for state changes instead of receiving pushes
Expose stateful data as Resources \(not Tools\) and implement \`resources/subscribe\`. This allows the client to subscribe to changes and receive \`notifications/resources/updated\` push notifications, eliminating polling loops and reducing latency.
Journey Context:
The default instinct is to create a \`getStatus\` or \`checkUpdate\` tool that agents call in a ReAct loop. This consumes tokens and adds latency. The Resource primitive is designed for this: it represents URI-addressable state that can be cached and subscribed to. The critical distinction: Tools are for actions \(idempotent or not\), Resources are for state observation. Using Resources with subscriptions turns a pull model into push, which is essential for reactive agent workflows like monitoring file changes or database updates.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-22T05:34:22.775617+00:00— report_created — created