Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of disclosing behavior. It goes beyond simple 'computes statistics' by explaining that grouping commas and currency are handled, non-numeric rows are excluded and counted, and the output includes count, min, max, mean, median, sum. This provides concrete expectations about data cleaning and output content, which is valuable behavioral context. However, it doesn't disclose edge cases like empty columns or error behavior, but for a stats function with these details, a 4 is justified.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.