Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=false and openWorldHint=false, so the agent knows this mutates local state, but the description adds nothing about token consumption semantics — whether a token is single-use, what state gets transferred or overwritten, or what authorization project_id implies. For a state-transfer operation with real side effects, that silence leaves the agent unable to predict consequences.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.