Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint, so the trailing 'Read-only' is redundant, but the description adds real behavioral context the annotations cannot: the three-state lifecycle, that 'ready' yields mediaUrls, and that 'expired' requires a fresh link. No auth or rate-limit notes, but the state machine is the important disclosure here.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.