MCP HubMCP Hub
kaliaboi

mcp-zotero

by: kaliaboi

A connector for Claude Desktop to work with collection and sources on your Zotero Cloud.

75created 19/12/2024
Visit
Zotero
Claude

📌Overview

Purpose: The MCP Zotero framework aims to facilitate seamless integration between Claude and your Zotero library, allowing for efficient library management and interaction.

Overview: MCP Zotero acts as a Model Context Protocol server that interfaces with Zotero, enabling users to utilize their libraries through Claude. It is designed to optimize the way users access, manage, and manipulate their collection of references in Zotero.

Key Features:

  • Collection Management: Easily list and access all collections in your Zotero library, making organization straightforward.

  • Detailed Item Retrieval: Fetch detailed information regarding specific papers, providing essential data at your fingertips.

  • Search Functionality: Conduct comprehensive searches across your entire library to quickly locate resources.

  • Recent Additions Tracking: Stay updated with the latest papers added to your library, ensuring you never miss important contributions.


MCP Zotero

A Model Context Protocol server for Zotero integration that allows Claude to interact with your Zotero library.

Setup

  1. Get your Zotero credentials:

    # First, create an API key at https://www.zotero.org/settings/keys
    # Then use it to get your user ID:
    curl -H "Zotero-API-Key: YOUR_API_KEY" https://api.zotero.org/keys/current
    

    The response will look like:

    {
      "userID": 123456,
      "username": "your_username",
      "access": {
        "user": {
          "library": true,
          "files": true,
          "notes": true,
          "write": true
        }
      }
    }
    

    The userID value is what you need.

  2. Set environment variables:

    export ZOTERO_API_KEY="your-api-key"
    export ZOTERO_USER_ID="user-id-from-curl"
    
  3. Verify your credentials:

    # Test that your credentials work:
    curl -H "Zotero-API-Key: $ZOTERO_API_KEY" \
         "https://api.zotero.org/users/$ZOTERO_USER_ID/collections"
    

    You should see your collections list in the response.

  4. Install and run:

    # Install globally (recommended)
    npm install -g mcp-zotero
    mcp-zotero
    
    # Or run directly with npx
    npx mcp-zotero
    

Integration with Claude Desktop

To use this server with Claude Desktop, add the following to your Claude Desktop configuration:

{
  "mcpServers": {
    "zotero": {
      "command": "mcp-zotero",
      "env": {
        "ZOTERO_API_KEY": YOUR_API_KEY,
        "ZOTERO_USER_ID": YOUR_USER_ID
      }
    }
  }
}

Available Tools

  • get_collections: List all collections in your library
  • get_collection_items: Get items in a specific collection
  • get_item_details: Get detailed information about a paper
  • search_library: Search your entire library
  • get_recent: Get recently added papers

Troubleshooting

If you encounter any issues:

  1. Verify your environment variables are set:

    echo $ZOTERO_API_KEY
    echo $ZOTERO_USER_ID
    
  2. Check the installation:

    npm list -g mcp-zotero
    
  3. Try reinstalling:

    npm uninstall -g mcp-zotero
    npm install -g mcp-zotero