Zotero MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ZOTERO_MCP_CONFIG | No | Specify the path to the configuration file. | |
| ZOTERO_MINERU_LEDGER | No | Specify the path to the MinerU ledger CSV file. | |
| ZOTERO_MCP_CONFIG_DIR | No | Specify the directory for the configuration file. |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| zotero_pingA | Test access to the configured Zotero Local API from the current environment. |
| zotero_searchA | Search Zotero items and resolve local PDF attachment paths. |
| zotero_matchA | Find the best Zotero item by exact or near-exact title/DOI. |
| zotero_itemA | Show one Zotero item as readable metadata, complete JSON, or a Better BibTeX export. Markdown remains the default and includes local PDF paths. |
| zotero_childrenA | List child attachments/notes for one Zotero parent item key. |
| zotero_get_citation_keyA | Resolve the Better BibTeX citation key for one exact Zotero item key. Uses the running Better BibTeX plugin first, then its stored Zotero citationKey/Extra field when available. |
| zotero_collectionsA | List Zotero collections with full nested paths, keys, and direct item/subcollection counts. |
| zotero_resolve_collectionA | Resolve one exact Zotero collection key, globally unique name, or full path. Fails closed on missing, duplicate, deleted, or malformed collections. Similar candidates are suggestions only and are never selected automatically. |
| zotero_item_collectionsA | Show every Zotero collection containing an item. Child attachment/note keys are resolved to their top-level parent item. |
| zotero_collection_itemsA | List items assigned to an exact Zotero collection key or collection reference, optionally including nested subcollections with duplicate items removed. |
| zotero_web_api_statusA | Read-only check for official Zotero Web API credentials, expected user ID, personal-library write permission, and file-write permission. Performs no write. |
| zotero_plan_paper_importA | Read-only preflight for up to 50 papers. Exact DOI, PMID, PMCID, and arXiv IDs may match existing items. A title-only match is always ambiguous. Reports create, collection-union, unchanged, manual, invalid, or ambiguous actions. Never touches PDFs. |
| zotero_apply_paper_importA | Apply a preflighted batch of up to 50 papers through the official Zotero Web API. Rescans the local library, performs fail-closed cloud exact-ID checks before creation, resolves DOI/PMID/arXiv metadata, and versions collection unions for existing items. Never removes memberships, merges items, edits existing metadata, or creates/downloads/uploads PDF attachments. Zotero desktop sync makes cloud writes visible locally. Requires confirm=true. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/MurmuredVelpro/My-Zotero-MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server