Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden for behavioral disclosure. 'List all compositions' clearly indicates a non-mutating read operation, and 'in the project' scopes the action. It does not explicitly confirm absence of side effects or describe return details, but the wording is sufficiently transparent for a zero-parameter list operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.