Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It usefully discloses that the board is soft-reset (machine.reset()) and that reconnection is required afterwards, which is the key operational consequence. But it omits other material effects — that the running program and RAM state are lost, whether it is safe to call mid-execution, and how this differs behaviorally from a hard reset or interrupt.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.