Zotero MCP

Connects a Zotero library to Claude and other agents: search papers, annotate, cite, and search by meaning

  • 5,884 ★ on the repository
  • Last commit
  • MIT
MCP server

Extended access

Why this level

  • Can write to the Zotero library: add, merge, and remove entries
All reasons and checks

54yyyu/zotero-mcp

Install

Manual install

uv tool install zotero-mcp-server

Can be replaced with pip install zotero-mcp-server. Needs Python 3.10 or newer.

Access and checks

How we review

Extended accessThe tool runs code or makes network calls and only reads external data.

  • Can write to the Zotero library: add, merge, and remove entries

This is third-party code. Review the repository files before installing.

What it does

The server reads and writes a Zotero library: it searches by title, author, tag, or collection, by full text, or by meaning through embeddings. It reads metadata, BibTeX, full text, and individual PDF pages, and can send page images when text extraction garbles formulas and tables. It places highlights and area boxes on exact words, equations, or figures, writes notes, and reads annotations already made in Zotero. It can add papers by DOI, URL, ISBN, or BibTeX, merge duplicates, and manage collections and tags. It works locally against zotero.sqlite or through Zotero's web API.

Who it is for. For researchers and students who keep a Zotero library and want to discuss papers directly with an agent.

Good fit when

  • You need to find papers in your library by topic or keywords
  • You need a summary or breakdown of a specific paper
  • You need to place annotations on exact PDF passages or gather citations

Not a fit when

  • You do not use Zotero to store your papers
  • You only need read-only access without a shell, in which case the plain MCP server is enough without the agent skill

Example request

Find papers on attention mechanisms in my library and highlight their key findings

MCP

Transport
stdio
Authentication
key is optional

Environment variables

ZOTERO_LOCAL
Enables local mode against zotero.sqlite instead of the web API
ZOTERO_API_KEY secret
Zotero web API key, needed for writes on Zotero versions older than 10
ZOTERO_LIBRARY_ID
Zotero library ID for access through the web API

Limitations

Local mode requires enabling the setting in Zotero 7 or newer that allows other applications to talk to it. Writes on older Zotero versions need a web API key and library ID. Semantic search and PDF handling install as separate optional extras.

How to disable. Remove the zotero entry from your client's MCP configuration, or uninstall the package with uv tool uninstall zotero-mcp-server.

FAQ

How does the agent skill differ from the MCP server?

The MCP server sends every tool's schema on each request, while the skill for shell-capable agents costs a few dozen tokens and expands only when actually needed.

Does Zotero need to stay running?

For local mode yes, the Zotero app must be open with the local API permission enabled.

Discussion

No questions or reviews yet.

PubMed MCP searches biomedical papers, retrieves available full text and formats citations with retraction and correction notices.

MCP serverExtended access168Repository stars

An MCP server for searching and downloading academic papers from arXiv, PubMed, bioRxiv, Semantic Scholar and other open sources

MCP serverExtended access3.1KRepository stars

An MCP server and skill for Sciverse paper search: metadata, semantic retrieval, citations and full text for agents.

MCP serverExtended access130Repository stars

An MCP server for OpenAlex: 31 tools for papers, citations, authors and journals, plus a skill with a small CLI for Claude Code.

MCP serverMinimal access60Repository stars
Official

A CLI and MCP server that extracts structured knowledge from documents: graphs, hypergraphs, and fact search with sources

CLIExtended access4.2KRepository stars

MCP server that connects Claude Code and Codex to an open R or Python session in RStudio and Positron, where your data lives

MCP serverBroad access372Repository stars

README in short

The README walks through a quick start: install via uv or pip, enable the local API in Zotero's settings, then either auto-configure Claude Desktop with zotero-mcp setup or edit the config by hand. It explains the choice between the full MCP server for shell-less clients and the lightweight zotero-cli agent skill for Claude Code, Cursor, Codex, Windsurf, Gemini CLI, and others. A table lists optional extras for semantic search, PDF handling, and Scite citation checks. MIT licensed.

README badge

Report a problem