Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true is consistent with the description's 'Search' verb, so there is no contradiction. The description adds useful context about what is searched ('name, category, and description') and the scope ('installed server-side'), but it does not describe matching behavior, ordering, pagination, or return format. The annotation already covers the safety profile, so this is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.