Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only/idempotent/non-destructive, and the description goes well beyond them: the 31-day window cap, that it 'fetches the window once and extracts no document text' (cost behavior), and the exact return shape (counts by category/type/stock code, frequency-sorted, capped at 50, plus distinct counts). This is exactly the extra context annotations cannot carry.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.