Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnly, idempotent), the description adds substantial behavioral detail: determinism, exact output components, stop-word exclusion, and the specific hash algorithm keccak-256. It also explicitly rules out external calls and ML, giving the agent a precise model of the tool's behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.