Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint, covering the safety profile. The description adds valuable behavioral context: threshold default (0.7), returning the two most likely labels, and returning an index for mapping. It also explains the practical meaning of low confidence. This goes beyond annotations without contradicting them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.