Everything you need to supercharge your research workflow with AI
Go beyond keyword matching. Our vector-based semantic search understands the meaning behind your queries, finding conceptually related papers even when they use different terminology.
# Example semantic search queries
"Find papers similar to machine learning in neuroscience"
"Research about climate impacts on agriculture"
"Studies on social media and mental health"
"Papers conceptually similar to this abstract: [text]"
Find papers by title, author, content, or tags. Advanced multi-criteria search with AND/OR logic and tag filtering.
Retrieve detailed metadata, full-text content, and attachments. Extract and analyze your research papers with AI.
Extract PDF annotations, search notes, and create new research notes. Works with Zotero's native annotations.
Filter by tags with complex conditions. Support for AND/OR logic and exclusions like "#ML || #AI -#draft".
Export citations in BibTeX format directly through your AI assistant. Perfect for academic writing workflows.
Auto-detect installation method and preserve configurations. One command to update: zotero-mcp update
Get up and running in under 2 minutes
The fastest way to get started with Zotero MCP:
uv tool install "git+https://github.com/54yyyu/zotero-mcp.git"
zotero-mcp setup
Requires uv package manager
Classic Python installation:
pip install git+https://github.com/54yyyu/zotero-mcp.git
zotero-mcp setup
Install via Smithery for Claude Desktop:
npx -y @smithery/cli install @54yyyu/zotero-mcp --client claude
Set up AI-powered semantic search:
# Configure semantic search
zotero-mcp setup --semantic-config-only
# Build the search database
zotero-mcp update-db --fulltext
Configure for your favorite AI client and start chatting with your research
zotero-mcp setup
Add to your claude_desktop_config.json:
{
"mcpServers": {
"zotero": {
"command": "zotero-mcp",
"env": {
"ZOTERO_LOCAL": "true"
}
}
}
}
Go to Settings → MCP Servers → Edit MCP Configuration:
{
"mcpServers": {
"zotero": {
"name": "zotero",
"type": "stdio",
"isActive": true,
"command": "zotero-mcp",
"args": [],
"env": {
"ZOTERO_LOCAL": "true"
}
}
}
}
Fine-tune Zotero MCP for your workflow
Access your library remotely via Zotero's Web API:
zotero-mcp setup --no-local \
--api-key YOUR_API_KEY \
--library-id YOUR_LIBRARY_ID
Get your API key at zotero.org/settings/keys
ZOTERO_LOCAL=true - Use local APIZOTERO_API_KEY - Web API keyZOTERO_LIBRARY_ID - Library IDZOTERO_LIBRARY_TYPE - user or groupZOTERO_EMBEDDING_MODEL - default, openai, gemini, huggingfaceOPENAI_API_KEY - For OpenAI embeddingsGEMINI_API_KEY - For Gemini embeddingszotero-mcp setup # Auto-configure
zotero-mcp setup-info # Show config info
zotero-mcp serve # Run server
zotero-mcp serve --transport streamable-http
zotero-mcp update # Update to latest
zotero-mcp update --check-only
zotero-mcp update-db # Update search DB
zotero-mcp update-db --fulltext
zotero-mcp db-status # Check DB status
Comprehensive API for interacting with your Zotero library
zotero_semantic_search Newzotero_update_search_databasezotero_get_search_database_statuszotero_search_itemszotero_search_by_tag Newzotero_advanced_searchzotero_get_collectionszotero_get_tagszotero_get_recentzotero_get_item_metadatazotero_get_item_fulltextzotero_get_item_childrenzotero_batch_update_tagszotero_get_annotationszotero_get_noteszotero_search_noteszotero_create_note BetaCommon issues and their solutions
Edit > Preferences > Advanced and toggle on "Allow other applications on this computer to communicate with Zotero"zotero-mcp setup to configure your environmentzotero-mcp update-dbzotero-mcp db-status--fulltext flag when building the database--force-rebuildFor optimal annotation extraction, install the Better BibTeX plugin for Zotero.
As a fallback, try using the use_pdf_extraction: true parameter with the zotero_get_annotations tool.
Problems from changing install methods or search options can often be resolved with:
zotero-mcp update-db --force-rebuild
For update issues, try:
zotero-mcp update --force