================== /// MCP /// /// MCP /// ================== [server:online] [protocol:ready]
mcp-zotero
by kaliaboi
Model Context Protocol (MCP) server that lets Claude (or any MCP-compatible client) query your Zotero cloud library – list collections, fetch item details, run searches, etc.
126
14
Open Source01
get_collections
List all collections in your library
02
get_collection_items
Get items in a specific collection
03
get_item_details
Get detailed information about a paper
04
search_library
Search your entire library
05
get_recent
Get recently added papers
Installation
1. Prerequisites
• Node.js ≥ 18 and npm (comes with Node)
• A Zotero account and a Zotero API key with read access to the target library/collections
2. Clone or add the package
Option A – use npm (recommended for integrating into another MCP server):
npm install mcp-zotero
Option B – clone repository and build locally:
git clone https://github.com/kaliaboi/mcp-zotero.git
cd mcp-zotero
npm install
npm run build
3. Configure environment
Create a .env file (or export in your shell) with at least:
ZOTERO_API_KEY=<your-zotero-key>
ZOTERO_LIBRARY_ID=<your-personal-or-group-library-id>
ZOTERO_LIBRARY_TYPE=user # or "group"
These variables are read by the connector at runtime to authenticate to the Zotero REST API.
4. Run the connector as a standalone service (for local testing):
npm start
By default this launches an MCP-compatible HTTP server on port 3000. Use PORT to override.
5. Embed in Claude Desktop MCP stack
Import the built module and register it in your MCP server’s tool list:
import { ZoteroTool } from 'mcp-zotero';
mcp.registerTool(new ZoteroTool());
6. Verify
Request the /health endpoint or call listCollections in Claude Desktop to ensure the connector returns data from your Zotero cloud.
Documentation
License: MIT License
Updated 7/30/2025