Zotero MCP Server

Model Context Protocol server for Zotero

This project is a python-based server that implements the Model Context Protocol (MCP) for Zotero.

Setup

  1. Install dependencies with uv by running: uv sync
  2. Create a .env file in the project root with your Zotero credentials:
ZOTERO_LIBRARY_ID=your_library_id ZOTERO_LIBRARY_TYPE=user # or "group", optional, defaults to "user" ZOTERO_API_KEY=your_api_key

You can find your library ID and create an API key in your Zotero account settings: https://www.zotero.org/settings/keys

Features

This MCP server provides the following tools:

  • search_items: Search for items in your Zotero library using a text query
  • get_item_metadata: Get detailed information about a specific Zotero item
  • get_item_fulltext: Get the full text of a specific Zotero item

These can be discovered and accessed through the MCP Inspector or any other MCP client.

Each tool returns formatted text containing relevant information from your Zotero items.

Usage

Start the server for local development with the MCP Inspector:

uv run mcp dev server.py

You can then use these tools through any MCP client, such as Claude Desktop or the MCP Inspector.

To install in Claude Desktop:

uv run mcp install -e . server.py

Running Tests

To run the test suite:

uv run pytest

Relevant Documentation

-
security - not tested
F
license - not found
-
quality - not tested

This server allows users to interact with their Zotero library through the Model Context Protocol, providing tools for searching items, retrieving metadata, and accessing full text using natural language queries.

  1. Setup
    1. Features
      1. Usage
        1. Running Tests
        2. Relevant Documentation