
Zotero
STDIOMCP connector integrating local Zotero library with Claude for academic reference access.
MCP connector integrating local Zotero library with Claude for academic reference access.
A Model Control Protocol (MCP) connector for integrating your local Zotero with Claude.
This enables direct read access to your local Zotero library through Claude's Desktop interface.
It depends on the ability to access a local web-api in Zotero 7.
This was inspired by a repository using Node.js and the web api: mcp-zotero.
This builds on the shoulders of the fantastic pyzotero library.
Information about Claude Desktop interacting with MCPs can be found here.
Use uv
. Installation instructions can be found here.
Checkout the git project to local space and activate the virtual environment inside:
git clone https://github.com/gyger/mcp-pyzotero.git cd mcp-pyzotero uv sync
Enable the local API in Zotero 7:
Add the server to your local Claude installation:
uv run mcp install zotero.py
Edit the configuration for your Claude Desktop softare in the file.
- macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
- Windows: %APPDATA%\Claude\claude_desktop_config.json
and add the Zotero entry
{ "mcpServers": { "Zotero": { "command": "uvx", "args": ["--from", "git+https://github.com/gyger/mcp-pyzotero.git", "--with", "mcp[cli]", "--with", "pyzotero", "mcp", "run", "zotero.py" ], } } }
The connector is configured to work with local Zotero installations and currently only user
libraries are supported.
By default it uses the userid 0
, but you can also set the environment variable ZOTERO_USER_ID
if needed:
uv run mcp install zotero.py -v ZOTERO_USER_ID=0
get_zotero_summary()
: Lists properties about your library including collections, recent items or tags.get_collection_items(collection_key)
: Get all items in a specific collectionget_items_metadata(item_key)
: Get detailed information about specific paper(s), including abstract.search_library(query, mode)
: Search your Zotero library, with two possible modes: everything or titleCreatorYear.This functionality should be extended in the future.
Contributions are welcome! Please visit the GitHub repository to:
MIT