Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the description correctly avoids repeating those. It adds valuable behavior beyond annotations: the presigned URL expires in ~15 minutes and requires re-calling to refresh, the 'contents: null' means 'not parsed yet' rather than an error, and split-produced child files carry parentSplit metadata. These are non-obvious behaviors that help the agent use the tool correctly.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.