zotio
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ZOTERO_API_KEY | No | Optional API key for Zotero Web API. Required for writes, group libraries, and access while desktop is closed. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
| prompts | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| command_runA | Run one mirrorable Cobra command by its space-separated command path. |
| command_searchA | Search and inspect mirrorable Cobra commands exposed through the command orchestration facade. |
| contextA | Get API domain context: resource taxonomy, auth requirements, query tips, and unique capabilities. Call this first. |
| searchA | Full-text search across synced data. Set fulltext to resolve synced PDF-text hits to parent items. Requires sync first. Large responses are bounded to the MCP tool-result budget. |
| sqlA | Run read-only SQL against local database. Use for ad-hoc analysis, aggregations, and joins across synced resources. Requires sync first. Returns a JSON object with rows, truncated, and row_limit; large responses are bounded to the MCP tool-result budget. |
| workflow_submitA | Submit an inline multi-step workflow executed by zotio's transactional runner — previews unless yes; one approval, one journal run id; steps validated per-command exactly like command_run. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| export-reading-notes | Export annotations/reading notes for an item or collection into a readable digest. |
| inspect-library | Survey the Zotero library: check sync status, then summarize collections, item counts, and notable gaps. |
| prepare-citation-export | Prepare a citation/bibliography export for a collection in a chosen format. |
| prepare-import | Ingest a folder of PDFs into Zotero through the reviewable scan -> resolve -> apply pipeline. |
| prepare-library-health | Assess and safely remediate library health for a scope. |
| sync-vault-safely | Sync the Obsidian/Logseq vault without losing edits, auditing first. |
| synthesize | Summarize an item, or synthesize across a collection, from a bounded context bundle. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| CLI agent context | Machine-readable description of this CLI's commands, flags, and auth (the agent-context payload). |
| Capability registry | Typed registry of each command's operation (read/write/destructive), write target, data sources, and preconditions (live_local_api, web_api_key, synced_store, better_bibtex). |
| Local SQLite schema | The DDL of the local SQLite store, for writing queries against the sql tool. |
| Local archive status | Sync/archive status of the local store: per-resource counts, library versions, last sync time, and schema version. |
| Local freshness | Per-resource sync ages of the local store (age_seconds + human age) so agents know whether a read is fresh enough to trust or act on. |
| Zotero domain context | Durable Zotero API taxonomy, auth model, and query tips for agents. |
TDQS
Scored across 6 tools
Each tool has a clearly distinct purpose: command_run executes, command_search discovers, context provides domain orientation, search handles full-text queries, sql handles structured analysis, and workflow_submit handles multi-step execution. Even where tools touch similar data, their boundaries are explicit.
The naming is readable and all lowercase snake_case, but it mixes conventions: command_run and command_search use a command_ prefix, workflow_submit follows verb_noun, while context, search, and sql are bare names. This makes the overall pattern somewhat unpredictable despite being understandable.
Six tools is a well-scoped set for this server's combined data-query and command-orchestration purpose. Each tool contributes a distinct capability without redundancy or bloat.
The set covers context discovery, search, SQL analysis, command discovery/execution, and workflow submission, which forms a coherent surface. The main gap is that sync is referenced as a prerequisite but no sync or refresh tool is exposed, leaving that operation external to the server.