Zotero MCP

Seamlessly connect your Zotero research library with Claude and other AI assistants via the Model Context Protocol.

Features

Search Your Library

Find papers, articles, and books by title, author, or content. Perform complex searches with multiple criteria.

Access Your Content

Retrieve detailed metadata for any item. Get full text content (when available). Access attachments, notes, and child items.

AI Integration

Ask Claude about your research papers. Generate summaries, analysis, and insights from your library.

Work with Annotations

Extract and search PDF annotations directly. Access Zotero's native annotations or extract directly from PDFs. For optimal annotation extraction, it's highly recommended to install the Better BibTeX plugin for Zotero.

Note Management

Retrieve, search, and create notes for your research items. Extract insights from your notes or create new ones (beta feature). Organize your thoughts and research findings seamlessly with Claude's natural language capabilities.

Installation

For detailed setup instructions, check out our Installation Guide.

Smithery Installation

Install from Smithery for Claude Desktop:

npx -y @smithery/cli install @54yyyu/zotero-mcp --client claude

Pip Installation

Install from GitHub and auto-configure for Claude Desktop:

pip install git+https://github.com/54yyyu/zotero-mcp.git
zotero-mcp setup  # Auto-configure for Claude Desktop

Setup & Usage

For Claude Desktop

Auto-configure (recommended):
zotero-mcp setup
Manual configuration:

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "zotero": {
      "command": "zotero-mcp",
      "env": {
        "ZOTERO_LOCAL": "true"
      }
    }
  }
}

Using Zotero in Claude

Steps:
  1. Start Zotero desktop (make sure local API is enabled in preferences)
  2. Launch Claude Desktop
  3. Access the Zotero-MCP tool through Claude Desktop's tools interface
Example prompts:
  • "Search my library for papers on machine learning"
  • "Find recent articles I've added about climate change"
  • "Summarize the key findings from my paper on quantum computing"
  • "Extract all PDF annotations from my paper on neural networks"
  • "Search my notes and annotations for mentions of 'reinforcement learning'"
  • "Create a detailed note for my climate paper with a summary of key points"

Advanced Configuration

Using Web API

For accessing your Zotero library via the web API (useful for remote setups):

zotero-mcp setup --no-local --api-key YOUR_API_KEY --library-id YOUR_LIBRARY_ID

Environment Variables

  • ZOTERO_LOCAL=true: Use the local Zotero API (default: false)
  • ZOTERO_API_KEY: Your Zotero API key (for web API)
  • ZOTERO_LIBRARY_ID: Your Zotero library ID (for web API)
  • ZOTERO_LIBRARY_TYPE: Library type (user or group, default: user)

Available Tools

Check out our API Documentation for detailed information on all available tools.

Search Tools
  • zotero_search_items: Search your library
  • zotero_advanced_search: Perform complex searches
  • zotero_get_collections: List collections
  • zotero_get_collection_items: Get items in a collection
  • zotero_get_tags: List all tags
  • zotero_get_recent: Get recently added items
Content Tools
  • zotero_get_item_metadata: Get detailed metadata
  • zotero_get_item_fulltext: Get full text content
  • zotero_get_item_children: Get attachments and notes
  • zotero_batch_update_tags: Update tags across multiple items
Notes & Annotations
  • zotero_get_annotations: Get annotations
  • zotero_get_notes: Retrieve notes
  • zotero_search_notes: Search in notes and annotations
  • zotero_create_note: Create a new note Beta

Troubleshooting

Ensure Zotero is running and the local API is enabled. In Zotero, go to Edit > Preferences > Advanced > API and check "Enable local API".

Check your API key and library ID if using web API. Make sure your API key has the necessary permissions.

Make sure you're using Zotero 7+ for local full-text access. Note that not all items in your library may have full-text content available.

For optimal annotation extraction, install the Better BibTeX plugin for Zotero. Try using use_pdf_extraction: true parameter with the zotero_get_annotations tool as a fallback method.

The zotero_create_note tool is currently in beta. Make sure you're providing a valid parent item key and the required parameters. Basic HTML formatting (<p>, <br>) is supported in note content.