$git clone https://github.com/54yyyu/zotero-mcpZotero MCP seamlessly connects your Zotero research library with ChatGPT, Claude, and other AI assistants (e.g., Cherry Studio, Chorus, [Cursor]
| 1 | # Zotero MCP: Chat with your Research Library—Local or Web—in Claude, ChatGPT, and more. |
| 2 | |
| 3 | <p align="center"> |
| 4 | <a href="https://www.zotero.org/"> |
| 5 | <img src="https://img.shields.io/badge/Zotero-CC2936?style=for-the-badge&logo=zotero&logoColor=white" alt="Zotero"> |
| 6 | </a> |
| 7 | <a href="https://www.anthropic.com/claude"> |
| 8 | <img src="https://img.shields.io/badge/Claude-6849C3?style=for-the-badge&logo=anthropic&logoColor=white" alt="Claude"> |
| 9 | </a> |
| 10 | <a href="https://chatgpt.com/"> |
| 11 | <img src="https://img.shields.io/badge/ChatGPT-74AA9C?style=for-the-badge&logo=openai&logoColor=white" alt="ChatGPT"> |
| 12 | </a> |
| 13 | <a href="https://modelcontextprotocol.io/introduction"> |
| 14 | <img src="https://img.shields.io/badge/MCP-0175C2?style=for-the-badge&logoColor=white" alt="MCP"> |
| 15 | </a> |
| 16 | <a href="https://pypi.org/project/zotero-mcp-server/"> |
| 17 | <img src="https://img.shields.io/pypi/v/zotero-mcp-server?style=for-the-badge&logo=pypi&logoColor=white" alt="PyPI"> |
| 18 | </a> |
| 19 | <a href="https://discord.gg/BvgjbcBUqg"> |
| 20 | <img src="https://img.shields.io/badge/Discord-5865F2?style=for-the-badge&logo=discord&logoColor=white" alt="Discord"> |
| 21 | </a> |
| 22 | </p> |
| 23 | |
| 24 | **Zotero MCP** seamlessly connects your [Zotero](https://www.zotero.org/) research library with [ChatGPT](https://openai.com), [Claude](https://www.anthropic.com/claude), and other AI assistants (e.g., [Cherry Studio](https://cherry-ai.com/), [Chorus](https://chorus.sh), [Cursor](https://www.cursor.com/)) via the [Model Context Protocol](https://modelcontextprotocol.io/introduction). Review papers, get summaries, analyze citations, extract PDF annotations, and more! |
| 25 | |
| 26 | --- |
| 27 | |
| 28 | ## ✨ Features |
| 29 | |
| 30 | ### 🧠 AI-Powered Semantic Search |
| 31 | - **Vector-based similarity search** over your entire research library (requires `[semantic]` extra) |
| 32 | - **Multiple embedding models**: Default (free, local), OpenAI, Gemini, and Ollama |
| 33 | - **Intelligent results** with similarity scores and contextual matching |
| 34 | - **Auto-updating database** with configurable sync schedules |
| 35 | |
| 36 | ### 🔍 Search Your Library |
| 37 | - Find papers, articles, and books by title, author, or content |
| 38 | - Perform complex searches with multiple criteria |
| 39 | - Browse collections, tags, and recent additions |
| 40 | - Semantic search for conceptual and topic-based discovery |
| 41 | |
| 42 | ### 📚 Access Your Content |
| 43 | - Retrieve detailed metadata for any item (markdown or BibTeX export) |
| 44 | - Get full text content (when available) |
| 45 | - Look up items by BetterBibTeX citation key |
| 46 | |
| 47 | ### 📝 Work with Annotations |
| 48 | - Extract and search PDF annotations with page numbers |
| 49 | - Access Zotero's native annotations |
| 50 | - Create and update notes and annotations |
| 51 | - Extract PDF table of contents / outlines (requires `[pdf]` extra) |
| 52 | |
| 53 | ### ✏️ Write Operations |
| 54 | - **Add papers by DOI** with auto-fetched metadata and open-access PDF cascade (Unpaywall, arXiv, Semantic Scholar, PMC) |
| 55 | - **Add papers by URL** (arXiv, DOI links, generic webpages) or from local files |
| 56 | - Create and manage collections, update item metadata, batch-update tags |
| 57 | - Find and merge duplicate items with dry-run preview |
| 58 | - **Hybrid mode**: local reads + web API writes for local-mode users |
| 59 | |
| 60 | ### 📊 Scite Citation Intelligence (optional `[scite]` extra) |
| 61 | - **Citation tallies**: See how many papers support, contrast, or mention each item — the MCP version of the [Scite Zotero Plugin](https://github.com/scitedotai/scite-zotero-plugin) |
| 62 | - **Retraction alerts**: Scan your library for retracted or corrected papers |
| 63 | - No Scite account required — uses public API endpoints |
| 64 | |
| 65 | ### 🌐 Flexible Access Methods |
| 66 | - Local mode for offline access (no API key needed) |
| 67 | - Web API for cloud library access |
| 68 | - Hybrid mode: read from local Zotero, write via web API |
| 69 | |
| 70 | ### ⌨️ Standalone CLI (`zotero-cli`) |
| 71 | - Search, browse, and edit your library directly from the terminal — no AI assistant required |
| 72 | - Ideal for scripting, automation, and quick lookups |
| 73 | - Short aliases (`s`, `g`, `ann`, `coll`) for interactive use |
| 74 | |
| 75 | ## 🚀 Quick Install |
| 76 | |
| 77 | > **New to the command line?** Try the community-built [Zotero MCP Setup](https://github.com/ehawkin |