---
title: "Zotero MCP: review, setup & limitations · Undominated.ai"
canonical: https://undominated.ai/mcp-servers/zotero-mcp/
description: "Reads the caller’s own Zotero library. It is a community server, not a Zotero product."
---

# Zotero MCP: review, setup & limitations · Undominated.ai

> Reads the caller’s own Zotero library. It is a community server, not a Zotero product.

[← Explore all mcp servers](/mcp-servers/)

RESEARCH LITERATURE / 54yyyu

# Zotero MCP

Reads the caller’s own Zotero library. It is a community server, not a Zotero product.

 [See setup guidance ↓](#setup)[Original source ↗](https://github.com/54yyyu/zotero-mcp)

SOURCE REVIEW

 Reviewed 2026-10-14
 Evidence 5 linked sources
 Publisher 54yyyu
 Licence [MIT ↗](https://github.com/54yyyu/zotero-mcp/blob/075cf2c59842c0f195d25aeef87d3475254ef70b/LICENSE)
 Revision 075cf2c59842
 [Read what was—and wasn’t—checked ↓](#review)

“Search your library, read and annotate papers, add and organize items, and find research by meaning.”

 [54yyyu · upstream description ↗](https://github.com/54yyyu/zotero-mcp/blob/075cf2c59842c0f195d25aeef87d3475254ef70b/README.md) Our analysis follows below.

01 / THE REASONING

## Why this made the selection.

 - The README install line is `uv tool install zotero-mcp-server`.
- The repository description limits the data to the user’s Zotero library, which is a citable personal corpus rather than a web scrape.
- The pinned README connects a Zotero library to an MCP client, reading the local database or using the web API.
- Local writes need a one-time authorization on Zotero 10, or an API key on older versions.

### A good fit for

 - Inspect exact item/attachment metadata and bounded PDF pages before synthesizing a literature claim.
- Find duplicate bibliography entries and review a dry-run merge before any library change.
- Searching and reading a Zotero library that is already on this computer
- Adding items by DOI or file when local write access has been allowed

### Weigh up before choosing

 - This is not published by Zotero. Endpoint and library-format changes are the maintainer’s problem.
- A summary of a paper is not the paper.
- ZOTERO_LOCAL=true selects local reads, not a guaranteed read-only permission boundary. Zotero10+ can authorize local writes, and stored web credentials can provide a hybrid write path.
- ZOTERO_LOCAL_WRITE=false forces writes to the web API rather than disabling every write. Revoking the server-stored key is distinct from clearing Zotero own authorization record.
- SQLite snapshots can lag recent edits; PDF text extraction is unreliable for some equations/tables, so inspect flagged page images when accuracy matters.
- Local mode still needs Zotero's setting that allows other applications on this computer to connect.
- Writes on older Zotero go through the web API and need an API key and library id.
- The README contrasts the MCP server with a skill because every tool schema is sent on every request.
- A pin does not verify transitive dependencies.
- This review did not execute the resource.

02 / THE REVIEW RECORD

## What we actually inspected.

Source review has boundaries. A clear record is more useful than a “safe” badge.

### Material inspected

 - README.md
- 2026-10-14 reread of retained pinned setup/configuration evidence for the specific operational details added in this batch.
- docs/configuration.md
- docs/tools.md
- LICENSE

### Our findings

 - Install line offers uv tool install zotero-mcp-server or pip install zotero-mcp-server.
- Additional configuration/tools docs distinguish direct SQLite reads, local/web/hybrid write paths, snapshot refresh and optional tool groups. Local/write mode and library identity are now explicit.
- Local mode reads the library from zotero.sqlite. Writes go to a running Zotero 10 or through the web API.
- Zotero 7 must be set to allow other applications on this computer to communicate with it. Writes on Zotero 10 need zotero-mcp authorize-local; older versions need ZOTERO_API_KEY and ZOTERO_LIBRARY_ID.
- Semantic search can call OpenAI, Gemini, or Ollama. The README does not claim the MCP path avoids sending tool schemas; it says every schema is sent on every request.

### Not established by this review

 - No Zotero library was opened.
- No authenticated session, installation, permission bypass or package-to-source parity test was performed.
- The server was not started and its tools were not called.
- A pin does not verify transitive dependencies.

The review applies to the material and revision named here. A newer upstream release can change its behavior.

03 / PUT IT TO WORK

## Connect a server deliberately.

[Upstream setup instructions ↗](https://github.com/54yyyu/zotero-mcp/blob/075cf2c59842c0f195d25aeef87d3475254ef70b/README.md)

DOCUMENTED COMMAND

 uv tool install zotero-mcp-server Copy command ↗

Copying does not execute this command. It may retrieve a newer version than the reviewed source.

 - Install zotero-mcp-server with uv and a supported Python 3.10+ interpreter.
- For local use, enable communication with other applications in Zotero settings.
- Run zotero-mcp setup for Claude Desktop, or register zotero-mcp with ZOTERO_LOCAL=true in another supported client.
- Only if writes are intended, authorize the Zotero 10+ local route or configure a suitably scoped web API key and library ID.

### Before you start

 - uv or pip
- A Zotero library

### Documented configuration example

Use the client and authentication context described in the setup guidance. Configuration formats vary between hosts.

 {
 "mcpServers": {
 "zotero": {
 "command": "zotero-mcp",
 "env": {
 "ZOTERO_LOCAL": "true"
 }
 }
 }
} Copy configuration ↗

### Compatibility

Local stdio MCP clients · A local or API-accessible Zotero library

### Implementation

Python

### Transports

stdio · Streamable HTTP · SSE

### Local process, your library

 - Read the configured Zotero library

### Cost model

MIT server. Zotero storage limits are separate.

04 / FOLLOW THE EVIDENCE

## The source trail.

Our notes are separate from the original resource. Check upstream before adopting a new version.

 - [Server documentation ↗](https://github.com/54yyyu/zotero-mcp/blob/075cf2c59842c0f195d25aeef87d3475254ef70b/README.md) Checked 2026-10-14 https://github.com/54yyyu/zotero-mcp/blob/075cf2c59842c0f195d25aeef87d3475254ef70b/README.md Supports: Install command and stated tools, summary, install, configExample, access, limitations, bestFor, review, compatibility, transports
- [Repository licence ↗](https://github.com/54yyyu/zotero-mcp/blob/075cf2c59842c0f195d25aeef87d3475254ef70b/LICENSE) Checked 2026-10-07 https://github.com/54yyyu/zotero-mcp/blob/075cf2c59842c0f195d25aeef87d3475254ef70b/LICENSE Supports: Redistribution terms
- [Additional pinned implementation/setup ↗](https://github.com/54yyyu/zotero-mcp/blob/075cf2c59842c0f195d25aeef87d3475254ef70b/docs/configuration.md) Checked 2026-10-14 https://github.com/54yyyu/zotero-mcp/blob/075cf2c59842c0f195d25aeef87d3475254ef70b/docs/configuration.md Supports: summary, install, configExample, access, limitations, bestFor, review, compatibility, transports
- [Additional pinned implementation/setup ↗](https://github.com/54yyyu/zotero-mcp/blob/075cf2c59842c0f195d25aeef87d3475254ef70b/docs/tools.md) Checked 2026-10-14 https://github.com/54yyyu/zotero-mcp/blob/075cf2c59842c0f195d25aeef87d3475254ef70b/docs/tools.md Supports: summary, install, configExample, access, limitations, bestFor, review, compatibility, transports
- [Server documentation ↗](https://github.com/54yyyu/zotero-mcp/blob/075cf2c59842c0f195d25aeef87d3475254ef70b/README.md) Checked 2026-10-07 https://github.com/54yyyu/zotero-mcp/blob/075cf2c59842c0f195d25aeef87d3475254ef70b/README.md Supports: Install command and stated tools

KEEP COMPARING

## Other approaches to consider.

Related by category or shared topics. These are alternatives to inspect, not a measured quality order.

 [### arXiv MCP Server ↗ Reads arXiv source that has been saved locally and builds BibTeX from arXiv metadata rather than from a PDF scrape.](/mcp-servers/arxiv-mcp-server/)[### OpenAlex MCP Server ↗ Official OpenAlex server for checking whether a citation exists and for counting scholarly works, with profile-edit tools also registered.](/mcp-servers/openalex/)[### Perplexity API MCP ↗ Official search, answer and research tools backed by Perplexity’s Search and Agent APIs, with local and hosted connection options.](/mcp-servers/perplexity/)

 [AI Tools ↗](/tools/)[Skills ↗](/skills/)[Agents ↗](/agents/)[MCP Servers ↗](/mcp-servers/)[Workflows ↗](/workflows/)

## Continue your investigation

 - [Inspect resource evidence](/tools/)
- [Choose a host](/agents/)
- [Inspect reusable workflows](/skills/)
- [Use Undominated data](/api/)
