Search, read, annotate, and add to your Zotero research library, local or web.
Connect Runs on your machine
claude mcp add zotero-mcp -e ZOTERO_LOCAL=<ZOTERO_LOCAL> -e ZOTERO_API_KEY=<ZOTERO_API_KEY> -e ZOTERO_LIBRARY_ID=<ZOTERO_LIBRARY_ID> -e ZOTERO_LIBRARY_TYPE=<ZOTERO_LIBRARY_TYPE> -e ZOTERO_MCP_TOOLSETS=<ZOTERO_MCP_TOOLSETS> -- uvx zotero-mcp-server==0.17.1
{
"mcpServers": {
"zotero-mcp": {
"command": "uvx",
"args": [
"zotero-mcp-server==0.17.1"
],
"env": {
"ZOTERO_LOCAL": "<ZOTERO_LOCAL>",
"ZOTERO_API_KEY": "<ZOTERO_API_KEY>",
"ZOTERO_LIBRARY_ID": "<ZOTERO_LIBRARY_ID>",
"ZOTERO_LIBRARY_TYPE": "<ZOTERO_LIBRARY_TYPE>",
"ZOTERO_MCP_TOOLSETS": "<ZOTERO_MCP_TOOLSETS>"
}
}
}
}
{
"mcpServers": {
"zotero-mcp": {
"command": "uvx",
"args": [
"zotero-mcp-server==0.17.1"
],
"env": {
"ZOTERO_LOCAL": "<ZOTERO_LOCAL>",
"ZOTERO_API_KEY": "<ZOTERO_API_KEY>",
"ZOTERO_LIBRARY_ID": "<ZOTERO_LIBRARY_ID>",
"ZOTERO_LIBRARY_TYPE": "<ZOTERO_LIBRARY_TYPE>",
"ZOTERO_MCP_TOOLSETS": "<ZOTERO_MCP_TOOLSETS>"
}
}
}
}
{
"servers": {
"zotero-mcp": {
"type": "stdio",
"command": "uvx",
"args": [
"zotero-mcp-server==0.17.1"
],
"env": {
"ZOTERO_LOCAL": "<ZOTERO_LOCAL>",
"ZOTERO_API_KEY": "<ZOTERO_API_KEY>",
"ZOTERO_LIBRARY_ID": "<ZOTERO_LIBRARY_ID>",
"ZOTERO_LIBRARY_TYPE": "<ZOTERO_LIBRARY_TYPE>",
"ZOTERO_MCP_TOOLSETS": "<ZOTERO_MCP_TOOLSETS>"
}
}
}
}
Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.
Tools
This server runs locally, so its tools are listed by your MCP client once it starts.
Environment variables
| Name | Description |
|---|---|
ZOTERO_LOCALOptional | Read from the local Zotero desktop app instead of the web API. Requires Zotero 7+ with the local API enabled in Settings > Advanced. |
ZOTERO_API_KEYOptional, secret | Zotero Web API key from https://www.zotero.org/settings/keys. Only needed when ZOTERO_LOCAL is false, or for write operations in hybrid mode. |
ZOTERO_LIBRARY_IDOptional | Zotero user or group library ID. Only needed when ZOTERO_LOCAL is false, or for write operations in hybrid mode. |
ZOTERO_LIBRARY_TYPEOptional | Whether ZOTERO_LIBRARY_ID refers to a personal or a group library. |
ZOTERO_MCP_TOOLSETSOptional | Which optional tool groups to expose, as a comma-separated list. Every tool is sent to the model on each request, so optional capabilities are off by default. Use 'all' for the full surface, 'none' for core only, 'default' for the default profile, named groups (scite, duplicates, discovery, feeds,… |
Details
| Package | [email protected] (PYPI, stdio) |
| First published | 13 Nov 2026 |
| Last updated | 13 Nov 2026 |
| Registry name | io.github.54yyyu/zotero-mcp |
More search and web servers See all
Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.
