Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=false, openWorldHint=true, idempotentHint=true and destructiveHint=false, and the description usefully explains why a "read" is not read-only: it refreshes TikTok details when the cached record is stale. It also warns that public targeting data cannot establish effectiveness or sensitive traits, adding interpretive context. It does not cover auth or rate-limit behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.