Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, readOnlyHint=false and idempotentHint=false, so the safety profile is covered. The description adds real context beyond that: input must be raw base64 (no data-URL prefix), size/format limits, that existing colors and fonts are preserved, and that it returns the saved kit. It does not explain what gets overwritten (which is why destructive is true) or any auth requirements, keeping it out of 5 territory.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.