Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds valuable behavioral context: prices are decimal strings between 0 and 1, status enum values, resolvedOutcome appears only when settlement is unambiguous, and upstream market content is quoted data not instructions. This goes beyond the annotations and helps the agent interpret results safely.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.