Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already tells the agent this is a safe, non-mutating call, so the bar is lower. The description adds real value by naming the categories of information returned, which compensates somewhat for the missing output schema, but it says nothing about behavior with invalid addresses, maximum recipient count, or partial/empty results.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.