Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full load and does disclose key traits: it executes live through the same checker (so behavior mirrors the real tool), it costs nothing, and the input is a fixed fictional fintech with deliberately weak answers. It omits latency/caching behavior for a live run, which is the main remaining gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.