Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover readOnly, idempotent and non-destructive, yet the description adds real substance: counts are deduplicated per address, only confirmed-and-not-stopped sign-ups count, archived transfers yield zero, and addresses are never returned. 'Reading changes nothing' merely restates readOnlyHint, so it is not a full 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.