Detailed documentation of all available Zotero MCP tools.
Search for items in your Zotero library, given a query string.
Name | Type | Description | Default |
---|---|---|---|
query |
string | Search query string | Required |
qmode |
string | Query mode, either "titleCreatorYear" or "everything" | "titleCreatorYear" |
item_type |
string | Type of items to search for. Use "-attachment" to exclude attachments. | "-attachment" |
limit |
integer | Maximum number of results to return | 10 |
Markdown-formatted search results with item metadata.
// Example of using zotero_search_items to find papers about machine learning
{
"query": "machine learning",
"qmode": "everything",
"limit": 5
}
Perform an advanced search with multiple criteria.
Name | Type | Description | Default |
---|---|---|---|
conditions |
array | List of search condition dictionaries, each containing: field, operation, value | Required |
join_mode |
string | Whether all conditions must match ("all") or any condition can match ("any") | "all" |
sort_by |
string | Field to sort by (dateAdded, dateModified, title, creator, etc.) | null |
sort_direction |
string | Direction to sort ("asc" or "desc") | "asc" |
limit |
integer | Maximum number of results to return | 50 |
Markdown-formatted search results with item metadata.
// Example of using zotero_advanced_search to find recent papers by a specific author
{
"conditions": [
{
"field": "creator",
"operation": "contains",
"value": "Smith"
},
{
"field": "date",
"operation": "is",
"value": "2023"
}
],
"join_mode": "all",
"sort_by": "dateAdded",
"sort_direction": "desc",
"limit": 10
}
List all collections in your Zotero library.
Name | Type | Description | Default |
---|---|---|---|
limit |
integer | Maximum number of collections to return | null (no limit) |
Markdown-formatted list of collections with hierarchical structure.
Get all items in a specific Zotero collection.
Name | Type | Description | Default |
---|---|---|---|
collection_key |
string | The collection key/ID | Required |
limit |
integer | Maximum number of items to return | 50 |
Markdown-formatted list of items in the collection.
Get all tags used in your Zotero library.
Name | Type | Description | Default |
---|---|---|---|
limit |
integer | Maximum number of tags to return | null (no limit) |
Markdown-formatted list of tags organized alphabetically.
Get recently added items to your Zotero library.
Name | Type | Description | Default |
---|---|---|---|
limit |
integer | Number of items to return | 10 |
Markdown-formatted list of recently added items.
Get detailed metadata for a specific Zotero item by its key.
Name | Type | Description | Default |
---|---|---|---|
item_key |
string | Zotero item key/ID | Required |
include_abstract |
boolean | Whether to include the abstract in the output | true |
Markdown-formatted item metadata.
Get the full text content of a Zotero item by its key.
Name | Type | Description | Default |
---|---|---|---|
item_key |
string | Zotero item key/ID | Required |
Markdown-formatted item metadata followed by the full text content.
Get all child items (attachments, notes) for a specific Zotero item.
Name | Type | Description | Default |
---|---|---|---|
item_key |
string | Zotero item key/ID | Required |
Markdown-formatted list of child items, including attachments and notes.
Get all annotations for a specific item or across your entire Zotero library.
Name | Type | Description | Default |
---|---|---|---|
item_key |
string | Optional Zotero item key/ID to filter annotations by parent item | null |
use_pdf_extraction |
boolean | Whether to attempt direct PDF extraction as a fallback | false |
limit |
integer | Maximum number of annotations to return | null |
Markdown-formatted list of annotations with context.
Retrieve notes from your Zotero library, with options to filter by parent item.
Name | Type | Description | Default |
---|---|---|---|
item_key |
string | Optional Zotero item key/ID to filter notes by parent item | null |
limit |
integer | Maximum number of notes to return | 20 |
Markdown-formatted list of notes.
Search for notes across your Zotero library.
Name | Type | Description | Default |
---|---|---|---|
query |
string | Search query string | Required |
limit |
integer | Maximum number of results to return | 20 |
Markdown-formatted search results with highlighted matches.
Create a new note for a Zotero item. Beta Feature
Name | Type | Description | Default |
---|---|---|---|
item_key |
string | Zotero item key/ID to attach the note to | Required |
note_title |
string | Title for the note | Required |
note_text |
string | Content of the note (can include simple HTML formatting) | Required |
tags |
array | List of tags to apply to the note | null |
Confirmation message with the new note key.
Batch update tags across multiple items matching a search query.
Name | Type | Description | Default |
---|---|---|---|
query |
string | Search query to find items to update | Required |
add_tags |
array | List of tags to add to matched items | null |
remove_tags |
array | List of tags to remove from matched items | null |
limit |
integer | Maximum number of items to process | 50 |
Summary of the batch update operation.
// Example of using zotero_batch_update_tags to tag all machine learning papers
{
"query": "machine learning",
"add_tags": ["ai", "research"],
"remove_tags": ["to-read"],
"limit": 100
}
You can ask Claude to help you find the most recent papers in your library:
You: Find my most recently added papers about machine learning
Claude: I'll search your Zotero library for recently added papers about machine learning.
[Claude uses zotero_search_items
with query "machine learning" and sorts by date added]
Claude: I found 5 recently added papers about machine learning in your Zotero library:
Would you like me to get the full text or metadata for any of these papers?
You can ask Claude to summarize a paper from your library:
You: Summarize the key findings from the paper "Transformers for Time Series" in my library
Claude: Let me find and summarize that paper for you.
[Claude uses zotero_search_items
to find the paper, then zotero_get_item_fulltext
to access its content]
Claude: Here's a summary of the key findings from "Transformers for Time Series: A Survey":
The paper identifies four main advantages of transformer architectures for time series analysis: (1) ability to model long-range dependencies, (2) parallelizable training, (3) flexibility in handling multivariate data, and (4) transfer learning capabilities. The authors review over 30 transformer-based approaches for time series tasks, categorizing them based on their architectures and showing that transformer models consistently outperform traditional methods on benchmark datasets for forecasting, classification, and anomaly detection tasks.
You can ask Claude to help organize your Zotero library:
You: Tag all my papers about deep learning with the tags "neural-networks" and "ai"
Claude: I'll help you tag those papers.
[Claude uses zotero_batch_update_tags
with query "deep learning" and add_tags ["neural-networks", "ai"]]
Claude: I've updated the tags for 15 papers about deep learning in your library. All of them now have the tags "neural-networks" and "ai". Would you like me to show you the list of updated papers?
You can ask Claude to work with your PDF annotations:
You: Extract all annotations from my recent paper on quantum computing
Claude: I'll help you extract those annotations.
[Claude first uses zotero_search_items
to find the paper, then zotero_get_annotations
to extract annotations]
Claude: I've found 12 annotations in your quantum computing paper. Here are the highlights:
Would you like me to summarize these annotations or organize them by topic?
Name | Type | Description | Default |
---|---|---|---|
item_key |
string | Optional Zotero item key/ID to filter annotations by parent item | null |
use_pdf_extraction |
boolean | Whether to attempt direct PDF extraction as a fallback | false |
limit |
integer | Maximum number of annotations to return | null |
Markdown-formatted list of annotations with context.