Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter pure function with no output schema, the description covers input encoding, output type, and supported code pages, which is close to sufficient. It falls short on edge-case behavior (invalid hex, decoding failures), which matters more here because no annotations exist to cover it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.