Skip to main content
Glama

list_collections

List all collections in your Zotero library. Optionally filter to show only top-level collections, excluding subcollections for a simplified view.

Instructions

List collections in the library.

Args: top_level_only: If true, only return top-level collections (no subcollections).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
top_level_onlyNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It explains the effect of the top_level_only parameter (and implicitly that false returns subcollections), but does not disclose other behaviors such as pagination, sorting, whether empty collections are included, or any read-only guarantee. The 'List' verb implies read-only, but additional context is missing.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Very concise: two sentences in a docstring format. The purpose sentence is front-loaded, and the parameter explanation is clearly separated. No redundant wording or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple (one optional parameter) and an output schema exists, so return types are already specified. The description explains the parameter and the action. It does not mention edge cases or ordering, but those are less critical given the tool's simplicity and the presence of the output schema. Overall, it is sufficient for an agent to invoke correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema shows only a boolean with a default of false and no description. The description adds a precise explanation: 'If true, only return top-level collections (no subcollections).' This completely compensates for the 0% schema coverage and clarifies the default behavior.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states the action ('List') and resource ('collections') with the scope ('in the library'). This distinguishes it from siblings like get_collection_items, which focus on items within collections, and list_tags/list_saved_searches which handle other entities.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives. It does not mention that get_collection_items should be used for items within a collection, nor any conditions or exclusions. The only usage hint is the parameter description, which is not enough.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/virtualarchitectures/Local-Zotero-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server