NestDaddy

Zotero MCP

io.github.54yyyu/zotero-mcp · v0.17.1

Search, read, annotate, and add to your Zotero research library, local or web.

Connect Runs on your machine

Terminal
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
claude_desktop_config.json
{
  "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>"
      }
    }
  }
}
~/.cursor/mcp.json
{
  "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>"
      }
    }
  }
}
.vscode/mcp.json
{
  "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

NameDescription
ZOTERO_LOCAL
Optional
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_KEY
Optional, 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_ID
Optional
Zotero user or group library ID. Only needed when ZOTERO_LOCAL is false, or for write operations in hybrid mode.
ZOTERO_LIBRARY_TYPE
Optional
Whether ZOTERO_LIBRARY_ID refers to a personal or a group library.
ZOTERO_MCP_TOOLSETS
Optional
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 published13 Nov 2026
Last updated13 Nov 2026
Registry nameio.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.