Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (which only mark non-readOnly, non-idempotent, non-destructive), the description discloses meaningful behavior: default insertion before the end screen, after_node_id controls position, automatic re-linking in linear flows, and the need for explicit logic in branching cases. This goes well beyond the structured annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.