Essential Tools
Zotero Setup Guide
Install Zotero, choose citation and attachment plugins, and connect your library to Obsidian and AI research tools.
Beginner · 30–45 min · No prerequisites
A well-tended reference library compounds in value across every project.
Overview
Zotero is your primary reference management tool for the literature review process. This guide covers essential plugins and configurations to integrate Zotero with your AI-enhanced workflow, particularly with Obsidian and Cherry Studio.
Benefits:
- Centralized reference management
- PDF annotation and extraction
- Seamless integration with Obsidian for notes
- A choice of stored or linked attachments, with different sync limits
- Direct API access for AI tools
Step 1: install Zotero
The current major release is Zotero 10 (checked October 19, 2026). Use the official download page for the latest compatible version and check each plugin's compatibility before upgrading.
1.1 download Zotero
- Visit zotero.org/download (opens in a new tab)
- Download the current Zotero release for Windows
- Run the
.exeinstaller - Follow the installation wizard
- Install the browser connector for your browser (Chrome, Firefox, Edge, etc.)
Most users should download Zotero from the official website; it works on all platforms and handles updates automatically.
1.2 create Zotero account
- Sign up at zotero.org/user/register (opens in a new tab)
- Sign in to Zotero desktop app
- Enable sync in Settings → Sync (Zotero → Settings on macOS; Edit → Settings on Windows/Linux)
- Note: Free tier includes 300MB storage
- External attachment storage has its own quota and device limitations; see below
Step 2: choose optional plugins
Install only what your workflow needs. Plugins can access your library and computer; check the developer and compatibility before installing. Zotero's plugin instructions (opens in a new tab) use Tools → Plugins. Open settings through Zotero → Settings on macOS or Edit → Settings on Windows/Linux.
2.1 install plugin market (Zotero addons)
The plugin market gives Zotero a central place to find and install extensions.
- Download from: GitHub - Zotero Addons (opens in a new tab)
- In Zotero: Tools → Plugins → gear menu → Install Plugin From File
- Select the downloaded
.xpifile - Restart Zotero
- Access via: Tools → Zotero Addons Manager
Benefits: One-click install for other plugins, automatic updates
2.2 Better BibTeX (optional)
Better BibTeX provides customizable citation keys and enhanced exports. It is recommended for the citation-key workflow below, not required for Zotero, ZotLit, or basic Zotero MCP access. ZotLit also supports native item keys and manual exports.
Via Addon Manager:
- Open Zotero Addons Manager
- Search "Better BibTeX"
- Click Install
Manual Installation:
- Download from: retorque.re/zotero-better-bibtex (opens in a new tab)
- Tools → Plugins → gear menu → Install Plugin From File
Configuration:
- Open Settings → Better BibTeX
- Citation keys (this is my personal preference - totally optional but recommended):
- Pattern:
[auth:lower][year] - Example:
smith2024 - Note on duplicates: Better BibTeX automatically adds letters (a, b, c, d) to the end when you have multiple papers from the same first author in the same year:
- First paper:
smith2024a - Second paper:
smith2024b - Third paper:
smith2024c
- First paper:
- This keeps citation keys unique and memorable.
- Pattern:
- Enable: "On item change, export to" (for auto-export)
2.3 attanger - attachment management
Attanger organizes attachments and uses Zotero's native file-renaming templates. Its current documentation (opens in a new tab) distinguishes three modes: Zotero storage, external linked files, or Zotero storage with an external copy.
Installation:
- Via Addon Manager: Search "Attanger"
- Or download from: GitHub - Zotero Attanger (opens in a new tab)
Configuration for external attachments:
-
Open Settings → Attanger and choose a mode. Keep Zotero storage for Zotero-managed file sync, External Links for files managed outside Zotero, or Storage + External Copy for a one-way organized copy.
-
For an external mode, choose a dedicated attachment folder, for example:
/Users/[username]/Dropbox/Zotero-Attachments/ or /Users/[username]/OneDrive/Zotero-Attachments/ -
Enable: "Automatically rename attachments"
-
Rename format (this is my personal preference - works great for searching):
{{ citationKey suffix="_" }}{{ title truncate="100" }}-
Example output:
smith2024a_Systematic_Review_of_AI_in_Research.pdf -
Why this format? The citation key makes PDFs easier to remember and find. The title makes files searchable on your computer, so you can match PDFs to their Zotero entries.
-
For more format options, see: Zotero File Renaming Guide (opens in a new tab)
-
External storage uses your cloud provider's quota, not unlimited free storage. Zotero does not sync linked files; each desktop needs access to the files and compatible path settings. An external copy is one-way from Zotero and does not carry Zotero annotations. It is not a two-way editing workflow or a guarantee of mobile access. See Zotero's attachment guidance (opens in a new tab).
Never put the Zotero database/data directory in Dropbox, OneDrive, or Google Drive. Only the separate attachment folder belongs there; syncing the database that way can corrupt it. Follow Zotero's data-directory warning (opens in a new tab).
2.4 zotlit plugin for Zotero and Obsidian
ZotLit brings Zotero metadata and annotations into managed regions of Obsidian literature notes. Its Companion plugin can support live updates when enabled. This is not general two-way synchronization of arbitrary edits. Follow the ZotLit documentation (opens in a new tab) for templates, update behavior, and paths on each device.
A. Install ZotLit Zotero Plugin:
- Via Addon Manager: Search for "ZotLit"
- Or download from: GitHub - ZotLit Releases (opens in a new tab)
- Install the
.xpifile and restart Zotero.
B. Install ZotLit Obsidian Plugin:
- In Obsidian, go to
Settings > Community Plugins. - Turn off "Safe mode".
- Browse community plugins and search for "ZotLit".
- Install and then enable the plugin.
C. Configuration:
- In Obsidian's ZotLit settings:
- Connect to the Zotero database. The plugin will usually find the database automatically.
- Configure the template for your literature notes. A good starting point for the template is provided in the ZotLit documentation.
- Set the folder where you want your literature notes to be created (e.g.,
01-Literature-Notes/).
Usage:
- From Obsidian, open the command palette (
Cmd/Ctrl+P) and search for "ZotLit". - You can create new literature notes, insert citations, and pull annotations directly from Zotero into your Obsidian notes.
Step 3: enable API access
3.1 Zotero MCP server for Cherry Studio
Required for the MCP (Model Context Protocol) integration with Cherry Studio. This involves running a local server that connects Cherry Studio to your Zotero library. The server lets the AI search and interact with your research.
A. Prerequisites:
- Python 3.10+ installed on your system.
- Zotero 7+ running. The local API and full-text access below require 7 or newer.
- Better BibTeX is optional, recommended when you want its citation keys.
B. Enable Zotero's Local API:
- In Zotero, open
Settings → Advanced → Miscellaneous(under the Zotero menu on macOS or Edit on Windows/Linux). - Check the box for "Allow other applications to communicate with Zotero".
- Note the port number (usually
23119).
This enables local access, not unrestricted writes. On Zotero 10 or newer, zotero-mcp authorize-local requests separate local-write authorization; inspect it with zotero-mcp authorize-local --status. Older versions can use local reads with separately authorized web API writes. See the Zotero MCP setup and write-access distinction before granting access.
C. Install and Set Up the Zotero MCP Server:
This is a command-line application that you will run from your terminal.
-
Install the server:
- The package on PyPI is
zotero-mcp-server; the command it installs iszotero-mcp.
uv tool install "zotero-mcp-server[semantic]"- The base install stays small, and the heavier dependencies live in optional extras. The
semanticextra is the one that provides the embedding and vector-search machinery Step 2 configures, so install it now if you want semantic search. Use[all]instead to add PDF outline extraction and Scite citation data.
- The package on PyPI is
-
Initial Setup & Embedding Configuration:
- After installation, run the interactive setup command:
zotero-mcp setup- This process asks you to choose a semantic search embedding model. You have several options, including:
- Default: A local model that requires no API keys.
- Gemini: Uses Google's embedding models. The setup prompts you for your Gemini API key.
- OpenAI: Uses OpenAI's embedding models. You need an OpenAI API key.
- Select Gemini and provide your API key when prompted to enable semantic search on your research library.
-
Build the Database:
- To allow the MCP to search your Zotero library, you need to build its database. For the most comprehensive search, include full-text extraction:
zotero-mcp update-db --fulltext
D. Connect to Cherry Studio:
- In Cherry Studio, go to
Settings > MCP Servers > Edit MCP Configuration. - Add the following JSON configuration:
{ "mcpServers": { "zotero": { "name": "zotero", "type": "stdio", "isActive": true, "command": "zotero-mcp", "args": [], "env": { "ZOTERO_LOCAL": "true" } } } }
E. Further Information:
- For an overview, advanced configuration, and troubleshooting, see the official Zotero MCP repository (opens in a new tab).
3.2 Better BibTeX API
Better BibTeX provides a separate JSON-RPC endpoint (opens in a new tab) for integrations that request it. This is not Zotero's web API or the local API used by Zotero MCP. With Zotero and Better BibTeX running, its read-only readiness method returns their versions:
curl http://localhost:23119/better-bibtex/json-rpc \
-H 'Content-Type: application/json' \
--data '{"jsonrpc":"2.0","method":"api.ready","id":1}'Other JSON-RPC methods can change your library. Enable only the integration your workflow needs; do not expose the local endpoint to the network.
Step 4: Research Rabbit integration
This is optional. ResearchRabbit is a citation-network discovery route, not a prerequisite for a working Zotero library.
4.1 prerequisites
Before connecting Research Rabbit to Zotero, ensure you have:
- Zotero web sync enabled (Settings → Sync → logged in)
- At least one collection with seed papers
- A Research Rabbit account at researchrabbit.ai (opens in a new tab)
4.2 connect Research Rabbit to Zotero
Step 1: Enable Zotero Web Sync (if not already done)
- In Zotero desktop: Settings → Sync
- Log in with your Zotero account
- Ensure "Sync automatically" is checked
- Allow sync to complete before proceeding
Step 2: Import a collection Follow the ResearchRabbit connection and import steps. Authorize the intended Zotero account, then choose the articles and destination collection in ResearchRabbit's importer.
Step 3: Verify Import
- Check that all papers imported correctly
- Match imported papers with their titles
- Compare the selected articles with the imported records before using them for screening
4.3 import and export workflow
ResearchRabbit's Zotero importer guide (opens in a new tab) says two-way sync is still under development. Use an explicit import and export workflow:
- Sync your seed collection from Zotero desktop to your Zotero web library.
- Import that collection into ResearchRabbit and explore related papers.
- Export your discoveries from ResearchRabbit as a BibTeX file.
- Import that file into Zotero, check the metadata, and resolve duplicates.
Changes do not synchronize automatically between the applications. Keep Zotero as your curated library and repeat the import or export when needed. The Research Rabbit setup guide explains the same workflow.
4.4 best practices for integration
Collection Naming Strategy:
Zotero Collections:
├── Research-2025_SeedPapers # Original seed papers
├── Research-2025_RR_Discovered # Papers found via Research Rabbit
└── Research-2025_Final_Curated # Final selection after human reviewRecommended Workflow:
- Start in Zotero: Import 3-5 seed papers from databases
- Explore in Research Rabbit: Import seed collection, discover related papers
- Curate in Zotero: Export discoveries as BibTeX, import them, then apply inclusion criteria
- Iterate: Repeat discovery-curation cycles as needed
4.5 troubleshooting integration
If a collection is missing, first check that it appears in your Zotero web library and that you linked the intended account. Review the access you granted. Large libraries can take time to load; the importer does not document a 50-paper limit.
If records are missing after import, compare your selection with the result and check the official importer guide (opens in a new tab). Do not diagnose an import problem as failed two-way sync: that feature is not yet available. For group material, check your access and sharing permissions before copying or exporting it.
4.6 alternative export methods
To bring discoveries back to Zotero, use file-based transfer:
Export from Research Rabbit:
- In Library, open the collection and select the papers, then choose Export
- Choose BibTeX (.bib) format
- Download file
Import to Zotero:
- File → Import
- Select the .bib file
- Choose "Place imported items in new collection"
- Name collection appropriately
Step 5: configure for systematic reviews
5.1 create collections structure
My Library/
├── Systematic Review Project/
│ ├── Search Results/
│ │ ├── Database 1/
│ │ ├── Database 2/
│ │ └── Grey Literature/
│ ├── Screening/
│ │ ├── Title-Abstract/
│ │ ├── Full-Text/
│ │ └── Excluded/
│ ├── Included Studies/
│ └── Analysis/5.2 set up tags for review stages
Create standard tags:
#to-screen#screening-passed#full-text-review#included#excluded-reason-1(not relevant)#excluded-reason-2(wrong methodology)#excluded-reason-3(duplicate)
5.3 create saved searches
- Edit → New Saved Search
- Examples:
- "Needs Screening": Tag is not
#screening-passed - "Recent AI Papers": Date Added in last 7 days AND Any field contains "AI"
- "High Quality": Item Type is "Journal Article" AND Publication contains "Nature" OR "Science"
- "Needs Screening": Tag is not
Step 6: import and export settings
6.1 import from databases
For systematic reviews, use these formats:
- Web of Science: BibTeX or RIS
- Scopus: RIS or BibTeX
- PubMed: PubMed XML
- IEEE Xplore: BibTeX
- Google Scholar: Use Zotero Connector
- OpenAlex: paste DOIs into Add Item by Identifier (the magic wand), one per line; see the OpenAlex guide
Bulk Import Process:
- File → Import
- Choose file format
- Select: "Place imported items in new collection"
- Name: "Database Name - Date"
6.2 export for analysis
For Obsidian:
- Better BibTeX → Export Library
- Format: Better CSL JSON or Better BibTeX
- Keep updated: Check this for auto-sync
For Cherry Studio:
- Use API access (configured above)
- Or export as CSL JSON
Step 7: PDF management and annotation
7.1 built-in PDF reader
Zotero includes a built-in PDF reader for annotation:
- Double-click any PDF
- Use highlighting tools. Colors can carry meaning:
- Yellow: Important points
- Red: Disagree/Question
- Green: Agree/Support
- Blue: Methodology
- Purple: Future research
7.2 extract annotations
- Right-click PDF → "Add Note from Annotations"
- Creates structured note with:
- All highlights with page numbers
- Your comments
- Links back to PDF location
7.3 export annotations to Obsidian
With plugins configured:
- Right-click → "Create Obsidian Note"
- Annotations automatically included
- Each highlight links back to PDF page
Step 8: backup strategy
8.1 database backup
Your Zotero database location:
- Windows:
C:\Users\[username]\Zotero - Mac:
/Users/[username]/Zotero - Linux:
/home/[username]/Zotero
Backup regularly to:
- External drive
- Cloud service (different from attachment sync)
8.2 export library backup
Monthly backup:
- File → Export Library
- Format: Zotero RDF (includes most metadata)
- Include: Files and Notes
- Save with date:
Zotero-Backup-2025-09-01.rdf
Troubleshooting
Common issues
Sync conflicts
- Disable auto-sync during bulk imports
- Resolve conflicts by choosing "Use local version"
- Re-enable after import complete
Attachment not found
- Check Attanger settings
- Verify cloud folder is synced
- Tools → Manage Attachments → Convert to Linked Files
Better BibTeX slow
- Reduce citation key update frequency
- Disable "Background export"
- Pin citation keys for large libraries
API not working
- Check firewall settings
- Restart Zotero
- Verify port 23119 is not in use
Plugin compatibility
- Always check "Compatible with Zotero"
- Disable old plugins before updating
- Check GitHub issues for known problems
Quick reference
Keyboard shortcuts
Cmd/Ctrl + Shift + N: New item from identifier (DOI, ISBN)Cmd/Ctrl + Shift + A: Add attachmentCmd/Ctrl + Shift + C: Copy citationTab: Move between fieldsShift + Enter: Create new creator field
Useful workflows
Adding papers from PDF
- Drag PDF into Zotero
- Right-click → "Retrieve Metadata for PDF"
- Verify and correct metadata
- Add tags for review stage
Bulk tagging
- Select multiple items
- Drag to tag in left panel
- Or right-click → "Assign Tags"
Quick export to Obsidian
- Select papers
Cmd/Ctrl + Shift + C(with Better BibTeX)- Paste in Obsidian with citations
Integration points
With Obsidian
- Better BibTeX provides citation keys
- Obsidian Note plugin creates notes
- ZotLit updates Zotero-derived note regions; live updates require its Companion and configuration
With Cherry Studio
- Local API enables MCP access
- Zotero MCP searches library
- Exports feed the AI knowledge base
With cloud services
- Attanger can organize external linked files or maintain a one-way copy
- External storage has its own quota and per-device paths; Zotero does not sync linked files
- Keep the Zotero database out of third-party cloud-sync folders
Checklist
By the end of this guide, you should have completed the following:
- Install Zotero
- Install only the plugins your workflow needs
- If using Better BibTeX, configure citation keys
- If using Attanger, choose a storage mode and check attachment access on each device
- If using a local integration, enable the API it requires and verify that connection
- If using ResearchRabbit, test a seed-collection import and BibTeX return to Zotero
- Create collections structure
- Import 3-5 seed papers
- If using an Obsidian integration, test one note import
Check the result
Check the capability you used, not every possible connection:
- a connected tool returns the expected non-sensitive test record or passage, not just a success message
- a source-based account names locators you can check against the original
- a saved result can be reopened in its intended location without replacing the source or your first reading
- your record distinguishes the original output from your corrections and the decision you made
For peer work or individual reading, check the sources and saved records without an API test. A working connection does not establish that an interpretation is sound.
- Generic, vague responses ("very important," "significant impact")
- Missing or incorrect citations
- Suspiciously smooth narratives (no contradictions)
- Error messages or connection timeouts
- Repeated failures at same step
- Output quality below manual baseline
- Identify whether the problem is access, retrieval, interpretation or saving the result.
- For a connection problem, repeat a small non-sensitive test and inspect the error. Check account access in the tool's settings; do not put keys in your notes.
- For a source problem, return to the original passage and verify its locator. Do not solve an unsupported claim by merely changing models.
- Record what failed and pause the dependent step. Consult the relevant guide or ask your instructor about an unclear course requirement.
Tool Comparison Matrix
Compare tools against the work you need to do, not a permanent yes/no feature grid. Prices, storage allowances, plugins and account permissions change. The choices below describe the routes documented in this book, not a ranking of every alternative.
Reference Management
This book's worked route uses Zotero and the separate Zotero MCP integration. If you already use EndNote or Mendeley, test a small export and import before migrating. Check that citation keys, attachments, annotations and collection structure survive; a successful bibliography import does not establish that all four transferred.
AI Interfaces
| Route | What to check before choosing it |
|---|---|
| Cherry Studio | The selected provider, model, API billing and MCP configuration. Installing the client does not supply a provider account or make cloud models work offline. |
| ChatGPT web | Custom remote MCP connections are available subject to plan and workspace permissions. Read/fetch access and write-capable access are different entitlements. Check the current connection guide (opens in a new tab). |
| Claude.ai | Remote MCP connectors are available subject to plan limits and organization controls. They connect from Anthropic's infrastructure, not directly to a server on your laptop. Check the current connector guide (opens in a new tab). |
| Other browser clients | Check the exact client's current integration and export documentation. A provider API, a CLI and a browser app need not expose the same capabilities. |
A browser connector to a remote service is not the same installation as a local stdio server. Choose the transport and permissions your intended host actually supports. These are documentation-confirmed routes, not a test of your account.
Knowledge Management & Note-Taking
The Obsidian route is the worked example here. If you use Notion or OneNote, first test how source links, annotations and exports will move between your chosen tools. Keep an editable export and check what remains accessible without the service. The absence of a setup guide in this book is not evidence that an integration does not exist.
Academic Writing & Paper Drafting
Follow the Zettlr guide for the book's drafting route. Before committing a project to any editor, export a representative document with citations, equations, tables and revision marks into the format your coauthors or publisher require. An editor being able to export a file does not establish that every feature survives.
What's next
Your library can stand on its own. To let an AI partner work with it, choose a supported host in the Zotero MCP guide. For a graphical course setup, follow the Cherry Studio guide.
External references
cite this page
Lin, X. (2026). Zotero Setup Guide. Research Memex. https://research-memex.org/docs/implementation/foundational-setup/zotero-setup-guide
@misc{docs-implementation-foundational-setup-zotero-setup-guide-2026,
author = {Xule Lin},
title = {Zotero Setup Guide},
year = {2026},
howpublished = {\url{https://research-memex.org/docs/implementation/foundational-setup/zotero-setup-guide}},
note = {ORCID: 0000-0001-7885-4194}
}one renderingthe source remains