Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnly, idempotent), the description discloses that the tool always returns the full set of cost, price, profit, marginPct, and markupPct regardless of which inputs are supplied. This behavioral detail is not captured in the annotations and adds meaningful transparency about output completeness.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.