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 does not say whether the switch is session-scoped or persistent, whether it changes state for subsequent tool calls, what happens if the ID is invalid, or whether it requires the project to exist. 'Active project workspace' implies global mutable state but the consequences of invoking it are not disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.