Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, destructiveHint=false and idempotentHint=false, so the description earns credit by adding real behavior: the SMS delivery, the identity-match requirement, and the enumeration-safety disclosure that 'the answer is the same whether or not the details match.' It could go further on error/rate-limit behavior, but the match-invariance note is genuinely useful beyond structured fields.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.