Skip to content
appsgit

Zotero MCP

Zotero MCP is an MCP server that adds tools to AI assistants such as Claude Desktop, Claude Code and Cursor. Search your Zotero library, retrieve item metadata, and read full text from AI assistants. It has 161 GitHub stars, is released under the MIT license and runs locally with uvx zotero-mcp.

github.com/kujenga/zotero-mcp (opens in a new tab)

  • Needs API key
  • Other
  • MIT
  • Actively maintained

Install Zotero MCP

Generated from the server's MCP registry entry. Replace your-value with your own values.

Claude Desktop

claude_desktop_config.json
{
  "mcpServers": {
    "zotero-mcp-kujenga": {
      "command": "uvx",
      "args": [
        "zotero-mcp"
      ],
      "env": {
        "ZOTERO_API_KEY": "your-value"
      }
    }
  }
}

Settings > Developer > Edit Config. macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\. Restart Claude Desktop afterwards.

Claude Code

claude mcp add --env ZOTERO_API_KEY=your-value --transport stdio zotero-mcp-kujenga -- uvx zotero-mcp

Cursor

.cursor/mcp.json
{
  "mcpServers": {
    "zotero-mcp-kujenga": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "zotero-mcp"
      ],
      "env": {
        "ZOTERO_API_KEY": "your-value"
      }
    }
  }
}

Project file; use ~/.cursor/mcp.json to enable it in every project.

VS Code

.vscode/mcp.json
{
  "inputs": [
    {
      "type": "promptString",
      "id": "zotero_api_key",
      "description": "ZOTERO_API_KEY",
      "password": true
    }
  ],
  "servers": {
    "zotero-mcp-kujenga": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "zotero-mcp"
      ],
      "env": {
        "ZOTERO_API_KEY": "${input:zotero_api_key}"
      }
    }
  }
}

Config formats checked against the official docs on Oct 7, 2026: modelcontextprotocol.io (opens in a new tab), code.claude.com (opens in a new tab), cursor.com (opens in a new tab), code.visualstudio.com (opens in a new tab).

Environment variables

Variables the server reads at startup.

NameRequiredDescription
ZOTERO_LOCALNoUse the local API from the Zotero desktop app instead of the Web API. Requires Zotero to be running with 'Allow other applications on this computer to…
ZOTERO_API_KEYsecretNoZotero Web API key from https://www.zotero.org/settings/keys. Not required when ZOTERO_LOCAL is true.
ZOTERO_LIBRARY_IDNoZotero library ID (your user ID for user libraries). Not required when ZOTERO_LOCAL is true.
ZOTERO_LIBRARY_TYPENoWhether ZOTEROLIBRARYID refers to a user or group library.

About Zotero MCP

This project is a python server that implements the Model Context Protocol (MCP) for Zotero, giving you access to your Zotero library within AI assistants. It is intended to implement a small but maximally useful set of interactions with Zotero for use with MCP clients.

  • mcp
  • mcp-server
  • zotero

FAQ

Zotero MCP FAQ

Still curious? Email info@appsgit.com.

What is Zotero MCP?

Zotero MCP is an MCP server that adds tools to AI assistants such as Claude Desktop, Claude Code and Cursor. Search your Zotero library, retrieve item metadata, and read full text from AI assistants. It has 161 GitHub stars, is released under the MIT license and runs locally with uvx zotero-mcp. The source code is at github.com/kujenga/zotero-mcp.

How do I install the Zotero MCP MCP server?

Add the command uvx zotero-mcp to your MCP client: put it in claude_desktop_config.json for Claude Desktop, run claude mcp add for Claude Code, or add it to .cursor/mcp.json (Cursor) or .vscode/mcp.json (VS Code). The snippets on this page are ready to paste.

Is Zotero MCP free?

The server is open source under the MIT license, so running it is free. It needs credentials (ZOTERO_API_KEY) for the service it connects to, which may require a paid account.

Is Zotero MCP actively maintained?

The most recent commit was on Aug 7, 2026. The latest release is 0.3.1, published Aug 7, 2026. appsgit only lists MCP servers with a commit in the last six months and re-checks every server daily.