Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be spelled out, and the description still gives the useful shape (schema, table name, dialect, warnings). Together with the annotations and full parameter coverage, an agent has enough to invoke it correctly, with only minor gaps around limits (e.g. only-first-table handling is in the schema, not the description).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.