Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide no read-only, idempotency, or destructiveness hints, so the description carries the burden. The description discloses useful behavior: target_amount 'may auto-complete if <= current amount' and status has specific allowed values, plus a Returns line. However, it leaves important mutation semantics unstated, such as whether updates are partial, whether null clears fields, or whether status transitions are validated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.