mcp-zotero
by: kaliaboi
A connector for Claude Desktop to work with collection and sources on your Zotero Cloud.
📌Overview
Purpose: The MCP Zotero framework aims to facilitate seamless integration between Claude and your Zotero library, allowing for efficient library management and interaction.
Overview: MCP Zotero acts as a Model Context Protocol server that interfaces with Zotero, enabling users to utilize their libraries through Claude. It is designed to optimize the way users access, manage, and manipulate their collection of references in Zotero.
Key Features:
-
Collection Management: Easily list and access all collections in your Zotero library, making organization straightforward.
-
Detailed Item Retrieval: Fetch detailed information regarding specific papers, providing essential data at your fingertips.
-
Search Functionality: Conduct comprehensive searches across your entire library to quickly locate resources.
-
Recent Additions Tracking: Stay updated with the latest papers added to your library, ensuring you never miss important contributions.
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/current
The response will look like:
{ "userID": 123456, "username": "your_username", "access": { "user": { "library": true, "files": true, "notes": true, "write": true } } }
The
userID
value 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
Integration with Claude Desktop
To use this server with Claude Desktop, add the following to your Claude Desktop configuration:
{
"mcpServers": {
"zotero": {
"command": "mcp-zotero",
"env": {
"ZOTERO_API_KEY": YOUR_API_KEY,
"ZOTERO_USER_ID": YOUR_USER_ID
}
}
}
}
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_ID
-
Check the installation:
npm list -g mcp-zotero
-
Try reinstalling:
npm uninstall -g mcp-zotero npm install -g mcp-zotero