The MCP Zotero server enables interaction with a Zotero library through various functions:
List Collections: Retrieve all collections in your Zotero library using
get_collections.Get Collection Items: Fetch items within a specific collection using
get_collection_items(requires collection key).Get Item Details: Obtain detailed information about a specific paper using
get_item_details(requires item key).Search Library: Search your entire Zotero library using
search_librarywith a search query.Get Recent Papers: Retrieve recently added papers with
get_recent, optionally specifying the number to return.
Allows Claude to interact with your Zotero library, including listing collections, retrieving items in collections, getting detailed information about papers, searching the library, and retrieving recently added papers.
MCP Zotero
A Model Context Protocol server for Zotero integration that allows Claude to interact with your Zotero library.
Setup
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/currentThe response will look like:
{ "userID": 123456, "username": "your_username", "access": { "user": { "library": true, "files": true, "notes": true, "write": true } } }The
userIDvalue is what you need.Set environment variables:
export ZOTERO_API_KEY="your-api-key" export ZOTERO_USER_ID="user-id-from-curl"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.
Install and run:
# Install globally (recommended) npm install -g mcp-zotero mcp-zotero # Or run directly with npx npx mcp-zotero
Related MCP server: Zotero MCP Connector
Integration with Claude Desktop
To use this server with Claude Desktop, add the following to your Claude Desktop configuration:
Available Tools
get_collections: List all collections in your libraryget_collection_items: Get items in a specific collectionget_item_details: Get detailed information about a papersearch_library: Search your entire libraryget_recent: Get recently added papers
Troubleshooting
If you encounter any issues:
Verify your environment variables are set:
echo $ZOTERO_API_KEY echo $ZOTERO_USER_IDCheck the installation:
npm list -g mcp-zoteroTry reinstalling:
npm uninstall -g mcp-zotero npm install -g mcp-zotero