Skip to main content
Glama

search_collections

Read-onlyIdempotent

Full-text search across every collection you can see, in one call. Returns matching items each decorated with collection (which collection the hit came from) and url. Pair collection + id to fetch the full record via get_object. Call list_collections for the available collections and describe_collection on any one for its full property list; properties not flagged filterable there exist on objects but are not searched here (use get_object for the full record). For a single-collection search use search_collection instead — same query syntax, scoped tighter. Drafts are auto-hidden from anonymous callers.

Input Schema

NameRequiredDescriptionDefault
limitNoMaximum items returned in aggregate across all collections. Capped at 50 for MCP response-size budgets.
queryYesSearch terms. AND-semantics by default; use `or` between terms for OR; wrap phrases in double quotes.
formatNoOutput format for styledtext properties on the matched items. markdown is friendliest for AI consumption.markdown
localeNoBCP 47 locale tag. Accepted for forward-compat with the 3.6 i18n release — has no effect today.

Output Schema

NameRequiredDescriptionDefault
itemsYesMatched objects across collections, each a flat field map decorated with `collection` (the source collection id) and `url`. Field set varies by collection.
limitYesApplied aggregate result cap.
queryYesThe query that was run.
totalYesNumber of items returned in aggregate.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive behavior, but the description adds real context beyond them: drafts are auto-hidden from anonymous callers, non-filterable properties exist on objects yet are not searched, and results are decorated with `collection` and `url`. It stops short of describing result ordering or pagination behavior beyond the limit cap.

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?

Front-loads the core action in the first sentence, then layers alternatives and caveats. Dense but nearly every clause earns its place; the property/filterable caveat is the only sentence that could be trimmed for a hurried reader.

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

Completeness5/5

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

Given an output schema exists, the description need not detail return shapes, yet it still flags the two key result fields and how to use them. Combined with the scoping caveats and sibling routing, an agent has everything needed to call this correctly.

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% (baseline 3), and the description adds semantic scope for `query` by clarifying that only filterable properties are searched and that results must be paired with `id` to fetch records. It doesn't restate limit/format/locale, which the schema already handles well.

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 ('Full-text search across every collection you can see, in one call') plus the scope boundary (all collections vs. one). It explicitly names the narrower sibling search_collection and contrasts it, so an agent can distinguish the two without opening schemas.

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?

Explicitly routes the agent: use list_collections for available collections, describe_collection for property lists, get_object (via collection + id) for the full record, and search_collection for single-collection scope. Each alternative is paired with the condition that selects it.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.