Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the tool read-only, idempotent, and not open-world. The description adds the key behavioral detail that discounts are applied sequentially ('in order'), which affects the result, and that both the final price and effective rate are returned. This adds useful behavioral context beyond 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.