Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With annotations only covering the safety profile (readOnly=false, destructive=false), the description adds substantial beyond-schema context: it saves a draft with a confirmUrl rather than sending in the person's name, is refused if their policy disables it, is labelled 'via <app name>', is not E2E encrypted, and rejects sensitive content like PINs/bank/health data. This is unusually rich behavioral disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.