Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations, the description discloses critical one-time-only behaviors: the secret is shown exactly once, the first data key is shown exactly once, and the 1,000-credit grant is included. It also explains how to use the returned configure block for fetch_data and how to pass secret on account_status and get_topup_link. The 409 error response and next_action are also described.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.