Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false and destructiveHint=false, and the description adds genuinely new behavior: the operation is currently 0 credits and is asynchronous, returning a project id rather than a finished asset. That async/credit context is the key thing an agent can't infer from annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.