
Zotero Library Mcp
Wraps the Zotero Web API so Claude can manage your reference library through natural language. You get tools for adding papers by DOI or arXiv ID, books by ISBN, plus full CRUD on collections, tags, and annotations. The crossref and Open Library lookups happen server-side, so metadata gets normalized before hitting Zotero. Includes fulltext extraction from PDFs, BibTeX export, and the ability to create highlights with automatic duplicate detection. Supports both Zotero's native storage and WebDAV backends. Reach for this when you're doing literature review or research work and want Claude to handle the mechanical parts of bibliography management while you focus on reading and synthesis.
- tools
- 49
- auth
- Secret needed
- transport
- STDIO
- env vars
- 5
- last updated
- Mar 6, 2026
Tools
49 toolsPublic tool metadata for what this MCP can expose to an agent.
add_paper_by_doiResolve a DOI via CrossRef and add the paper to Zotero (with duplicate detection)
Resolve a DOI via CrossRef and add the paper to Zotero (with duplicate detection)
No parameter schema in public metadata yet.
add_papers_by_doisBatch-add up to 50 papers at once
Batch-add up to 50 papers at once
No parameter schema in public metadata yet.
add_paper_by_arxiv_idAdd a preprint by arXiv ID (uses DOI when available, falls back to arXiv metadata)
Add a preprint by arXiv ID (uses DOI when available, falls back to arXiv metadata)
No parameter schema in public metadata yet.
add_item_from_metadataCreate any supported Zotero item type from validated manual metadata
Create any supported Zotero item type from validated manual metadata
No parameter schema in public metadata yet.
add_book_by_isbnResolve an ISBN via Open Library and add the book to Zotero (with duplicate detection)
Resolve an ISBN via Open Library and add the book to Zotero (with duplicate detection)
No parameter schema in public metadata yet.
list_librariesDiscover the API key owner's personal library and shared group libraries, with IDs and key permissions
Discover the API key owner's personal library and shared group libraries, with IDs and key permissions
No parameter schema in public metadata yet.
search_librarySearch your Zotero library by title, author, tag, etc., paginated via start/limit (falls back to fuzzy matching when the exact search returns no results)
Search your Zotero library by title, author, tag, etc., paginated via start/limit (falls back to fuzzy matching when the exact search returns no results)
No parameter schema in public metadata yet.
get_item_detailsView full metadata for any item
View full metadata for any item
No parameter schema in public metadata yet.
get_recent_itemsList recently added items
List recently added items
No parameter schema in public metadata yet.
get_unfiled_itemsGet items not in any collection
Get items not in any collection
No parameter schema in public metadata yet.
search_fulltextSearch Zotero metadata and indexed full text
Search Zotero metadata and indexed full text
No parameter schema in public metadata yet.
find_duplicatesFind duplicate items by DOI, ISBN, or normalized title
Find duplicate items by DOI, ISBN, or normalized title
No parameter schema in public metadata yet.
list_attachmentsList every attachment and choose a specific PDF key
List every attachment and choose a specific PDF key
No parameter schema in public metadata yet.
health_checkVerify library credentials, access, and storage configuration
Verify library credentials, access, and storage configuration
No parameter schema in public metadata yet.
get_item_fulltextReturn bounded plain text from Zotero's index or a PDF, without leaking temporary paths
Return bounded plain text from Zotero's index or a PDF, without leaking temporary paths
No parameter schema in public metadata yet.
get_bibtexRead-only BibTeX/BibLaTeX export for items, a collection, or the full library
Read-only BibTeX/BibLaTeX export for items, a collection, or the full library
No parameter schema in public metadata yet.
save_bibtexSave an export to an authorized local path
Save an export to an authorized local path
No parameter schema in public metadata yet.
get_annotationsList all highlights and annotations on a paper's PDF
List all highlights and annotations on a paper's PDF
No parameter schema in public metadata yet.
create_annotationHighlight 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)
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)
No parameter schema in public metadata yet.
add_noteAdd a note to an item
Add a note to an item
No parameter schema in public metadata yet.
list_notesManage existing notes
Manage existing notes
No parameter schema in public metadata yet.
update_noteManage existing notes
Manage existing notes
No parameter schema in public metadata yet.
delete_noteManage existing notes
Manage existing notes
No parameter schema in public metadata yet.
update_annotationEdit or remove annotations
Edit or remove annotations
No parameter schema in public metadata yet.
delete_annotationEdit or remove annotations
Edit or remove annotations
No parameter schema in public metadata yet.
attach_fileAttach a local file over stdio or a ChatGPT file input over HTTP
Attach a local file over stdio or a ChatGPT file input over HTTP
No parameter schema in public metadata yet.
download_pdfReturn a remote-safe MCP file resource
Return a remote-safe MCP file resource
No parameter schema in public metadata yet.
save_pdfSave a PDF to an authorized local path
Save a PDF to an authorized local path
No parameter schema in public metadata yet.
list_collectionsList all collections (with nesting)
List all collections (with nesting)
No parameter schema in public metadata yet.
create_collectionCreate a new collection (optionally nested under a parent)
Create a new collection (optionally nested under a parent)
No parameter schema in public metadata yet.
get_collection_itemsBrowse items in a collection, paginated via start/limit
Browse items in a collection, paginated via start/limit
No parameter schema in public metadata yet.
add_to_collectionAdd an existing item to a collection
Add an existing item to a collection
No parameter schema in public metadata yet.
remove_from_collectionRemove an item from a collection (keeps it in your library)
Remove an item from a collection (keeps it in your library)
No parameter schema in public metadata yet.
rename_collectionReorganize collections
Reorganize collections
No parameter schema in public metadata yet.
move_collectionReorganize collections
Reorganize collections
No parameter schema in public metadata yet.
list_tagsList all tags in your library
List all tags in your library
No parameter schema in public metadata yet.
add_tagsAdd one or more tags to an item (with optional color)
Add one or more tags to an item (with optional color)
No parameter schema in public metadata yet.
remove_tagsRemove tags from an item
Remove tags from an item
No parameter schema in public metadata yet.
delete_tagsDelete tags from the entire library
Delete tags from the entire library
No parameter schema in public metadata yet.
set_tag_colorAssign a color to a tag (appears in Zotero's tag selector)
Assign a color to a tag (appears in Zotero's tag selector)
No parameter schema in public metadata yet.
rename_tagRename a tag across all items in your library
Rename a tag across all items in your library
No parameter schema in public metadata yet.
unset_tag_colorRemove a tag color without deleting the tag
Remove a tag color without deleting the tag
No parameter schema in public metadata yet.
verify_itemsRe-check recent items against CrossRef to catch bad DOIs or title mismatches
Re-check recent items against CrossRef to catch bad DOIs or title mismatches
No parameter schema in public metadata yet.
delete_itemPermanently delete an item from your library
Permanently delete an item from your library
No parameter schema in public metadata yet.
delete_collectionPermanently delete a collection
Permanently delete a collection
No parameter schema in public metadata yet.
trash_itemPrefer reversible trash operations for ordinary cleanup
Prefer reversible trash operations for ordinary cleanup
No parameter schema in public metadata yet.
restore_itemPrefer reversible trash operations for ordinary cleanup
Prefer reversible trash operations for ordinary cleanup
No parameter schema in public metadata yet.
searchThe standard read-only search tool shape used by ChatGPT company knowledge and deep research
The standard read-only search tool shape used by ChatGPT company knowledge and deep research
No parameter schema in public metadata yet.
fetchThe standard read-only fetch tool shape used by ChatGPT company knowledge and deep research
The standard read-only fetch tool shape used by ChatGPT company knowledge and deep research
No parameter schema in public metadata yet.
Sponsors
Configuration
ZOTERO_LIBRARY_ID*secretYour Zotero user or group library ID
ZOTERO_API_KEY*secretZotero API key with read/write permissions
ZOTERO_WEBDAV_URLsecretWebDAV URL for file storage (if using WebDAV sync)
ZOTERO_WEBDAV_USERsecretWebDAV username
ZOTERO_WEBDAV_PASSWORDsecretWebDAV password
Readme
zotero-library-mcp
An MCP server that lets Claude, Codex, and ChatGPT add papers and books to your Zotero library by DOI, arXiv ID, or ISBN — and manage your collections, tags, and items.
The server supports both MCP transports used by these clients:
- stdio (default) for Claude Code, Claude Desktop, Codex CLI/IDE, and the ChatGPT desktop app
- Streamable HTTP for a hosted ChatGPT app or any remote MCP client
Tools
Adding papers
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_item_from_metadata— Create any supported Zotero item type from validated manual metadata
Adding books
add_book_by_isbn— Resolve an ISBN via Open Library and add the book to Zotero (with duplicate detection)
Searching & browsing
Details
- Repository
- github.com/raulsimpetru/zotero-library-mcp
- Category
- Documents & Knowledge
- Package
zotero-library-mcp- Transport
- STDIO
- Auth
- Required
- Registry
- MCP registry, active