Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, full parameter documentation, and annotations covering mutation/openness/idempotency, the description adds the remaining operational context (free, public, sequential dependency on prepare_backing_withdraw). Nothing needed to invoke the tool correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.