/ Каталог / Песочница / zotero-mcp
● Сообщество cookjohn ⚡ Сразу

zotero-mcp

автор cookjohn · cookjohn/zotero-mcp

Let Claude search your Zotero library, read saved PDFs, and cite sources — runs as a local Zotero plugin, nothing leaves your machine.

zotero-mcp is a Zotero plugin (not a standalone server) that exposes ~20 MCP tools over Streamable HTTP on port 23120. Covers search, semantic matching, annotation retrieval, and write operations on your local library. Because it ships inside Zotero, PDFs never need to be re-uploaded.

Зачем использовать

Ключевые функции

Живое демо

Как выглядит на практике

zotero.replay ▶ готово
0/0

Установка

Выберите клиент

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "zotero": {
      "command": "npx",
      "args": [
        "-y",
        "zotero-mcp"
      ],
      "_inferred": true
    }
  }
}

Откройте Claude Desktop → Settings → Developer → Edit Config. Перезапустите после сохранения.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "zotero": {
      "command": "npx",
      "args": [
        "-y",
        "zotero-mcp"
      ],
      "_inferred": true
    }
  }
}

Cursor использует ту же схему mcpServers, что и Claude Desktop. Конфиг проекта приоритетнее глобального.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "zotero": {
      "command": "npx",
      "args": [
        "-y",
        "zotero-mcp"
      ],
      "_inferred": true
    }
  }
}

Щёлкните значок MCP Servers на боковой панели Cline, затем "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "zotero": {
      "command": "npx",
      "args": [
        "-y",
        "zotero-mcp"
      ],
      "_inferred": true
    }
  }
}

Тот же формат, что и Claude Desktop. Перезапустите Windsurf для применения.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "zotero",
      "command": "npx",
      "args": [
        "-y",
        "zotero-mcp"
      ]
    }
  ]
}

Continue использует массив объектов серверов, а не map.

~/.config/zed/settings.json
{
  "context_servers": {
    "zotero": {
      "command": {
        "path": "npx",
        "args": [
          "-y",
          "zotero-mcp"
        ]
      }
    }
  }
}

Добавьте в context_servers. Zed перезагружается автоматически.

claude mcp add zotero -- npx -y zotero-mcp

Однострочная команда. Проверить: claude mcp list. Удалить: claude mcp remove.

Сценарии использования

Реальные сценарии: zotero-mcp

How to draft a literature review from your Zotero library

👤 Researchers, PhD students, analysts ⏱ ~45 min intermediate

Когда использовать: You've collected 50+ papers on a topic in Zotero and need to synthesize them into a coherent review.

Предварительные требования
  • Zotero desktop with zotero-mcp plugin installed — Download .xpi from releases, Tools → Add-ons → Install from file
  • PDFs attached and indexed — Right-click collection → Rebuild Full-Text Index if search is empty
Поток
  1. Scope the review
    Semantically search my Zotero collection 'Agentic AI' for papers on tool selection strategies. Return top 15.✓ Скопировано
    → Ranked list with titles, authors, year, abstract snippet
  2. Extract key claims per paper
    For each of those 15, read the full text and extract (a) the main claim, (b) method, (c) dataset or setting.✓ Скопировано
    → Structured table you can sort
  3. Synthesize with citations
    Write a 3-page review clustering these by approach. Cite every claim with Zotero item keys in (Author, Year) style.✓ Скопировано
    → Draft with bracketed citations mapping back to your library

Итог: A first-draft review grounded in papers you actually own, every claim traceable to a Zotero item.

Подводные камни
  • Full-text search returns nothing — Zotero only indexes text-layer PDFs. Run OCR on image PDFs first
  • Citations hallucinated — Ask for the Zotero item key (e.g. ABCD1234) alongside every citation — you can paste it into a verifier
Сочетать с: arxiv

Summarize your highlights across a Zotero collection

👤 Avid readers, knowledge workers ⏱ ~20 min beginner

Когда использовать: You've highlighted things across 30 books/papers and want a thematic summary.

Поток
  1. Pull annotations by color/tag
    Search my yellow highlights in collection 'Product Strategy'. Return the highlighted text plus the parent item.✓ Скопировано
    → List of highlights grouped by source
  2. Cluster into themes
    Cluster the highlights into 5-7 themes. For each theme, give a 2-sentence synthesis with the source items.✓ Скопировано
    → Themed notes with citations

Итог: Scattered highlights turned into a personal knowledge-base note.

Сочетать с: anytype

Auto-tag and annotate newly added Zotero papers

👤 Library maintainers ⏱ ~15 min intermediate

Когда использовать: You drop papers into a 'Unsorted' collection and want them triaged weekly.

Поток
  1. List items added this week in 'Unsorted'
    List Zotero items added in the last 7 days to my 'Unsorted' collection.✓ Скопировано
    → Inbox of new items
  2. Generate tags and a 1-line summary per item
    For each, propose 3-5 tags and a 1-line summary based on abstract. Apply them via the write tools.✓ Скопировано
    → Items now tagged; summary saved as a note attachment

Итог: A self-maintaining Zotero library with consistent tagging.

Подводные камни
  • Write tools modify your library irreversibly — no undo — Run against a test collection first, or back up zotero.sqlite before enabling writes

Комбинации

Сочетайте с другими MCP — эффект x10

zotero + arxiv

Arxiv-first exploration then auto-save to Zotero for reading

Find 10 recent arxiv papers on retrieval-augmented agents, then add the ones I don't already have to my 'Agents' Zotero collection.✓ Скопировано
zotero + anytype

Literature notes live in Anytype; source PDFs stay in Zotero

For the top 10 papers in my 'Agents' collection, create an Anytype page per paper with the summary and a backlink to the Zotero item key.✓ Скопировано

Инструменты

Что предоставляет этот MCP

ИнструментВходные данныеКогда вызыватьСтоимость
search_library query: str, filters?: { collection, tag, itemType } Text/metadata search across your library 0 — local DB
search_fulltext query: str Search inside PDF bodies (only indexed text layers) 0
semantic_search query: str, top_k?: int Concept-level match instead of keyword 0 — local embeddings
search_annotations color?, tag?, query? Pull your highlights/notes 0
get_item_details item_key: str Expand a reference from a search hit 0
get_content item_key or attachment_key Feed the full paper to Claude 0

Стоимость и лимиты

Во что обходится

Квота API
None — fully local
Токенов на вызов
Full PDF fetches can hit 30k+ tokens; chunk before feeding
Деньги
Free (Zotero is free; the plugin is MIT)
Совет
Prefer search_fulltext returning snippets over get_content returning the whole PDF

Безопасность

Права, секреты, радиус поражения

Хранение учётных данных: None — plugin runs inside Zotero; local HTTP on 127.0.0.1:23120
Исходящий трафик: None in read mode; writes modify zotero.sqlite locally

Устранение неполадок

Частые ошибки и исправления

MCP client can't connect on port 23120

Open Zotero → Preferences → Zotero MCP Plugin → verify 'Enable server' is checked and port isn't blocked

Проверить: curl http://127.0.0.1:23120/health
Full-text search returns empty

PDF has no text layer. Right-click item → Reindex Item, or run OCR via Zotero's built-in OCR

Write operations forbidden

Enable write mode in plugin preferences — off by default for safety

Альтернативы

zotero-mcp в сравнении

АльтернативаКогда использоватьКомпромисс
Official Zotero Web APIYou need cloud sync access from a remote serverRequires API key; rate-limited; no semantic search
Readwise MCPYour highlights live in Readwise not ZoteroCloud-based, subscription required

Ещё

Ресурсы

📖 Читать официальный README на GitHub

🐙 Открытые задачи

🔍 Все 400+ MCP-серверов и Skills