Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (openWorldHint, idempotentHint, destructiveHint), the description discloses important behavioral traits: it only works on the authenticated account's own messages, cannot edit media (text-only), explains parse_mode behavior including rich message dialect auto-detection, and describes success/error response structures with specific fields. It also notes that 'parse_mode="rich" cannot be combined with files' in the schema, but the description adds operational context about response formats and error scenarios, significantly enhancing transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.