Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well beyond the annotations (readOnlyHint=false, destructiveHint=true, idempotentHint=true, openWorldHint=true) by disclosing the webhook side effect ('fires the template.updated webhook'), the return payload, the partial-update semantics ('replacing only the fields given'), and a hard scope limit ('cannot move the preset to another project'). No contradiction with destructiveHint, since sizes/formats replace the prior list.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.