Skip to main content
Glama

Search phrases

search_phrases
Read-onlyIdempotent

Search translation phrases for a MultiLocale project by matching a query string against phrase keys and values. Returns a bounded Markdown and structured preview of matching ids, keys, languages, and values.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
queryYesSearch text to match against phrase keys and values
projectYesProject name (slug) to search phrases in
languageNoRestrict search to a specific language code (e.g. en, it)

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
statusYes
phrasesYes
phraseCountYes
phrasesTruncatedYes

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already disclose readOnlyHint=true, idempotentHint=true, destructiveHint=false, so the safety profile is known. The description adds useful behavioral context: it returns a bounded Markdown and structured preview, and it matches against both keys and values. It doesn't disclose details like case sensitivity or partial vs. exact matching, but the 'bounded' preview is a valuable behavior disclosure beyond annotations.

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?

One sentence with no filler. It front-loads the action and resource, then states the result format. Every clause earns its place, and no redundant schema information is repeated.

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?

For a read-only search tool with a rich output schema and full schema parameter coverage, the description is largely complete. It states the matching target, the result format, and the bounded nature. The only gaps are minor: no mention of case sensitivity, pagination limits, or matching semantics (substring vs. exact), but these are not critical for an agent to select and invoke the tool correctly.

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%, so the schema already documents all three parameters (query, project, language). The description adds that matching is against phrase keys and values and that the result is bounded, but it doesn't add much beyond what the schema provides. Baseline 3 is appropriate because the schema carries the heavy lifting.

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 states a specific verb ('Search'), a specific resource ('translation phrases for a MultiLocale project'), and the matching scope ('against phrase keys and values'). It differentiates from sibling tools like list_phrases by emphasizing query-string matching, and from get_phrase by covering multiple results. The title 'Search phrases' is reinforced, and an agent can distinguish this tool from siblings without opening the schema.

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?

The description clarifies when to use this tool: search by a query string against phrase keys and values. It doesn't explicitly say when NOT to use it or name alternatives like list_phrases or get_phrase, but the context is clear: this is the search tool for matching text, while list_phrases would be for broad listing and get_phrase for direct retrieval. It misses a direct comparison to list_phrases, so it's not a 5.

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.

TDQS

A3.9/5.0
Disambiguation3/5

Most tools have distinct purposes, but several overlap: get_project and show_project_overview both fetch a project by id/name, and list_phrases, search_phrases, and export_locale_dictionary all return phrase collections in similar ways. Descriptions help clarify edge cases, but an agent could plausibly select the wrong tool in several scenarios.

Naming Consistency5/5

All tool names follow a consistent snake_case verb_noun pattern: add_, delete_, get_, list_, search_, find_, update_, export_, share_, show_. Minor differences like get_project vs show_project_overview do not break the overall naming convention.

Tool Count4/5

17 tools is slightly above the ideal range but still reasonable for a localization server covering projects, locales, phrases, translation searches, sharing, and team roster. Each tool represents a real operation, even if a few could be consolidated.

Completeness4/5

The surface covers core project and phrase lifecycles well: create/read/update for projects and phrases, delete for phrases, locale updates, translation generation, search/export, and missing-translation analysis. Minor gaps exist, such as no delete_project, no explicit unshare_phrase operation, and no dedicated remove_locale tool.

Resources