← Registry

Content Tools

multilocale.com

Helps manage translation files for native and web apps.

1 endpoint17 known toolsFirst detected July 31, 2026Last detected August 31, 2026

ENDPOINT 1

https://mcp.multilocale.com/mcp

No auth detected

MCP server metadata

Name
multilocale-mcp
Version
0.1.1
Capabilities
tools.listChangedresources.listChanged
Server instructions

# Localization workspace with Multilocale ## What this connector can and cannot do Read this before planning any work. The Multilocale connector is remote and OAuth-scoped: it can read and write translation data, but it cannot see or edit the user's codebase. | It can | It cannot | | ------------------------------------------------------------------------- | ---------------------------------------------------------- | | Read and write translation data — projects, locales, phrases, team roster | Read, search, write or diff any file on the user's machine | | Machine-translate one phrase, or every phrase of a new locale | Extract the strings an app currently hard-codes | | Export a locale dictionary as bounded, paginated JSON | Write a translation file into a repository | | Audit coverage and duplicate source copy inside a project | Run a command, install a package, or open a pull request | So **"localize my app" is not a request this connector can complete on its own.** Reading the strings a codebase already contains, and writing translation files back into it, is the job of the `multilocale` CLI (`npx multilocale`) — run by the user, or by an agent that does have shell and filesystem access, such as Claude Code, Codex or Cursor. `multilocale import` uploads a codebase's existing flat JSON or Android `strings.xml`; `multilocale download` writes every locale back out. When a user asks for a whole app to be localized: 1. Say plainly that this connector holds the translation data while the CLI moves the files, so part of the work happens in their terminal. 2. Do the part that does belong here — create or inspect the project, set its locales, review coverage, fix wording. 3. Hand over the file-side commands, and point at the companion `localize-an-app` skill (`npx skills add multilocale/skills`) and https://www.multilocale.com/integrations/cli/ for the full recipe. Never invent phrase keys or values from a guess about the user's UI, and never report an app as localized on the strength of connector calls alone: no tool here has read a line of their code. ## Connecting This skill drives the Multilocale MCP connector. The user must have connected Multilocale and signed in to an account with access to a project. If a call fails with an authorization error, ask the user to connect Multilocale instead of retrying or asking for an API key. ## Start by resolving the project Project names are organization-scoped slugs. Most phrase tools take the project name, while project detail and write tools may accept an id or name. - Call `list_projects` when the user has not identified a project precisely. - Use `get_project` for exact metadata or `show_project_overview` when an inline overview would help. - Do not guess a project from a common name such as `app` or `website`. - Use the returned project name for phrase calls. Never infer an organization id; OAuth supplies the tenant boundary. ## Available tools Project and team reads: | Tool | Use it for | | ----------------------- | ---------------------------------------------------------------------------------------------- | | `list_projects` | Discover accessible project ids, names, default locales and locale lists | | `get_project` | Read one project's bounded metadata | | `show_project_overview` | Render one project's safe inline overview | | `list_team_members` | See a roster with display name and role only; email and internal member/role IDs stay excluded | Phrase reads and audits: | Tool | Use it for | | ------------------------------ | --------------------------------------------------------------------- | | `list_phrases` | Bounded phrase preview, optionally filtered by locale or exact key | | `get_phrase` | Exact key across locales, including generated-copy status and sharing | | `search_phrases` | Search keys and values when the exact key is unknown | | `find_missing_translations` | Coverage percentages and missing keys by locale | | `find_duplicate_phrase_values` | Duplicate default-locale values that may be consolidation candidates | | `export_locale_dictionary` | Paginated flat key/value export for one locale | Writes: | Tool | Use it for | | ---------------- | ---------------------------------------------------------------------- | | `add_project` | Create a project with a default locale and initial locale set | | `update_project` | Replace locales, change the default locale, or set translation context | | `add_phrase` | Create a new key and machine-translate it to configured locales | | `add_locale` | Add one locale and machine-translate every missing source key | | `share_phrase` | Attach every locale row of one key to additional projects | | `update_phrase` | Overwrite one translation and mark it as human-edited | | `delete_phrase` | Permanently delete a key's complete locale group | ## Choose the narrowest read Use `get_phrase` when the key is known. Use `search_phrases` only to discover a key, then switch to the exact read before editing. `list_phrases` and search results are bounded previews; they are not evidence that a large project has no more rows. Use `export_locale_dictionary` for a broad locale review. It returns `hasMore`; continue with the returned next `skip` until false. Values can be truncated at 500 characters and each page contains at most 50 entries. If `valuesTruncated`, `offsetCapReached`, or a `partial` status is returned, say that the export is a preview and do not silently treat it as a byte-exact file. Use the Multilocale CLI when the user needs the complete file bytes. `find_missing_translations` checks at most 10 locales and scans at most 2,000 phrases per locale. `find_duplicate_phrase_values` scans at most 2,000 source phrases. Treat `partial`, `scanTruncated`, `sourceScanTruncated`, `targetScanTruncated`, or `localesTruncated` as an explicit completeness caveat, not evidence that unscanned copy is complete or unique. ## A standard localization audit When asked to audit a project: 1. `get_project` to establish its default locale and configured locales. 2. `find_missing_translations` across all configured target locales. 3. `find_duplicate_phrase_values` to identify repeated default-locale copy. 4. `list_phrases` per target locale when the user wants a bounded review of machine-generated values. 5. `get_phrase` for each key whose wording or sharing needs close review. 6. `export_locale_dictionary` only when the user requests a full language dictionary or a broad copy review; paginate until `hasMore` is false, and preserve any `partial` caveat. Report coverage gaps separately from copy quality. A present machine-generated value counts as translated, but it may still need human review. ## Writes require exact intent Do not turn an audit, suggestion, or translation request into a saved workspace change. Before any write, identify the exact project, key or locale, summarize what will happen, and obtain the user's approval when the host has not already shown an approval prompt. All seven writes declare `destructiveHint: true`. This is a conservative cross-host approval boundary because each one persists a workspace mutation; it does not mean every write deletes data. The individual tool description and the rules below identify whether the operation creates data, replaces a list, widens sharing, overwrites copy, spends translation capacity, or deletes rows. `add_project` refuses a duplicate name. Include the default locale in the planned locale set and show all initial locales before creating it. `add_phrase` refuses an existing key. First call `get_phrase`; if it exists, use `update_phrase` only after the user chooses one locale and approves the replacement. Show the source value, configured target locales, requested model when specified, and context. The tool can spend translation credits and saves machine-generated values. `add_locale` can translate every source key and therefore has variable cost and a potentially large write surface. First call `find_missing_translations` for the proposed locale, report the missing-key count, translation model and context, then confirm. Do not call it once per missing key. `update_project` treats `locales` as a **complete replacement list**, not a patch. Read the project first, preserve every locale the user did not ask to remove, and explicitly confirm any removal. A new default locale must be in the replacement list. `share_phrase` makes future edits affect every attached project. Read the exact key first, resolve each target with `get_project`, remove the source project and duplicates from the target list, then show the resulting sharing set. ## Overwrites and deletion `update_phrase` overwrites an existing value. It is idempotent but destructive: read the exact key and locale immediately before the call, show the previous and proposed values, list every shared project from the read result, and confirm the replacement. Do not overwrite a different locale as a shortcut for adding a missing translation. `delete_phrase` permanently removes every locale row for the key. If the rows are shared, deletion also affects those other projects; it is not a detach operation. Immediately before deletion, call `get_phrase` without a language filter, show the number of translations and all shared projects, and ask for explicit confirmation naming the key and source project. Never perform broad or inferred deletion. ## Interactive views `show_project_overview` renders a bounded project card, and `get_phrase` can render a phrase-detail card, in hosts that support MCP Apps. When a card is visible, add analysis the card does not show instead of restating every field.

Known tools 17

list_projects

List all MultiLocale projects the authenticated user has access to.

Inferred read-only
get_project

Fetch a single MultiLocale project by id or name.

Inferred read-only
add_project

Create a MultiLocale project with a default locale and optional additional locales.

Potential side effects
update_project

Update a MultiLocale project’s default locale, complete locale list, or translation context.

Potential side effects
list_phrases

List translation phrases for a MultiLocale project.

Inferred read-only
get_phrase

Fetch translations for one exact phrase key in a MultiLocale project.

Inferred read-only
search_phrases

Search translation phrases for a MultiLocale project by matching a query string against phrase keys and values.

Inferred read-only
find_duplicate_phrase_values

Find keys in a bounded scan of one MultiLocale project whose default-locale translations have the same value.

Inferred read-only
find_missing_translations

Report missing keys in a bounded scan of one locale or up to 10 configured locales, compared with the project default locale.

Inferred read-only
export_locale_dictionary

Export one locale of a MultiLocale project as bounded, sorted key/value entries.

Inferred read-only
list_team_members

List a bounded roster for the authenticated MultiLocale organization.

Inferred read-only
add_phrase

Create a new key in a project’s default locale and generate translations for every other configured locale.

Potential side effects
update_phrase

Update the translation value for a specific phrase key and language in a MultiLocale project.

Potential side effects
add_locale

Add a new locale to a project and generate translations for every key currently missing in that locale.

Inferred read-only
share_phrase

Attach every locale translation for one key in a source project to one or more target projects.

Inferred read-only
delete_phrase

Permanently delete every locale translation for one key in a project.

Potential side effects
show_project_overview

Render a bounded overview for a known MultiLocale project.

Inferred read-only

CONNECT WITH APPROVAL

Client installation

Review this server and its permissions before adding it. Secret placeholders must be set locally.

Codex

~/.codex/config.toml

[mcp_servers.multilocale-mcp]
url = "https://mcp.multilocale.com/mcp"
enabled = true
Claude Code

.mcp.json

{
  "mcpServers": {
    "multilocale-mcp": {
      "type": "http",
      "url": "https://mcp.multilocale.com/mcp"
    }
  }
}
Claude Desktop

Settings → Connectors → Add custom connector

Name: multilocale-mcp
Remote MCP URL: https://mcp.multilocale.com/mcp

Add this remote URL as a custom connector in Claude Desktop. Availability depends on the user plan and workspace policy.

Cursor

.cursor/mcp.json

{
  "mcpServers": {
    "multilocale-mcp": {
      "url": "https://mcp.multilocale.com/mcp"
    }
  }
}
Visual Studio Code

.vscode/mcp.json

Add to Visual Studio Code
{
  "servers": {
    "multilocale-mcp": {
      "type": "http",
      "url": "https://mcp.multilocale.com/mcp"
    }
  }
}
Generic MCP

Client-specific MCP configuration

{
  "name": "multilocale-mcp",
  "transport": "streamable-http",
  "url": "https://mcp.multilocale.com/mcp"
}
MCP Inspector

Run the official MCP Inspector locally and enter the indexed Streamable HTTP endpoint.

TRUST AND VERIFICATION EVIDENCE

Trust Data Available

BuiltWith Trust API v2 evidence for multilocale.com was fetched 2026-08-03T16:33:10.897Z and is being refreshed.

Trust status Trusted

multilocale.com is assessed as Trusted: Domain has an established technology history spanning over a year.

Indexed

Evidence is source-attributed and does not guarantee that a third-party server is safe. Risk labels are conservative metadata heuristics.