Skip to main content
Glama
54yyyu
by 54yyyu

zotero_update_search_database

Build or refresh the semantic search database by embedding Zotero items incrementally, or force a full rebuild when needed.

Instructions

Build or refresh the semantic search embedding database from Zotero items. Run this: (a) after first install, (b) after adding items via zotero_add_item, or (c) when the user has added items directly in Zotero desktop since the last update. By default the update is INCREMENTAL — only new or changed items are re-embedded, so repeated calls are cheap. force_rebuild=True re-embeds ALL items from scratch (slow; use when changing the embedding model or recovering from corruption). limit: optional cap on items processed (useful for smoke-testing). Progress is reported via the MCP context; on large libraries an incremental update is seconds, a full rebuild can take minutes. Requires the [semantic] optional dependency and a configured embedding provider (see config.json). Check status with zotero_get_search_database_status. Example: zotero_update_search_database() after adding a batch of papers.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNoLimit number of items to process (useful for testing)
force_rebuildNoWhether to rebuild the entire database from scratch

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden for behavioral disclosure. It covers dependency requirements ([semantic] package, embedding provider/config.json), performance characteristics (seconds vs minutes), default behavior (incremental), and progress reporting via MCP context. Only minor gaps: no error behavior or failure modes, otherwise strong.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is thorough and front-loaded with the core purpose and usage triggers, then dives into behavior and examples. Slightly long but every sentence earns its place — context triggers, performance notes, dependencies, and example all add distinct value. Not overlong for the complexity of the tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (side effects on a database, model config, performance differences), the description is quite complete despite rich schema and an output schema. Covers prerequisites, when to run, cost profiles, and how to verify. Minor gap: no mention of error recovery if embedding provider is misconfigured, but this is a strong description overall.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds real value beyond the schema by explaining force_rebuild's semantics (re-embeds ALL items, use when changing model or recovering from corruption) and limit's purpose (smoke-testing), plus the incremental-vs-full behavioral contrast. This elevates it above baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Build or refresh the semantic search embedding database from Zotero items' — a specific verb+resource+scope. It distinguishes from siblings by explicitly referencing zotero_add_item, zotero_get_search_database_status, and the update/rebuild distinction, making its role among the 35 sibling tools clear.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit when-to-use triggers (first install, after zotero_add_item, after direct desktop additions) and when-not-to (incremental vs force_rebuild slow full rebuild), plus a reference to the status-checking sibling tool. This is model guidance for selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

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/54yyyu/zotero-mcp'

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