Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds genuinely useful context beyond that: '$0 cost (pure regex/heuristic)' discloses the method and cost profile, 'POST endpoint — requires draft_text in body' clarifies transport, and 'Uses NZXplorer historical NZX language and sentiment data' identifies the data source driving the analysis.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.