Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare the safety profile (readOnlyHint=false, idempotentHint=true, destructiveHint=false), and the description adds real context beyond that: the ~7-day expiry, the exact error code and its cause, the required scope renders:write, and the notable side effect that the row's stored URL is updated. That side-effect disclosure is the kind of thing annotations alone would not convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.