What you can do with Zotero

Built for

Academic Researchers, PhD Students, Literature Review Teams, Zotero Power Users

Example workflows

Literature review shortlist

Turns a broad topic into a grounded reading queue from saved references.

Try this

Search my Zotero library for papers about retrieval augmented generation, group the strongest matches by theme, and list title, authors, and year for follow-up reading.

Inspect a paper record

Reads a single reference and its notes and files before any editing.

Try this

Open this paper in my Zotero library, list its notes and attached PDFs, and tell me which details are missing before I can cite it.

Organize a collection

Combines collection setup with a library search in one request.

Try this

Create a Zotero collection for my thesis chapter, find the matching papers in my library, add the best ones, and tell me which I skipped and why.

Download a paper's PDF

Walks from a saved reference to its attached file and downloads it.

Try this

Find the PDF attached to this paper in my Zotero library and download it so I can read it.

Context to know first

Can an AI assistant work with my existing Zotero library?

Yes. It searches the references you have already saved, reads their metadata, notes, and tags, downloads attached PDFs, and organizes collections — grounded in your own library rather than a generic web search.

Does it work with Zotero on the web or the Zotero app on my computer?

Both. Connect your Zotero account and the assistant can read and edit your library from anywhere. Or read directly from the Zotero app while it is open on your machine — handy for a fast, private look at your library without syncing anything new.

Can it add and change papers, not just read them?

Yes, when you connect your Zotero account. It can create and update references, add papers to collections, tidy missing fields, and remove items you no longer need. Reading directly from the Zotero app on your computer is read-only.

Related editorial

Zotero Research Workflows with AI

How AI agents can search your saved library, read citation details and notes, download PDFs, organize collections, and work across shared group libraries.

Read article

AI Skill
SKILL.md

Domain knowledge for Zotero — workflow patterns, data models, and gotchas for your AI agent.

Zotero

Zotero stores bibliographic metadata in personal or group libraries. Items have stable 8-character keys. Attachments and notes are child items under parent records.

Data Model

  • Library — a personal library (users/{userId}) or group library (groups/{groupId}).
  • Items — books, journal articles, web pages, attachments, notes, and other item types from the Zotero schema.
  • Item key — 8-character identifier such as ABCD2345. Keys are stable and used in every read/write call.
  • Collections — hierarchical folders within a library. Membership is stored on items via collections arrays.
  • Tags — free-text labels on items. Search with the tag query parameter.
  • Children — notes and file attachments linked to a parent item via parentItem.
  • Versions — every item carries a numeric version. Updates and deletes must send the current version or Zotero returns 412 Precondition Failed.

Two credential field setups

Choose one setup when you connect — not both in a single credential:

SetupFieldstools/list
Local Zotero desktopDesktop tunnel + optional portRead tools only
Zotero cloud APIuser_id + api_keyAll tools

Need local reads and cloud writes? Create two credentials on two MCP servers.

Cloud vs local (technical)

  • Cloud Web API — user ID + API key at api.zotero.org. Full read/write.
  • Local desktop API — localhost:23119 /api/… while Zotero is open. GET reads only; POST/PUT/DELETE return "Endpoint does not support method" (Zotero upstream limitation).

Common Workflows

  • Search the library with keyword, tag, or item-type filters before opening individual records.
  • Fetch a single item by key when you already have the identifier from search results or user input.
  • List child items to reach notes and PDF attachments linked to a parent citation.
  • Download attachment bytes for a child attachment item key, not the parent citation key.
  • Create a new item from an item template shape, then patch metadata or add collection membership.
  • Use collection tools to organize literature-review shortlists without duplicating citation records.

Operational Notes

  • Item keys vs numeric IDs — always use the 8-character item key from API responses, not internal database IDs.
  • Parent vs attachment — PDFs are attachment child items. Download files using the attachment item key.
  • Writes need version — when updating or deleting, pass the latest version from a prior read response.
  • Group libraries — pass group_id on tools that support shared group libraries.
  • Local Zotero — Advanced → Allow other applications on this computer to communicate with Zotero must be enabled in Zotero settings.
  • Search vs list — keyword search uses the q parameter on item reads. Do not confuse saved-search metadata with live search results.

Tools in this Server (15)

Add To Collection

Add existing Zotero items to a collection without duplicating citation records. Pass one or more item keys.

Delete Collection

Delete a Zotero collection via the cloud Web API. Items remain in the library; only the folder container is removed.

Delete Item

Permanently delete a Zotero item via the cloud Web API. Requires the current item version unless you omit version and let the tool fetch it.

Download File

Download the file bytes for a Zotero attachment item. Returns base64 content plus content type and filename metadata. Large files may spill to a downl...

Get Collection Items

List items belonging to a Zotero collection. Use get_items with collection_key as an alternative search entry point.

Get Collections

Get Zotero collections in a library. Pass collection_key for one collection, or omit it to list collections. Use top=true for root-level folders only.

Get Groups

List Zotero group libraries the connected account can access. Use a returned group id as group_id on other tools for shared libraries.

Get Item Children

List child items under a Zotero parent item — typically notes and file attachments. Use the attachment item key with download_file to fetch PDF bytes.

Get Items

Get items from a Zotero library. Pass item_key for one record with full metadata, or omit it to list or search items. Filter with q, tag, item_type, o...

Get Item Template

Get an empty editable JSON template for a Zotero item type. Use before upsert_item when you need the expected fields for a new record.

Get Key Info

Verify Zotero credentials. In cloud mode returns API key access metadata including user ID and permissions. In local desktop mode confirms the running...

Get Tags

List tags in a Zotero library. Filter by q for tag-name search. Use returned tag names with get_items tag filters.

Remove From Collection

Remove an item from a Zotero collection. The citation record stays in the library unless you delete the item separately.

Upsert Collection

Create or rename a Zotero collection via the cloud Web API. Omit collection_key to create; pass collection_key and version to update.

Upsert Item

Create or update a Zotero library item via the cloud Web API. Omit item_key to create; pass item_key and version to patch an existing record. Use get_...

Frequently Asked Questions

What is the Zotero MCP server?

Connect AI to your Zotero reference library. Search items and collections, read metadata and notes, download PDF attachments, and create or update citation records — via the Zotero Web API or the local desktop API when Zotero is running on your machine. It provides 15 tools that AI agents can use through the Model Context Protocol (MCP).

How do I connect Zotero to my AI agent?

Add the MCPBundles server URL to your MCP client configuration (Claude Desktop, Cursor, VS Code, etc.). The URL format is: https://mcp.mcpbundles.com/bundle/zotero. Authentication is handled automatically.

How many tools does Zotero provide?

Zotero provides 15 tools that can be called by AI agents, along with a SKILL.md that gives your AI agent domain knowledge about when and how to use them.

What authentication does Zotero require?

Zotero uses API Key. Zotero requires credentials. Connect via MCPBundles and authentication is handled automatically.

Can an AI assistant work with my existing Zotero library?

Yes. It searches the references you have already saved, reads their metadata, notes, and tags, downloads attached PDFs, and organizes collections — grounded in your own library rather than a generic web search.

Does it work with Zotero on the web or the Zotero app on my computer?

Both. Connect your Zotero account and the assistant can read and edit your library from anywhere. Or read directly from the Zotero app while it is open on your machine — handy for a fast, private look at your library without syncing anything new.

Can it add and change papers, not just read them?

Yes, when you connect your Zotero account. It can create and update references, add papers to collections, tidy missing fields, and remove items you no longer need. Reading directly from the Zotero app on your computer is read-only.

Does it work with shared group libraries?

Yes. The assistant can work across your personal library and the Zotero group libraries you belong to, so a lab or reading group can keep a shared shelf of papers organized from chat.

Setup Instructions

Connect Zotero to any MCP client in minutes

MCP URL
https://mcp.mcpbundles.com/bundle/zotero

One-click install:

The link prefills the Add custom connector dialog — you still review the values and click Add, then Connect to complete OAuth.

Or add manually

  1. Open claude.ai → Settings → Connectors.
  2. Click the + button and choose Add custom connector.
  3. Set Name to Zotero and paste the MCP URL into Remote MCP server URL.
  4. Click Add. Zotero will appear under Not connected — select it and click Connect to complete OAuth.
Name: Zotero
Remote MCP server URL: https://mcp.mcpbundles.com/bundle/zotero
Authentication: OAuth

Custom connectors at claude.ai require a paid Claude plan (Pro, Max, Team, or Enterprise).

Ready to use Zotero?

Sign in to connect your credentials and start running tools from the chat.