Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=false and destructiveHint=false, so the description doesn't need to restate those. It adds valuable behavioral context: providing qr_id updates the file destination while preserving the existing short link and QR code, and the tool both creates and updates. This goes beyond what the annotations alone convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.