Skip to main content
Glama

Refresh the search index

refresh_index
Read-onlyIdempotent

Rebuild the search index after library changes, optionally targeting a specific library when multiple are connected.

Instructions

Rebuild the search index if the library has changed. With more than one library connected, pass library (a uuid or path from list_libraries, either the ~/... form or the absolute one) to choose which one; the default is the supported library with the most tracks.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
libraryNoWhich library to use: either the uuid or the path reported by list_libraries (the reported ~/... form is accepted, as is the absolute path). Omit it to use the supported library holding the most tracks. A READ may always omit it. A WRITE may omit it only when a single supported library is connected: with two or more, a write refuses with ambiguous_library listing them, since the choice decides which disk changes; ask the user which, then pass it here. A library copied onto another drive keeps its uuid, so a uuid can name two connected libraries: a write naming such a uuid refuses with ambiguous_library as well. Pass the path to write to one of them.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.17.2

TDQS

A3.5/5.0
Behavior1/5

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

Annotation Contradiction: annotations declare readOnlyHint=true, yet the description says 'Rebuild' and the schema explicitly describes a WRITE path ('a write refuses... since the choice decides which disk changes'). This is a serious inconsistency, so per rubric the score is 1.

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

Conciseness5/5

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

Two concise sentences with the action and condition front-loaded. The parenthetical about library forms is lengthy but provides necessary disambiguation, and there is no filler.

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

Completeness3/5

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

The single parameter is fully documented and the typical trigger is stated, but there is no output schema and no description of result or status behavior. More importantly, the read/write contradiction between annotations and description leaves the operation model incomplete and confusing.

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

Parameters3/5

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

Schema description coverage is 100%, and the schema itself is far more detailed, including READ/WRITE behavior, ambiguous_library errors, and uuid reuse across drives. The description only adds the default-library rule, which the schema already covers, so it provides little added semantic value.

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?

States a specific verb and resource: 'Rebuild the search index,' with a clear trigger condition ('if the library has changed'). This is unambiguous against sibling tools like list_libraries, search_tracks, or audit_library.

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

Usage Guidelines4/5

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

Gives clear usage context: when to use it, when to pass `library`, and what the default does ('supported library with the most tracks'). It does not explicitly name exclusions or alternatives, but the conditional trigger provides enough guidance.

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