Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnly/idempotent annotations, it discloses two non-obvious behaviors: the per-click id is deliberately withheld (only existence is reported), and an empty result means no ad-driven conversation was recorded rather than a failure. It also surfaces the required auth scope [marketing:read], which is exactly the kind of context annotations cannot carry.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.