Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the description does not need to repeat those. It adds meaningful behavioral context: the trigger condition (must follow discovery_signup), the fact that the user receives a 6-digit code by email, and that an API key is returned on success. This goes beyond annotations, though it does not cover failure modes or rate limits, which are absent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.