Skip to main content
Glama

zotero-mcp

zotero-mcp is the Research Workbench's capability-honest stdio adapter for Zotero 7. It uses Zotero's built-in, GET-only local API for reads and the separately installed Research Workbench Zotero extension for authenticated writes. It never opens zotero.sqlite or the Zotero data directory.

The stdio entry supports MCP 2026-07-28's stateless server/discover lifecycle and legacy initialize-based clients. Its static tool catalog is publicly cacheable for five minutes, reducing repeated catalog transfer and prompt churn.

Requirements and setup

  • Node.js 20 or newer

  • Zotero 7 for live use

  • The Research Workbench Zotero extension for write tools

npm install
npm run build
npm test
node dist/src/index.js

Configuration:

  • ZOTERO_MCP_BASE_URL defaults to http://127.0.0.1:23119. Only plain-HTTP URLs using the exact loopback hostnames 127.0.0.1, localhost, or [::1] are accepted; userinfo is rejected and redirects are never followed.

  • ZOTERO_MCP_TOKEN_FILE defaults to ~/.research-workbench/zotero-bridge.json.

The server always starts and advertises all 15 contracted tools. When Zotero or the extension is unavailable, calls return the shared structured error envelope with an actionable code and message.

Related MCP server: zotio

Capability notes

  • Reads are local and read-only.

  • Writes are narrow Zotero data-layer operations provided by the extension.

  • Moving an item to trash is supported; permanent deletion is not exposed.

  • Linked-URL attachments are supported; file-content upload is not.

  • The item full-text endpoint is probed only when requested. Zotero on the target machine currently returns 404 for /api/users/0/items/<key>/fulltext, so the tool returns unsupported_capability rather than claiming abstract metadata is full text.

  • zotero_health.writeAuth is true only when extension health explicitly confirms the supplied token; the existence of a token file alone is not reported as valid auth.

Tests

npm test is fully offline. A mock HTTP server replays checked-in, synthetic local-API fixtures and covers Zotero-down, token-missing, extension-absent, stale-version, and full-text-unsupported behavior. No automated test writes to a real Zotero library.

License: MIT. See LICENSE.

A
license - permissive license
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    A
    maintenance
    MCP server that exposes 45 tools for Zotero reference management, enabling AI agents to read/write items, search, extract PDF text, and manage workspaces via the Zotero CLI.
    200
    AGPL 3.0
  • A
    license
    A
    quality
    B
    maintenance
    A Zotero MCP server built for agent safety: a capability-tagged tool registry (every command carries operation/requires/destructive annotations), preview-first writes behind a mutation journal, and read-only defaults. Single Go binary with an MCPB one-click manifest for Claude Desktop.
    6
    2
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Provides full read/write access to Zotero libraries through 36 MCP tools, including search, add, tag, update, delete, and move operations for items, collections, attachments, notes, and saved searches. Enables AI assistants to manage a Zotero library remotely, with support for both local stdio and multi-tenant HTTP OAuth deployments.
    39
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    MCP server for interacting with a Zotero library via the local API. Enables searching, retrieving, creating, updating, and deleting Zotero items, managing collections and tags, and generating citations.

View all related MCP servers

Related MCP Connectors

  • Remote MCP server for full read/write access to a Zotero library

  • OpenAlex MCP — wraps the OpenAlex API (scholarly works, free, no auth)

  • Query SEC EDGAR filings, XBRL financials, and company data through MCP. STDIO & Streamable HTTP.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/BlaineHeffron/zotero-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server