drio
Open app

Zotero MCP Server

Source

MCP server to expose local zotero repository to MCP clients

Catalog onlyCatalog onlySTDIO

Overview

Zotero MCP Server is a Model Context Protocol (MCP) server that allows MCP clients to interact with a local Zotero repository, enabling programmatic access to manage and search through your Zotero library.

To use the Zotero MCP Server, install the necessary dependencies, create a .env file with your Zotero credentials, and configure your MCP client (like Anthropic Claude App) to connect to the server.

  • Programmatic access to your Zotero library - Search papers by tags - Retrieve paper details and attached notes - Add notes to papers - Request summaries of papers
  1. Integrating with research tools to manage references.
  2. Automating note-taking and summarization of academic papers.
  3. Enhancing collaboration in research projects by sharing Zotero libraries.

Add to your AI client

Use these steps to connect Zotero MCP Server in Cursor, Claude, VS Code, and other MCP-compatible apps. The same JSON appears in the Use with menu above for one-click copy.

Cursor

Add this to your .cursor/mcp.json file in your project root, then restart Cursor.

.cursor/mcp.json

{
  "mcpServers": {
    "zotero-mcp-server-swairshah": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-zotero-mcp-server-swairshah"
      ]
    }
  }
}

Claude Desktop

Add this server entry to the mcpServers object in your Claude Desktop config, then restart the app.

~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)

{
  "mcpServers": {
    "zotero-mcp-server-swairshah": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-zotero-mcp-server-swairshah"
      ]
    }
  }
}

Claude Code

Add this to your project's .mcp.json file. Claude Code will detect it automatically.

.mcp.json (project root)

{
  "mcpServers": {
    "zotero-mcp-server-swairshah": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-zotero-mcp-server-swairshah"
      ]
    }
  }
}

VS Code (Copilot)

Add this to your .vscode/mcp.json file. Requires the GitHub Copilot extension with MCP support enabled.

.vscode/mcp.json

{
  "servers": {
    "zotero-mcp-server-swairshah": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-zotero-mcp-server-swairshah"
      ]
    }
  }
}

Windsurf

Add this to your Windsurf MCP config file, then restart Windsurf.

~/.codeium/windsurf/mcp_config.json

{
  "mcpServers": {
    "zotero-mcp-server-swairshah": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-zotero-mcp-server-swairshah"
      ]
    }
  }
}

Cline

Open Cline settings, navigate to MCP Servers, and add this server configuration.

Cline MCP Settings (via UI)

{
  "mcpServers": {
    "zotero-mcp-server-swairshah": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-zotero-mcp-server-swairshah"
      ]
    }
  }
}

FAQ

Can I use Zotero MCP Server with any MCP client?

Yes! It is designed to work with various MCP clients like Anthropic Claude App and others.

Is there a cost to use Zotero MCP Server?

No, it is open-source and free to use.

What programming language is Zotero MCP Server written in?

Zotero MCP Server is written in Python.