Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With annotations only covering safety flags, the description adds real behavioral context: it never publishes, it can surface validation warnings, screenshots may be unavailable/truncated and are retryable without recreating the draft, and the result image must be embedded in the final answer. The 'readOnlyHint: false' flag combined with 'idempotent: true' is consistent with an artifact-producing preview rather than a state mutation, so nothing is contradicted.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.