Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate this is a non-read-only, non-idempotent operation. The description adds that it returns the new invoiceId and that line items are optional, which is useful. It does not detail side effects or error conditions, but for a create operation the behavior is largely captured.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.