Zotero MCP Server
Gives Claude full read/write access to your Zotero reference library, enabling search, collection management, and article addition through natural language.
README
Zotero MCP Server
An MCP (Model Context Protocol) server that gives Claude full read/write access to your Zotero reference library. Search your library, browse collections, add articles, and organize references — all through natural language.
Built with the MCP Python SDK and pyzotero.
Tools
Read
| Tool | Description |
|---|---|
search_library |
Search your Zotero library by keyword, title, author, or phrase |
get_collections |
List all collections (folders) with keys and item counts |
get_collection_items |
Get all items in a specific collection |
get_item_details |
Get full metadata for a specific item by key |
get_recent_items |
Get the most recently added items |
Write
| Tool | Description |
|---|---|
add_article |
Add a journal article to your library (pairs well with CrossRef, Scopus, ERIC, etc.) |
add_multiple_articles |
Batch-add articles from search results |
create_collection |
Create a new collection or sub-collection |
add_item_to_collection |
Add an existing item to a collection |
Setup
1. Get Zotero API credentials
- Go to zotero.org/settings/keys
- Create a new API key with read/write access to your library
- Note your user ID (shown on the same page)
2. Install
cd zotero-mcp-server
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
Or run directly with uv (dependencies are declared inline):
uv run server.py
3. Add to Claude Desktop
Add this to your claude_desktop_config.json:
{
"mcpServers": {
"zotero": {
"command": "/path/to/zotero-mcp-server/venv/bin/python",
"args": ["/path/to/zotero-mcp-server/server.py"],
"env": {
"ZOTERO_API_KEY": "your-api-key",
"ZOTERO_USER_ID": "your-user-id",
"ZOTERO_LIB_TYPE": "user"
}
}
}
}
Or with uv:
{
"mcpServers": {
"zotero": {
"command": "uv",
"args": ["run", "/path/to/zotero-mcp-server/server.py"],
"env": {
"ZOTERO_API_KEY": "your-api-key",
"ZOTERO_USER_ID": "your-user-id",
"ZOTERO_LIB_TYPE": "user"
}
}
}
}
Usage examples
- "Search my Zotero library for papers on curiosity"
- "Show me my Zotero collections"
- "Add this CrossRef result to my Zotero library"
- "Create a new collection called 'Literature Review' and add these 5 papers to it"
- "What are the most recent items I've added to Zotero?"
Group libraries
To connect to a Zotero group library instead of your personal one, set ZOTERO_LIB_TYPE=group and use the group ID as ZOTERO_USER_ID.
License
MIT
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.