https://github.com/kaliaboi/mcp-zotero
A connector for Claude Desktop to work with collection and sources on your Zotero Cloud.
https://github.com/kaliaboi/mcp-zotero
Last synced: 1 day ago
JSON representation
A connector for Claude Desktop to work with collection and sources on your Zotero Cloud.
- Host: GitHub
- URL: https://github.com/kaliaboi/mcp-zotero
- Owner: kaliaboi
- License: mit
- Created: 2024-12-19T17:53:35.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2025-02-04T19:51:43.000Z (3 months ago)
- Last Synced: 2025-04-29T22:37:07.058Z (7 days ago)
- Language: TypeScript
- Size: 22.5 KB
- Stars: 85
- Watchers: 3
- Forks: 11
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-mcp-list - @kaliaboi/mcp-zotero - zotero?style=social)](https://github.com/kaliaboi/mcp-zotero): Connects LLMs to Zotero Cloud collections and sources. (Uncategorized / Uncategorized)
- awesome-mcp-zh - kaliaboi/mcp-zotero
- awesome-mcp-servers - @kaliaboi/mcp-zotero - A connector for LLMs to work with collections and sources on your Zotero Cloud (Legend / 🧠<a name="knowledge--memory"></a>Knowledge & Memory)
- awesome-mcp-servers - @kaliaboi/mcp-zotero - A connector for LLMs to work with collections and sources on your Zotero Cloud (Legend / 🧠<a name="knowledge--memory"></a>Knowledge & Memory)
- awesome-mcp-servers - Zotero MCP - A connector for Claude Desktop to work with collection and sources on your Zotero Cloud. (Table of Contents / Other Tools and Integrations)
- awesome-mcp-servers - Zotero MCP - A connector for Claude Desktop to work with collection and sources on your Zotero Cloud. (Table of Contents / Other Tools and Integrations)
README
# MCP Zotero
 [](https://smithery.ai/server/mcp-zotero)
A Model Context Protocol server for Zotero integration that allows Claude to interact with your Zotero library.
## Setup
1. Get your Zotero credentials:
```bash
# 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:
```json
{
"userID": 123456,
"username": "your_username",
"access": {
"user": {
"library": true,
"files": true,
"notes": true,
"write": true
}
}
}
```The `userID` value is what you need.
2. Set environment variables:
```bash
export ZOTERO_API_KEY="your-api-key"
export ZOTERO_USER_ID="user-id-from-curl"
```3. Verify your credentials:
```bash
# 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.
4. Install and run:
```bash
# 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:
```json
{
"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 library
- `get_collection_items`: Get items in a specific collection
- `get_item_details`: Get detailed information about a paper
- `search_library`: Search your entire library
- `get_recent`: Get recently added papers## Troubleshooting
If you encounter any issues:
1. Verify your environment variables are set:
```bash
echo $ZOTERO_API_KEY
echo $ZOTERO_USER_ID
```2. Check the installation:
```bash
npm list -g mcp-zotero
```3. Try reinstalling:
```bash
npm uninstall -g mcp-zotero
npm install -g mcp-zotero
```