zotero-grounded-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ZOTERO_MODE | No | Mode: 'local' for Zotero desktop, 'web' for zotero.org API | local |
| ZOTERO_API_KEY | No | API key from zotero.org/settings/keys (required in web mode) | |
| ZOTERO_USER_ID | No | Your numeric user ID (required in web mode for user libraries) | |
| ZOTERO_GROUP_ID | No | Numeric group ID (required when ZOTERO_LIBRARY_TYPE=group) | |
| ZOTERO_LOCAL_PORT | No | Port for the local Zotero connector | 23119 |
| ZOTERO_LIBRARY_TYPE | No | Library type: 'user' or 'group' | user |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| zotero_searchA | Search your Zotero library by query string. Searches title, author, and year. Optionally filter by tag or collection key. |
| zotero_get_itemA | Get full metadata for a Zotero item by its key. Returns all fields including abstract, tags, collections, and CSL-JSON. |
| zotero_collectionsA | List all collections in your Zotero library. Returns collection names and keys. |
| zotero_citeA | Generate inline citations and full reference entries for one or more Zotero items. Provide item keys. Useful when writing documents — gives you the exact citation text to insert. |
| zotero_bibliographyA | Generate a formatted bibliography (Works Cited) from a list of Zotero item keys. Returns entries sorted alphabetically, ready to paste into a document. |
| zotero_get_notesA | Get notes and annotations attached to a Zotero item. Returns note content as Markdown and PDF annotations with highlighted text, comments, and page numbers. |
| zotero_get_attachmentsA | Get file attachments (PDFs, etc.) for a Zotero item. Returns filenames, file paths, content types, and link modes. |
| zotero_cite_stubA | Generate validated citation stubs for use in documents. Each stub references a real Zotero item — if any key doesn't exist, the tool returns an error. Use these stubs in .docx documents, then run zotero_process_docx to convert them into live Zotero citations. Stub format: {{CITE:KEY|lib=user:12345}} — simple citation {{CITE:KEY|lib=user:12345|p=42}} — with page locator {{CITE:KEY1;KEY2|lib=group:67890}} — grouped (multiple sources, one claim) {{CITE:KEY|lib=user:12345|prefix=see%20|suffix=%2C%20emphasis%20added}} — with prefix/suffix {{CITE:KEY|lib=user:12345|suppress-author}} — for narrative citations like "Brandom (2019) argues..." {{BIBLIOGRAPHY|lib=user:12345|style=apa}} — bibliography placeholder with document style IMPORTANT: Always call this tool to get stubs instead of writing them by hand. This validates that every key exists in the user's Zotero library, preventing hallucinated references. |
| zotero_process_docxA | Process a .docx file to convert {{CITE:...}} stubs into live Zotero field codes. This directly edits the .docx XML to produce the exact field structure Zotero expects. After processing, open the file in Word and click Zotero > Refresh. Give this tool the file path and it does everything: fetches item data from Zotero, builds field codes, writes the output. Fire and forget. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 9 tools
Most tools target distinct actions: retrieval (get_item, get_notes, get_attachments), discovery (search, collections), and citation output (cite, bibliography, cite_stub, process_docx). However, cite and bibliography both generate reference text, and cite_stub may be confused with cite at first glance.
All tools share the zotero_ prefix and use snake_case, but the pattern is inconsistent: some are verb_noun (zotero_get_item, zotero_process_docx), some are verb-only (zotero_search, zotero_cite), some are noun-only (zotero_collections, zotero_bibliography), and one is verb_noun with a noun complement (zotero_cite_stub). This mixed style is readable but not fully predictable.
With 9 tools, the server is well-scoped for its purpose: Zotero lookup, citation generation, and docx processing. Each tool fills a distinct role in the workflow, and the count is neither bloated nor sparse.
The tool surface covers the full citation-writing workflow: searching and retrieving items, accessing notes/attachments, generating citations and bibliographies, validating stub keys, and converting stubs into live Zotero fields. No critical missing operations for the stated domain.