Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, making safety clear. The description adds useful behavioral context: it validates against a 'draft-07 subset' and lists supported keywords, which helps the agent understand limitations. However, it does not disclose performance considerations (e.g., large schemas) or error handling beyond returning errors with dot-notation paths.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.