Babelize
Deixe seus aplicativos prontos para o mundo a partir do seu agente de codificação: encontre strings codificadas, traduza-as para mais de 90 idiomas e verifique arquivos de localidade para chaves ausentes e placeholders quebrados.
Documentação
Servidor MCP
Deixe aplicativos prontos para o mundo a partir do Claude Code, Cursor, Codex e outros agentes de IA com @babelize/mcp. O mesmo mecanismo local da CLI.
O servidor MCP Babelize (@babelize/mcp) permite que agentes de codificação de IA deixem seu aplicativo pronto para o mundo: Claude Code, Cursor, Codex ou qualquer cliente MCP. Suas quatro ferramentas de fluxo de trabalho local executam o mesmo mecanismo do npx babelize translate na sua máquina e gravam na sua árvore de trabalho para revisão com git diff. Você não precisa de uma conta Babelize: use sua própria chave de LLM ou uma chave de API Babelize para tradução hospedada.
O fluxo de trabalho
| Ferramenta | Use para | Grava? | Necessita |
|---|---|---|---|
babelize_analyze | Ver o que é necessário para localizar o aplicativo: framework e nível de suporte, configuração de i18n, strings codificadas (arquivo:linha), frases JSX mantidas inteiras como uma mensagem ICU, strings que não podem ser conectadas e por quê, cobertura de locale, chaves não utilizadas, próximos passos | Não (execução seca em uma cópia temporária) | — |
babelize_translate | Extrair strings, conectá-las a next-intl / react-i18next e traduzir para os locales to | Sim, na árvore de trabalho | Chave no ambiente do servidor, árvore git limpa |
babelize_check | QA dos arquivos de locale: chaves ausentes ou vazias, valores não traduzidos, placeholders e tags perdidos, ICU inválido, formas plurais incorretas, violações de glossário | Não | — |
babelize_review | O mesmo QA, limitado às entradas de locale alteradas no diff do git, além de traduções obsoletas de strings de origem alteradas | Não | Repositório Git |
Os agentes seguem o ciclo analisar → traduzir → verificar / revisar → corrigir → repetir. React, Next.js, Django e HTML estático são suportados; Vue e React Native estão em beta.
- Regra da árvore limpa.
babelize_translatese recusa a executar em alterações não confirmadas, então seu resultado é seu próprio diff revisável. Faça commit ou stash primeiro.dryRun: truefaz pré-visualização em uma árvore suja, eforce: truesubstitui. - Execuções incrementais. O arquivo de bloqueio (
.babelize/local/babelize-lock.json) significa que reexecuções traduzem apenas strings novas ou alteradas. Strings com falha são tentadas novamente na próxima execução, e locales anteriores são mantidos a menos quereplace: true. - Respostas compactas. Cada ferramenta retorna um resumo curto mais JSON compacto. Listas são limitadas (
limit, padrão 15) e caminhos são relativos ao projeto. - Caminhos seguros.
pathdeve permanecer dentro do espaço de trabalho. O espaço de trabalho é--workspace/BABELIZE_WORKSPACE, caso contrário as raízes MCP do seu cliente, caso contrário o diretório de trabalho do servidor se for um projeto./e seu diretório inicial nunca são usados. - Uma execução por projeto. Uma segunda
babelize_translateno mesmo projeto enquanto uma está em execução é recusada. Projetos diferentes executam em paralelo.
Chaves de tradução
As chaves vêm do ambiente do servidor MCP. Elas nunca são argumentos de ferramenta e nunca são impressas.
| Variável de ambiente | Provedor |
|---|---|
ANTHROPIC_API_KEY | Anthropic |
OPENAI_API_KEY | OpenAI |
GEMINI_API_KEY | Google Gemini |
GROQ_API_KEY | Groq |
OPENROUTER_API_KEY | OpenRouter |
BABELIZE_API_KEY | Hospedado pela Babelize (nível gratuito incluído). Crie uma chave em Configurações → Chaves de API. --api-key ou apiKey em .babelize/config.json também funcionam |
A primeira chave BYOK encontrada vence, depois a chave Babelize. O agente pode escolher uma com provider (e model para BYOK).
Configuração do cliente
Claude Code
claude mcp add babelize -e ANTHROPIC_API_KEY=sk-ant-... -- npx -y @babelize/mcp
Ou confirme um .mcp.json com escopo de projeto. ${VAR} é lido do shell de cada desenvolvedor:
{
"mcpServers": {
"babelize": {
"command": "npx",
"args": ["-y", "@babelize/mcp"],
"env": { "ANTHROPIC_API_KEY": "${ANTHROPIC_API_KEY}" }
}
}
}
Cursor
.cursor/mcp.json, ou Configurações → MCP → Adicionar novo servidor MCP:
{
"mcpServers": {
"babelize": {
"command": "npx",
"args": ["-y", "@babelize/mcp", "--workspace", "${workspaceFolder}"],
"env": { "OPENAI_API_KEY": "${env:OPENAI_API_KEY}" }
}
}
}
Codex
~/.codex/config.toml:
[mcp_servers.babelize]
command = "npx"
args = ["-y", "@babelize/mcp"]
env = { ANTHROPIC_API_KEY = "sk-ant-..." }
Adicione "--workspace", "/path/to/app" a args se as ferramentas relatarem a pasta errada.
Claude Desktop, opencode e outros
Execute npx -y @babelize/mcp como um servidor stdio com uma variável de ambiente de chave. Se o cliente não iniciar servidores na pasta do seu projeto (o Claude Desktop não inicia), adicione --workspace /path/to/app:
{
"mcpServers": {
"babelize": {
"command": "npx",
"args": ["-y", "@babelize/mcp", "--workspace", "/path/to/app"],
"env": { "GEMINI_API_KEY": "..." }
}
}
}
Exemplos de prompts
- "Deixe este aplicativo pronto para o mundo em alemão e japonês." O agente analisa, traduz para
deeja, executa a verificação e relata as alterações e quaisquer acompanhamentos (como instalarnext-intl). O prompt MCPmake-global-readycontém as mesmas instruções. - "O que seria necessário para localizar este aplicativo? Não altere nada." O agente executa apenas
babelize_analyze. - "Mostre-me o diff para adicionar francês, mas não grave." O agente executa
babelize_translatecomdryRun: true. Isso ainda chama o tradutor. - "Editei as strings em espanhol. Algo está quebrado?" O agente executa
babelize_reviewnas alterações não confirmadas. - "Revise as traduções neste branch em relação ao main." O agente executa
babelize_reviewcombase: "main".
Configuração do projeto e glossário
As ferramentas locais leem .babelize/config.json no projeto para sourceLocale e um glossário opcional, que babelize_check e babelize_review aplicam:
{
"sourceLocale": "en",
"glossary": {
"neverTranslate": ["Babelize"],
"alwaysTranslateAs": [{ "term": "workspace", "translations": { "de": "Arbeitsbereich" } }]
}
}
Ferramentas de gerenciamento de projetos na nuvem
O servidor também inclui 30 ferramentas para projetos em babelize.co. Todas, exceto as duas ferramentas de varredura, precisam de uma chave de API Babelize:
export BABELIZE_API_KEY=bblz_sk_...
Ou coloque a chave em .babelize/config.json:
{ "apiKey": "bblz_sk_..." }
Ferramentas de nuvem comuns
| Ferramenta | Parâmetros | Descrição | Autenticação |
|---|---|---|---|
babelize_scan | directory (obrigatório), extensions (opcional) | Escanear um diretório local em busca de strings codificadas | Não |
babelize_scan_strings | code (obrigatório), language (opcional) | Extrair strings traduzíveis de um trecho de código | Não |
babelize_run | project_id (obrigatório), target_locales (obrigatório), source_locale (opcional), framework (opcional) | Acionar uma execução de tradução | Sim |
babelize_run_and_wait | project_id (obrigatório), target_locales (obrigatório), source_locale, framework, poll_interval, max_polls (opcional) | Iniciar uma execução e aguardar sua conclusão | Sim |
babelize_status | babel_id (obrigatório) | Verificar o status de uma execução de tradução | Sim |
babelize_glossary_get | project_id (obrigatório), search, page, limit (opcional) | Listar entradas de glossário com seus ids (para babelize_glossary_delete) e a contagem total; 100 por página por padrão | Sim |
babelize_glossary_set | project_id (obrigatório), source (obrigatório), type (padrão never_translate, ou always_translate_as), target e locale (obrigatórios para always_translate_as) | Adicionar ou atualizar uma entrada: um termo existente (correspondido ignorando maiúsculas/minúsculas) é atualizado, e always_translate_as adiciona ou substitui a tradução de um locale | Sim |
Lista completa de ferramentas: README @babelize/mcp.
Ferramentas de varredura sem autenticação
babelize_scan e babelize_scan_strings são auxiliares de baixo nível que funcionam sem chave de API. Para um projeto inteiro, prefira babelize_analyze.
Prompts
O servidor expõe três prompts MCP:
| Prompt | Argumentos | Descrição |
|---|---|---|
make-global-ready | locales, path (opcional) | Ciclo local analisar → traduzir → verificar |
translate-project | project_id, target_locale, source_locale (opcional) | Fluxo guiado para traduzir um projeto |
scan-and-translate | directory, target_locale | Escanear um diretório local e depois traduzir o que foi encontrado |
Recursos
Quando uma chave de API está configurada, o servidor também registra dois recursos MCP:
babelize://languages— lista de idiomas suportadosbabelize://me— o perfil do usuário atual
Sem uma chave de API, os recursos não são registrados (as duas ferramentas de varredura sem autenticação ainda funcionam).
Prioridade de configuração
- Argumentos de CLI —
--api-key,--api-url - Variáveis de ambiente —
BABELIZE_API_KEY,BABELIZE_API_URL - Arquivo de configuração local —
.babelize/config.json
Opções
| Opção de CLI | Variável de ambiente | Padrão | Descrição |
|---|---|---|---|
--api-key | BABELIZE_API_KEY | — | Sua chave de API Babelize |
--api-url | BABELIZE_API_URL | https://api.babelize.co | URL base da API (o cliente anexa /api por conta própria) |
--workspace | BABELIZE_WORKSPACE | raízes do cliente, caso contrário o diretório de trabalho | Pasta na qual as ferramentas locais podem trabalhar |
Defina a URL apenas para a origem — incluir /api por conta própria resulta em solicitações para /api/api.
Como está este guia?
[
React Native & Expo
Como o Babelize traduz Expo Router, Expo clássico e aplicativos React Native puros — o que ele extrai, onde as traduções são agrupadas, como o idioma do dispositivo é escolhido e as limitações atuais.