Aller au contenu

search_keys

Find a term across a project's translation strings in every language at once (read-only, free, 0 credits). Returns each matching key with a matched_in array telling you WHERE it hit: which language, whether that is the source language, which field (value, plural:<category>, or key_name/description when include_key_name is set), the full field value, and the character offsets of the first match. Cursor-paginated in keys. Scope: Searches base translation values (source + translations, incl. plural forms) and optionally key name/description; a11y surface overrides (aria/alt/screen-reader/plain-language) are NOT included. query is a literal substring (not a regex). Find-only: there is no search-and-replace tool.

NomTypeDescription
querystringrequisThe term to find. A literal substring (case-insensitive by default); NOT a regular expression.
namespacestringoptionnelOptional namespace slug to restrict the search to one namespace.
languagesarrayoptionnelOptional BCP-47 codes to restrict which languages are searched, e.g. ['fr','en-CA']. Default: ALL (source + every translation language).
case_sensitivebooleanoptionnelMatch case-sensitively. Default false.
whole_wordbooleanoptionnelMatch on word boundaries only (so 'log' does not match 'login'). Default false.
include_key_namebooleanoptionnelAlso search the key NAME and DESCRIPTION (they appear as matched_in entries with language_code:null). Default false.
limitintegeroptionnelPage size in KEYS (1-100). Default 25.
cursorstringoptionnelOpaque pagination cursor: pass back the cursor_next from the previous page. Cursor-based, not offset.
project_uuidstringoptionnelTarget project UUID. Optional when exactly one project is configured (SONENTA_PROJECTS); required to disambiguate when several are.
{
"tool": "search_keys",
"arguments": {
"query": "<query>"
}
}