Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden, and it discloses little: it never states this is a read-only lookup, what happens if gate_number is outside 1–7 or non-integer, or whether results are static versus dependent on project state. The one piece of behavioral context it does offer – that the return is the 'exact' keys and descriptions – is thin and largely covered by the output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.