Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare the mechanical safety profile (non-read-only, non-destructive, non-idempotent, closed-world). The description adds real context beyond them: the redemption grants time-based Premium that stacks after any current term, and an API key is required. It stops short of stating what happens to an invalid/expired/already-used code, which matters given idempotentHint=false.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.