- Home
- MCP servers
- Zotero
Zotero
- python
23
GitHub Stars
python
Language
6 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"swairshah-zotero-mcp-server": {
"command": "uv",
"args": [
"--directory",
"/Users/swair/shahswai/personal/zotero-mcp-server",
"run",
"python",
"-m",
"zotero_mcp.server"
],
"env": {
"ZOTERO_API_KEY": "YOUR_API_KEY_PLACEHOLDER",
"ZOTERO_USER_ID": "YOUR_USER_ID_PLACEHOLDER"
}
}
}
}A Model Context Protocol (MCP) server for Zotero lets you connect your local Zotero library to MCP clients so you can search papers, view details, manage notes, and generate summaries from your Zotero collection. It provides a programmable interface to interact with your library across tools and apps you use in your research workflow.
How to use
You use an MCP client to talk to the Zotero MCP server and perform common library actions. Typical workflows include searching papers by tags or keywords, retrieving paper details and attached notes, adding new notes to entries, and requesting automatic paper summaries. You can integrate with desktop clients and other tools that support MCP to automate research tasks and keep your Zotero notes and papers organized.
How to install
Prerequisites: you need Python and a working internet connection to install dependencies and run the server.
pip install -e .
Additional configuration and usage notes
You have two practical options to run the Zotero MCP server. You can authenticate with Zotero’s API by providing an API key and user ID, or you can bypass the API and access the local SQLite database directly. If you want to use the API keys, create a .env file in your project root and add the Zotero credentials.
ZOTERO_API_KEY=your_api_key_here
ZOTERO_USER_ID=your_user_id_here
If you are integrating with the Anthropic Desktop App
To integrate with the Anthropic Desktop app, you can run the server as an MCP backend. Use one of the configurations shown below depending on your setup. The first option uses uv with a project directory and starts the server module. The second option shows a robust setup that activates a Python virtual environment before starting the server.
{
"mcpServers": {
"zotero-mcp-server": {
"command": "uv",
"args": [
"--directory",
"/Users/swairshah/work/research/zotero-mcp",
"run",
"python",
"-m",
"zotero_mcp.server"
]
}
}
}
If you encounter an initialization error with the first approach
If you see an error about an unexpected argument like --directory, switch to a setup that activates a virtual environment and then starts the server. The following configuration demonstrates this approach.
{
"mcpServers": {
"zotero-mcp-server": {
"command": "bash",
"args": [
"-c",
"cd /Users/shahswai/personal/zotero-mcp-server && source .venv/bin/activate && python -m zotero_mcp.server"
]
}
}
}
Available tools
search_papers
Query papers in your Zotero library by tags, keywords, or other metadata to retrieve matching entries.
get_paper_details
Fetch a paper's details, including attached notes, authors, year, and publication venue.
add_notes
Add notes to a specific paper entry to capture insights or summaries.
get_summaries
Request automated summaries for papers to quickly grasp key points.