MCP Zotero
by kaliaboi
MCP Zotero
A Model Context Protocol server for Zotero integration that allows Claude to interact with your Zotero library.
<a href="https://glama.ai/mcp/servers/mjvu0xzzzz"><img width="380" height="200" src="https://glama.ai/mcp/servers/mjvu0xzzzz/badge" alt="Zotero MCP server" /></a>
Setup
- Get your Zotero credentials:The response will look like:Copy# 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/currentTheCopy{ "userID": 123456, "username": "your_username", "access": { "user": { "library": true, "files": true, "notes": true, "write": true } } }
userID
value is what you need. - Set environment variables:Copyexport ZOTERO_API_KEY="your-api-key" export ZOTERO_USER_ID="user-id-from-curl"
- Verify your credentials:You should see your collections list in the response.Copy# Test that your credentials work: curl -H "Zotero-API-Key: $ZOTERO_API_KEY" \ "https://api.zotero.org/users/$ZOTERO_USER_ID/collections"
- Install and run:Copy# 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:
Copy
{
"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:Copyecho $ZOTERO_API_KEY echo $ZOTERO_USER_ID
- Check the installation:Copynpm list -g mcp-zotero
- Try reinstalling:Copynpm uninstall -g mcp-zotero npm install -g mcp-zotero
Allows AI to interact with your Zotero library.