MCP Tools

get_missing_translations

Find translation keys that exist in the reference locale but are missing in other locales. Scans a specific layer or all layers. summary.totalMissingKeys counts every missing key in the project; limit caps only how many of them are listed under missing, over the nested map flattened to one entry per locale, layer and key.

Parameters

ParameterTypeRequiredDescription
layerstringnoLayer name to scope this to (e.g., "root", "app-admin"). If omitted, every layer is included. Call discover to list the layers.
referenceLocalestringnoLocale code used as the source of truth (e.g., "en", "en-US"). Defaults to the project default locale.
targetLocalesstring[]noLocale codes to check for missing keys (e.g., "de", "fr", "es"). Defaults to all locales except the reference.
limitintegernoMaximum number of missing keys to return. Default: 100 for a tool call, unlimited at a terminal. When the cap applies the result carries truncated: true and nextOffset — call again with offset set to that value for the next page, or narrow the request instead.
offsetintegernoNumber of missing keys to skip before returning any. Default: 0. Pass the nextOffset of a truncated result to continue where it stopped.
outputFilestringnoAbsolute path to write the full JSON output to. Only a compact summary is returned to the caller, which is what you want for a result too large to read in one piece. Example: ".i18n-reports/missing-translations.json"
projectDirstringnoAbsolute path to the project root. Defaults to I18N_PROJECT_DIR, then server cwd. Example: "/home/user/my-app".

Result

FieldTypeDescription
truncatedbooleanTrue when limit cut the result short. The totals still count everything.
nextOffsetintegerThe offset to pass to continue where this result stopped. Present only when truncated.
messagestringThe step to take next — how to continue a capped read. Present when there is one.
missingRecord<string, Record<string, string[]>>Locale → layer → keys the reference locale defines and this locale does not. A locale with nothing missing is absent.
summaryobjectWhat was compared, and how much of it is missing. This is what comes back when the full result is diverted to a file.
reportFilestringAbsolute path the full JSON result was written to. Read the file for the findings; the summary below is all that came back.

Behavior Hints

A host reads these to decide whether a call needs your confirmation first.

HintValue
readOnlyHinttrue
openWorldHintfalse

Paired CLI Command

The same operation runs from a terminal as the-i18n-cli missing, whose page documents its flags.

Copyright © 2026