Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It usefully discloses the 20MB raw-byte limit, the base64 encoding requirement, and that the result is a new paper_id. It omits permissions/auth requirements, dedup or overwrite behavior on upload, and error conditions for oversized or malformed input.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.