Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well beyond the annotations: discloses engine rules (10 bps per side, close execution, no slippage model, unsupported syntax rejected), the rate limit of 60 backtests/day/client with a quota field, that failures are explicit when the engine refuses, and crucially that the server may retain the submitted script so private strategies should not be sent. That retention notice also explains the non-read-only, non-idempotent annotation profile rather than contradicting it.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.