Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds substantial context beyond the readOnly/idempotent annotations: offline operation, that rejections name WHICH check failed, the shape of returned fields (normalised and print forms, country, SEPA membership, bank identifier), plus auth/pricing mechanics (x402 on Base, prepaid x-credit-token header, 1 free call/day, no API key). This is exactly the behavioural detail annotations cannot carry.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.