Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/non-destructive, so 'Read-only' is redundant, but the description adds genuinely new behavior: a named error taxonomy (api_key_required, subscription_required with checkout_url, brand_not_found, round_not_found) plus the note that round_not_found names the stored weeks available. That is real auth/failure context not present in the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.