Zotero MCP
About
Read+write MCP server for Zotero with full write support — create items, manage collections, find and merge duplicates, import BibTeX
Details
- Author
- BirdInTheTree
- Downloads
- 317
- Categories
- Productivity, Other, Knowledge Base, Database
Jump to
- Full-text search with collection, type, and tag filters
- Create items from field data or automatically from a DOI
- Import BibTeX entries into a collection
- Manage collections: create, add items, remove items
- Find and merge duplicates with conflict protection
- Update and delete items with version conflict protection
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
Zotero MCPCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
Install Python 3.11+ and uv, then clone the repo and run uv sync. Configure two environment variables: ZOTERO_API_KEY (get at https://www.zotero.org/settings/keys) and ZOTERO_USER_ID (shown on the same page). Add the server to your MCP client (e.g., Claude Code or Claude Desktop) by specifying the command uv run --directory /path/to/zotero-mcp python -m zotero_mcp and the required environment variables.
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"zotero mcp": {
"zotero": {
"command": "uv",
"args": [
"run",
"--directory",
"/path/to/zotero-mcp",
"python",
"-m",
"zotero_mcp"
],
"env": {
"ZOTERO_LOCAL": "true"
}
}
}
}
}
McpServers
{
"zotero": {
"command": "uv",
"args": [
"run",
"--directory",
"/path/to/zotero-mcp",
"python",
"-m",
"zotero_mcp"
],
"env": {
"ZOTERO_LOCAL": "true"
}
}
}
zotero-mcp
Read+write MCP server for Zotero. An MCP server with full write support for managing Zotero library from AI assistants.
It lets you create items, manage collections, find and merge duplicates, and import BibTeX from within Claude Code/Desktop, or any MCP-compatible client.
Uses the Zotero Web API (requires API key). Get the key at https://www.zotero.org/settings/keys.
Features
Search & Read
| Tool | Description | |------|-------------| |search_items | Full-text search with collection, type, and tag filters |
| get_item | Detailed metadata or BibTeX export for a single item |
| get_collections | List all collections with hierarchy and item counts |
| get_collection_items | List items in a specific collection |
| find_duplicates | Find duplicates by title/DOI, or scan entire library |
| get_tags | List all tags with item counts |
Write
| Tool | Description | |------|-------------| |create_item | Create item from field data |
| create_item_from_doi | Create item by DOI (auto-fills metadata via Zotero translator + CrossRef) |
| import_bibtex | Import BibTeX entries into a collection |
| update_item | Update item fields with version conflict protection |
Collections
| Tool | Description | |------|-------------| |create_collection | Create a collection (with optional parent) |
| add_to_collections | Add an item to multiple collections at once |
| remove_from_collection | Remove item from collection (doesn't delete it) |
Management
| Tool | Description | |------|-------------| |merge_duplicates | Merge duplicates: transfer metadata, tags, collections to keeper, delete rest |
| delete_item | Delete an item |
Installation
Requires Python 3.11+ and uv.
```bash
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.





