Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the read-only, idempotent, non-destructive profile, so the description must add something else — and it does: the recommended polling cadence, the terminating condition (`terminal` field), and what each terminal outcome carries (confirmation + signed receipt for delivered, refund txid + signed receipt for refunded, plus refund_failed). That is meaningful context beyond the annotations. It does not say whether polling too fast is throttled or how long orders typically take.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.