zotero-pdf-mcp
Provides access to a Zotero library via the web API, including searching items, retrieving metadata and attachments, extracting text from PDFs, and rendering PDF pages as images.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@zotero-pdf-mcpFind the Vujanovic 2017 paper, pull the text, then render pages 4 and 5 as images."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
zotero-pdf-mcp
An MCP server that gives Claude access to a Zotero library over the web API, including the ability to look at the PDFs — rendered pages, not just extracted text, so figures, gels, micrographs and layout are visible.
Existing Zotero MCP servers return extracted text only. This one renders pages to PNG and returns them as image content, which is the difference between an assistant that can read a paper's prose and one that can read its figures.
Design constraints
Web API only. Talks to
api.zotero.organd never to the local Zotero client onlocalhost:23119. If your Zotero is set to download attachments on demand, going through the local client would make it fetch and retain files you have deliberately offloaded to Zotero storage. This server cannot cause that.Nothing written to disk. PDF bytes are held in memory, capped at four documents, and discarded when the process exits.
Read-only. Every request is a GET; there are no write operations of any kind. A read-only API key is sufficient.
The credential never leaves Zotero. File downloads redirect to a storage host; the server re-issues that request without the Zotero headers so your API key is not forwarded to a third party.
Attachments stored in Zotero File Storage can be fetched. Linked files cannot —
their bytes only ever existed on the machine that added them. zotero_item_info
reports which is which.
Related MCP server: mcp-zotero
Tools
Tool | Purpose |
| Search the library; returns item keys, authors, years, titles. |
| Full metadata for one item, plus its attachments and whether each is fetchable. |
| Extract text from an item's PDF. Cheap; use this first. |
| Render pages as images. Max 8 per call. This is the one that shows figures. |
Configuration
Add to ~/Library/Application Support/Claude/claude_desktop_config.json inside
the existing mcpServers object:
"zotero-pdf": {
"command": "/opt/homebrew/bin/uvx",
"args": ["--from", "git+https://github.com/USER/zotero-pdf-mcp", "zotero-pdf-mcp"],
"env": {
"ZOTERO_API_KEY": "your_read_only_key",
"ZOTERO_LIBRARY_ID": "your_numeric_userid",
"ZOTERO_LIBRARY_TYPE": "user"
}
}Use the absolute path to uvx (which uvx) rather than the bare command —
GUI-launched processes often do not inherit your shell's PATH, and that is the
most common reason an MCP server silently fails to start.
For a private repo, use git+ssh://git@github.com/USER/zotero-pdf-mcp so the
fetch authenticates with your SSH key.
Environment
Variable | Meaning |
| Read-only key from https://www.zotero.org/settings/keys/new |
| Your numeric userID, printed at the top of the keys page. Not your username. |
|
|
Never commit the key. It belongs in the config's env block and nowhere else.
Usage
Ask for text before pictures — rendering pages is far more expensive than extracting text:
Find the Vujanovic 2017 paper in my library, pull the text, then show me the figures from pages 4 and 5.
Licence
MIT.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Academic literature search, retrieval, and private library management on top of OpenAlex.
Search arXiv/Semantic Scholar/OpenAlex + medical evidence (PubMed/Europe PMC) + LaTeX/PDF tools.
Federated search of books and papers, BibTeX/RIS citations, open-access retrieval and reading.
Generate and read PDFs for AI agents: a generate_pdf and a read_pdf tool, priced per document.
Related MCP Servers
- MIT
- AlicenseCqualityDmaintenanceEnables interaction with Zotero libraries for searching, managing collections, items, tags, and attachments, plus optional semantic search across PDFs via local embeddings.382MIT
- FlicenseBqualityDmaintenanceEnables AI assistants to search, cite, and manage research references directly from a Zotero library.97
- AlicenseAqualityBmaintenanceEnables LLM-powered tools to interact with Zotero academic libraries, including searching papers, adding arXiv papers, updating metadata, and generating literature reviews.101MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/ts387/zotero-pdf-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server