Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering safety and idempotency. The description adds no behavioral context beyond what annotations declare—no information about authentication needs, rate limits, error conditions, or what 'contents' means (e.g., raw text, structured data). With annotations present, the bar is lower, but the description adds minimal value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.