Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnlyHint=false, destructiveHint=false, openWorldHint=false), it discloses that the operation is durable/asynchronous, requires expectedRevision concurrency control, surfaces slug conflicts as errors, and enforces editor scoping. It also clarifies that data is read via the maintained extractor rather than from caller input, which is exactly the kind of behavior an agent cannot infer from the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.