Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish read-only, idempotent, non-destructive, closed-world behavior, so the description's real contribution is return-shape context: every Rate carries a stable id, a price expressed under one of three visibility modes (full, from_price, request_only), inclusions, and self-reported audience. That visibility-mode detail is genuinely useful and not derivable from the schema. It stops short of saying what happens when a creator has no rate card.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.