Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds value beyond annotations by explaining that each call runs independently with its own billing, returns per-call status/data/cost/duration, and that the batch wrapper is free. This clarifies behavior and cost implications not covered by readOnlyHint/destructiveHint/idempotentHint. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.