Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, covering the safety profile. The description adds a concrete contract of returned data (schema, geometry, count, capabilities), including the potentially expensive 'total record count' operation, which is useful beyond annotation defaults. No contradictions 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.