Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare non-read-only, non-destructive, non-idempotent, open-world. The description adds real behavioral context beyond them: it copies (persists) the image into the account rather than referencing it, and returns a storage path for embedding in HTML or module data. It omits auth requirements, dedup/idempotency nuance, and size limits referenced only in the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.