Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well beyond the annotations (readOnlyHint, openWorldHint) by disclosing the pricing model ($0.002 USDC, x402, Base/Solana/Arc, failed calls free), the character limit, the placeholder behavior for unknown data, the fact that the output is a draft that must be reviewed before sending, and the tone/language/intent options. This is rich behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.