Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well beyond the annotations (readOnly=false, openWorld=true, idempotent=true, destructive=false) by disclosing the data flow and safety posture: it returns a link to Stripe's own form, the bank is never given in the chat, and it takes no payment. The connected-account prerequisite is an operational constraint the annotations do not convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.