Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well beyond the readOnly/openWorld annotations: 15-minute expiry, credential-free GET on the returned URL, 409 behavior with retry_after_seconds and generation_deferred_until, and the terminal generation_failed code. This is unusually rich error and lifecycle disclosure that annotations cannot carry.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.