Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnlyHint, idempotentHint, destructiveHint=false), so the bar is lower. The description adds genuine non-structured context: the forward-validated, leakage-free methodology, monthly refresh cadence, and crucially the `status: no_rows_yet` empty-state that must not be read as zero error. It stops short of describing auth or rate limits, but nothing contradicts 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.