zoterolisted
Install: claude install-skill alex-roc/zotero-agent
# Zotero control (via the `zot` CLI)
You control a running Zotero instance through **`zot`**, a stdlib-only Python CLI.
- **Reads** go through Zotero's local HTTP API (fast, GET-only).
- **Writes** go through the `zotero-agent` bridge plugin: `zot exec` runs arbitrary
privileged Zotero JS in-process. This is the only complete local write path
(Zotero's HTTP API is read-only by design; see `references/setup.md`).
`zot` is on `PATH` after install (`uv tool install zotero-agent`,
`brew install alex-roc/tap/zotero-agent`, or the repo's `install.sh`). If the bridge endpoint is not answering, the user must install the
plugin XPI in Zotero — it is published only here (permanent link):
`https://github.com/alex-roc/zotero-agent/releases/latest/download/zotero-agent-bridge.xpi`
→ *Tools → Plugins → gear → "Install Plugin From File…"*. Do not try to build it.
## First: confirm the setup is live
Run `zot ping`. It must show the local API up, the bridge endpoint answering
`1+1 == 2`, a known userID, and the `zot` version. If anything fails, point the
user to `references/setup.md` — do **not** try to work around a missing plugin.
> Beyond this skill (Claude Code), `zot mcp` exposes the same operations as an
> MCP server for Claude Desktop, Codex CLI, Gemini CLI and Cursor. See the repo's
> `docs/` and website for per-client setup; the safety rules below apply equally.
## Reading (prefer the fast API)
```bash
zot search "bolivia" --limit 25 # full-text search
zot search "