Zotero Toolkit
FreeNot checkedMCP server giving any MCP client read and write access to a Zotero library — search items, read notes, browse collections, create and edit references. Works wit
About
MCP server giving any MCP client read and write access to a Zotero library — search items, read notes, browse collections, create and edit references. Works with Claude, Cursor, Zed, VS Code and local models. Includes a standalone CLI that needs no AI at all.
README
Tools for Zotero: MCP servers, Zotero plugins and agent skills for reference management and systematic/scoping review workflows.
Built for real review work - screening decisions, exclusion logging, PRISMA record accounting - rather than as a demo.
What's here
| Component | Runs where | Status |
|---|---|---|
| mcp/zotero-mcp-server | Any MCP client, or as a standalone CLI | v1.2.0 |
| plugins/pdf-file-attacher (AutoAttach) | Inside the Zotero desktop app (.xpi) |
v1.0.1 |
| agent-skills/ | Loaded by an AI agent | planned |
| core/ | Shared libraries | not yet needed |
| docs/ | Cross-package documentation | in progress |
zotero-toolkit/
├── mcp/ # MCP servers (npm workspaces)
│ └── zotero-mcp-server/ # 24 tools + 3 prompts over the Zotero Web API, plus a CLI
├── plugins/ # Zotero .xpi add-ons, using Zotero's internal API
├── agent-skills/ # research workflows for AI agents
├── core/ # shared libraries, once >1 package needs them
└── docs/ # cross-package documentation
AutoAttach matches downloaded PDFs to the items you already have by reading what is inside each file — DOI, arXiv ID, embedded metadata, first-page text — rather than comparing filenames. Every match carries the evidence it was made on, and nothing is written until you confirm:
It runs inside Zotero, and every command ends in that same reviewed dialog:
The review dialog open over the Zotero library window
The item context menu, with the online commands carrying a globe icon and an Online label
Two different integration points, deliberately:
- MCP servers talk to the Zotero Web API over HTTPS. They work from any machine against your synced library and need no desktop app, but only see items that have synced.
- Plugins run inside Zotero using its internal API. They work offline and can touch local files and attachments, but must be installed in the app.
Quick start
The MCP server is the finished piece. Requires Node.js 18+.
git clone https://github.com/adolinjonathan-bot/zotero-toolkit.git
cd zotero-toolkit
npm install
npm run build
npm run verify # 7 checks, no credentials needed
Then follow mcp/zotero-mcp-server/README.md to create a Zotero API key and connect a client - Claude Desktop, Claude Code, Cursor, Zed, Continue, VS Code, LM Studio, or a local open-source model.
It also runs as a plain CLI with no AI involved at all:
node mcp/zotero-mcp-server/dist/cli.js search "youth employability" --limit 10
Repository conventions
npm installonce at the root; workspaces covermcp/*andcore/*.agent-skills/is documentation, not code, and is deliberately excluded.npm run buildandnpm run verifyfan out across every package.- Build output (
dist/,build/,*.xpi) is not committed. Plugin.xpifiles ship as GitHub Release assets so each download traces to a source commit. - Every package carries its own README; this file stays an index.
Licence
MIT - see LICENSE.
Credits
Initial implementation generated with Claude, then debugged, hardened and tested against a live research library.
Installing Zotero Toolkit
This server has no published package — it is built from source. Open the repository and follow its README.
▸ github.com/adolinjonathan-bot/zotero-toolkitFAQ
Is Zotero Toolkit MCP free?
Yes, Zotero Toolkit MCP is free — one-click install via Unyly at no cost.
Does Zotero Toolkit need an API key?
No, Zotero Toolkit runs without API keys or environment variables.
Is Zotero Toolkit hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Zotero Toolkit in Claude Desktop, Claude Code or Cursor?
Open Zotero Toolkit on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
GitHub
PRs, issues, code search, CI status
by GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
by mcpdotdirectAmap Maps Mcp Server
MCP server for using the AMap Maps API
by duxiaohuiSupabase
Database, auth and storage
by SupabaseEverything
Reference / test server with prompts, resources, and tools.
Git
Tools to read, search, and manipulate Git repositories.
Sequential Thinking
Dynamic and reflective problem-solving through thought sequences.
Time
Time and timezone conversion capabilities.
Compare Zotero Toolkit with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All development MCPs
