Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already carry readOnlyHint=false, destructiveHint=true, idempotentHint=false, and openWorldHint=true. The description adds meaningful behavioral context by disclosing that the tool creates and funds an escrow with USDC and then executes the task. The schema-level description further clarifies that the buyer agent is derived from the authenticated principal, not from arguments. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.