Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare non-read-only, non-destructive, non-idempotent, closed-world; the description adds real behavior beyond them: an out-of-band human approval step is required, the immediate return is a code plus link rather than a credential, and the token only arrives via repeated connect_account_finish calls. It doesn't mention code expiry or what happens on rejection, which keeps it below 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.