Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that each entry includes a sha256 manifest, implying integrity verification, and that it returns metadata (URI, name, description, frontmatter) rather than the full body. It explicitly points to read_skill for reading the body, which clarifies that this tool does not return bodies. This is good behavioral context beyond the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.