Add papers and books to Zotero by DOI, arXiv ID, or ISBN and manage your library
Add papers and books to Zotero by DOI, arXiv ID, or ISBN and manage your library
Valid MCP server (1 strong, 3 medium validity signals). No known CVEs in dependencies. Package registry verified. Imported from the Official MCP Registry.
5 files analyzed · 1 issue found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
This plugin requests these system permissions. Most are normal for its category.
Set these up before or after installing:
Environment variable: ZOTERO_LIBRARY_ID
Environment variable: ZOTERO_API_KEY
Environment variable: ZOTERO_WEBDAV_URL
Environment variable: ZOTERO_WEBDAV_USER
Environment variable: ZOTERO_WEBDAV_PASSWORD
Add this to your MCP configuration file:
{
"mcpServers": {
"io-github-raulsimpetru-zotero-library-mcp": {
"env": {
"ZOTERO_API_KEY": "your-zotero-api-key-here",
"ZOTERO_LIBRARY_ID": "your-zotero-library-id-here"
},
"args": [
"zotero-library-mcp"
],
"command": "uvx"
}
}
}From the project's GitHub README.
An MCP server that lets AI assistants add papers and books to your Zotero library by DOI, arXiv ID, or ISBN — and manage your collections, tags, and items.
add_paper_by_doi — Resolve a DOI via CrossRef and add the paper to Zotero (with duplicate detection)add_papers_by_dois — Batch-add up to 50 papers at onceadd_paper_by_arxiv_id — Add a preprint by arXiv ID (uses DOI when available, falls back to arXiv metadata)add_book_by_isbn — Resolve an ISBN via Open Library and add the book to Zotero (with duplicate detection)search_library — Search your Zotero library by title, author, tag, etc. (falls back to fuzzy matching when the exact search returns no results)get_item_details — View full metadata for any itemget_recent_items — List recently added itemsget_unfiled_items — Get items not in any collectionget_item_fulltext — Get the full text of an indexed PDFget_bibtex — Export BibTeX for one or more items, a collection, or your full library (abstracts stripped by default to save tokens; with optional save_path to write a .bib file directly)get_annotations — List all highlights and annotations on a paper's PDFcreate_annotation — Highlight a text passage in a PDF (searches for the exact text, creates a visible highlight in Zotero's reader, and returns a preview image for verification). Smart overlap handling: exact duplicates update the existing comment; sub-passages get a contrasting highlight color automatically.add_note — Add a note to an itemattach_file — Attach a local file to an itemdownload_pdf — Download a PDF attachment to a local file (useful when Zotero's fulltext index is incomplete)list_collections — List all collections (with nesting)create_collection — Create a new collection (optionally nested under a parent)get_collection_items — Browse items in a collectionadd_to_collection — Add an existing item to a collectionremove_from_collection — Remove an item from a collection (keeps it in your library)list_tags — List all tags in your libraryadd_tags — Add one or more tags to an item (with optional color)remove_tags — Remove tags from an itemdelete_tags — Delete tags from the entire libraryset_tag_color — Assign a color to a tag (appears in Zotero's tag selector)rename_tag — Rename a tag across all items in your libraryverify_items — Re-check recent items against CrossRef to catch bad DOIs or title mismatchesdelete_item — Permanently delete an item from your librarydelete_collection — Permanently delete a collectionclaude mcp add zotero \
-e ZOTERO_LIBRARY_ID=your_library_id \
-e ZOTERO_API_KEY=your_api_key \
-- uvx --from git+https://github.com/RaulSimpetru/zotero-library-mcp zotero-mcp
To use WebDAV file storage (e.g. Synology, Nextcloud), include the WebDAV variables:
claude mcp add zotero \
-e ZOTERO_LIBRARY_ID=your_library_id \
-e ZOTERO_API_KEY=your_api_key \
-e ZOTERO_WEBDAV_URL=https://your-webdav-server.com \
-e ZOTERO_WEBDAV_USER=your_username \
-e ZOTERO_WEBDAV_PASSWORD=your_password \
-- uvx --from git+https://github.com/RaulSimpetru/zotero-library-mcp zotero-mcp
Add this to your claude_desktop_config.json:
{
"mcpServers": {
"zotero": {
"command": "/full/path/to/uvx",
"args": ["--from", "git+https://github.com/RaulSimpetru/zotero-library-mcp", "zotero-mcp"],
"env": {
"ZOTERO_LIBRARY_ID": "your_library_id",
"ZOTERO_API_KEY": "your_api_key",
"ZOTERO_WEBDAV_URL": "https://your-webdav-server.com",
"ZOTERO_WEBDAV_USER": "your_username",
"ZOTERO_WEBDAV_PASSWORD": "your_password"
}
}
}
}
Note: Claude Desktop doesn't inherit your shell's PATH, so you need the full path to
uvx. Find it withwhich uvxin your terminal.
ZOTERO_LIBRARY_ID=your_id ZOTERO_API_KEY=your_key \
uvx --from git+https://github.com/RaulSimpetru/zotero-library-mcp zotero-mcp
| Variable | Required | Description |
|---|---|---|
ZOTERO_LIBRARY_ID | Yes | Your Zotero user or group library ID |
ZOTERO_API_KEY | Yes | API key with read/write permissions |
ZOTERO_LIBRARY_TYPE | No | user (default) or group |
CROSSREF_MAILTO | No | Your email for CrossRef polite pool (faster API access) |
ZOTERO_WEBDAV_URL | No | WebDAV URL for file storage (e.g. https://dav.example.com) |
ZOTERO_WEBDAV_USER | No | WebDAV username |
ZOTERO_WEBDAV_PASSWORD | No | WebDAV password |
Note: If all three
ZOTERO_WEBDAV_*variables are set, file attachments are uploaded to your WebDAV server instead of Zotero's built-in storage. The server automatically appends/zoteroto the base URL, matching Zotero Desktop's behavior.
MIT
mcp-name: io.github.RaulSimpetru/zotero-library-mcp
Be the first to review this server!
by Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
by Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
by mcp-marketplace · Developer Tools
Create, build, and publish Python MCP servers to PyPI — conversationally.
by Microsoft · Content & Media
Convert files (PDF, Word, Excel, images, audio) to Markdown for LLM consumption
by mcp-marketplace · Developer Tools
Scaffold, build, and publish TypeScript MCP servers to npm — conversationally
by mcp-marketplace · Finance
Free stock data and market news for any MCP-compatible AI assistant.