Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are supplied, so the description carries the full burden; it does disclose the required `contacts:read` permission, which is genuinely useful pre-call context. It says nothing about what the response contains, what happens for a missing or inaccessible id, or rate limits, leaving real behavioral gaps for a read tool with no annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.