Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the whole burden, and it does disclose the single most important trait: this is asynchronous and returns a job_id that must be polled via get_job. It says nothing about cost/credits, expected generation latency, output audio format or length, or whether the request is billed even on failure — gaps that matter given the presence of get_balance and list_pricing siblings.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.