MCP tools

The LangSync tools on the Norcube MCP server. Read namespaces, terms, translations and the glossary, add terms, write translations and start AI translation from your AI assistant.

Not verified yet

The Norcube MCP server lets AI assistants such as Claude, Cursor or ChatGPT work with your LangSync translations: find what's still missing, add new keys while they write code, fix a translation, or start AI translation of a whole namespace. Every call runs as you, with your own Norcube role. Connecting, consent and scopes are covered on the platform page.

ToolScopeWhat it does
langsync_list_namespaceslangsync.readNamespaces with languages, progress, term count and default prompt.
langsync_get_namespacelangsync.readOne namespace and its languages (codes, source language).
langsync_list_termslangsync.readTerms with their translations, filtered and paged.
langsync_list_glossarylangsync.readThe organization's glossary.
langsync_add_termlangsync.writeAdd a term, optionally AI-translating it right away.
langsync_set_translationlangsync.writeWrite one translation in one language.
langsync_translate_missinglangsync.writeStart AI translation of everything still missing.

If the connection covers more than one organization, every tool also takes an organization argument (the organization id). See Organizations.

Permissions

ScopeShown on the consent screen asYour role needs
langsync.readView translationsListNamespaces and ListTerms
langsync.writeEdit translationsUpdateTermTranslation

langsync.write only needs the translation permission, so a translator role can connect too. Every call is still checked against your role: a translator who may edit only German in one namespace can only write German there, and can't add terms without CreateTerm.

A connection with langsync.write can make exactly four changes: add a term, edit a term, write a translation and start translate-missing. Everything else (namespaces, languages, the glossary, custom prompts, API keys, imports, sync) stays in the dashboard and the CLI, whatever your role allows.

Reading translations

Namespaces are addressed by name, and languages by code (de-DE, pt-BR), exactly as in the dashboard. Call langsync_get_namespace to see a namespace's codes and which one is the source language.

langsync_list_terms returns each term's key, context and translations. Every translation shows aiGenerated: true means the text was written by AI and no person has edited it since (see the AI label). Filters:

  • search: matches term keys and source text.
  • missingLanguage: a language code; only terms not yet translated into it.
  • anyMissing: only terms missing at least one language.

Results are paged (25 by default, up to 100 with limit). When there's more, the response includes nextCursor; pass it back as cursor.

Writing translations

  • langsync_add_term adds a key with its source-language text and optional context for translators. Set translate: true to also have AI translate it into the namespace's other languages at once.
  • langsync_set_translation writes one value for one term (termId from langsync_list_terms) in one language. It counts as written by a person, so it removes the AI label.
  • langsync_translate_missing starts AI translation of every missing value in a namespace, or only for the languages you list. It follows the glossary and the namespace's default custom prompt, or the customPromptId you pass. It runs in the background: follow the namespace's progress with langsync_get_namespace, or list what's still missing with langsync_list_terms.

AI translation (translate: true and langsync_translate_missing) counts towards your LangSync usage exactly like in the dashboard, and shares the same hourly AI translation limits.

Example prompts

  • "Which keys in the web namespace are still missing German?"
  • "Add checkout.empty_cart with the text 'Your cart is empty' to web and translate it."
  • "The French for checkout.title should be 'Paiement'. Fix it."
  • "Translate everything that's missing in mobile into Spanish and Portuguese."

On this page