zotero_get_annotations
Retrieve annotations (highlights and notes) from Zotero items, optionally filtered by item key, with PDF fallback for unrecorded annotations. Returns results as markdown or JSON.
Instructions
Get annotations (highlights and attached notes on PDF/EPUB attachments) for a specific item or across the active Zotero library. item_key: pass the parent item key OR an attachment key — both work; attachment-to-parent resolution is automatic. ALWAYS pass item_key when you know which item you want; calling without it returns every annotation in the library (potentially thousands). use_pdf_extraction=True falls back to direct PDF parsing when the Zotero API has no stored annotation record — useful for annotations made outside Zotero desktop. limit: cap on annotations returned; None (default) returns all. format='markdown' (default) returns a readable list; format='json' returns normalized records with stable keys for downstream scripts and other MCP tools. Uses Better BibTeX when Zotero desktop is running locally, otherwise the Zotero web API. Example: zotero_get_annotations(item_key='ABC12345') → every highlight/note on that paper.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of annotations to return | |
| format | No | ``markdown`` for human-readable output or ``json`` for normalized structured records. | markdown |
| item_key | No | Optional Zotero item key/ID to filter annotations by parent item | |
| use_pdf_extraction | No | Whether to attempt direct PDF extraction as a fallback |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |