Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true, so the description correctly aligns with a non-destructive, read-only operation. It adds behavioral detail beyond annotations by specifying the exact content (top-ups, campaign prices with set-aside and launch-charge semantics, refunds) and the ordering (newest first) plus the running balance after each row. This enriches the agent's understanding of what to expect without contradicting annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.