Servidor MCP

Localiza desde tu agente de codificación.

localize-dev mcp le da a su agente de codificación las mismas herramientas que la CLI. Pida una página en español, y encontrará la copia codificada, la extraerá en claves y la traducirá, siguiendo su glosario. Configúrelo con init --agent, y hará lo mismo para cada archivo a medida que lo escribe.

$claude mcp add localize -- npx -y localize-dev mcp
~/acme/storefrontlocalize conectado

Envía la página de pago en español, francés y alemán.

localize.check(only: "strings")

2 cadenas codificadas en componentes/Checkout.tsx.

  • components/Checkout.tsx:18 "Place order"
  • components/Checkout.tsx:24 "Discount code"

localize.localize(paths: ["components/Checkout.tsx"])

- <button>Place order</button>
+ <button>{t('checkout.place_order')}</button>
  • es Realizar pedido
  • fr Passer la commande
  • de Bestellung aufgeben

2 claves escritas, 3 idiomas completados. La diferencia está en su árbol de trabajo para revisar.

Funciona con agentes que ejecutan servidores MCP en su máquina, y con Lovable, Bolt y v0 a través del servidor alojado

Herramientas

Cinco herramientas, las que la CLI ya tiene.

El agente elige la herramienta; cada una responde con resultados estructurados (archivos, líneas, claves) sobre los que puede actuar.

localize

Extrae cadenas codificadas en texto plano en claves de traducción, reescribe el código a su biblioteca i18n y traduce los nuevos mensajes a todos los idiomas. Solo para algunos archivos, o como una simulación primero.

- <h2>Order summary</h2>
+ <h2>{t('checkout.order_summary')}</h2>
locales/es.jsonlocales/fr.jsonlocales/de.json

check

Encuentra texto de interfaz de usuario aún codificado en el código, y traducciones faltantes o desactualizadas, cada una con su archivo y línea. No cambia nada. Dados los archivos que el agente acaba de cambiar, responde en aproximadamente un segundo.

  • hardcoded Checkout.tsx:18
  • missing fr · cart.empty
  • outdated de · cart.total

translate

Completa las traducciones faltantes y rehace aquellas cuyo texto fuente ha cambiado, en sus archivos de localización existentes.

  • JSON
  • YAML
  • .po
  • .arb
  • strings.xml
  • .xcstrings

add_language

Traduce cada mensaje a un nuevo idioma y luego lo agrega a localize.config.json. Sin una clave, no se cambia nada.

"targetLocales": ["es", "fr", "ja"]

config

Sus idiomas, archivos de localización y biblioteca i18n, y el glosario del proyecto, para que la copia que el agente escribe a mano también lo siga.

  • Mantener: Acme
  • checkout → es: pago

No se necesita claveEn su máquina, la verificación y configuración funcionan sin clave API.

Una sesión

Pregunte en palabras sencillas. Revise el cambio.

El agente decide cuándo llamar a cada herramienta. Usted ve cada llamada y el resultado aterriza en su árbol de trabajo.

01 / 04

Usted pregunta

«Envía la página de pago en español», «Añade japonés» o «¿Queda algo sin traducir?»

agent

Envía la página de pago en español, francés y alemán.

Primero revisaré la página de pago en busca de texto codificado.

localize.check(only: "strings")

Mientras escribes

Traducido antes de que se abra la solicitud de extracción

Un comando configura tus agentes de codificación. Después de eso, cada archivo que un agente edita se revisa en busca de texto no traducido, y el agente lo localiza antes de continuar.

  1. 1

    El agente escribe un componente con texto nuevo.

  2. 2

    El hook posterior a la edición de Claude Code revisa ese archivo, en aproximadamente un segundo, sin clave ni modelo, y le dice al agente qué líneas todavía tienen texto codificado.

  3. 3

    El agente llama a localize en el archivo. El texto obtiene claves y traducciones, por lo que la pull request llega con todos los idiomas completos.

Cursor, Codex y otros agentes obtienen las mismas instrucciones de AGENTS.md y una regla de Cursor. Agregue --pre-commit para verificar también los archivos preparados antes de cada commit, y establezca LOCALIZE_DEV_HOOK=off para pausar el hook.

En la carpeta de tu aplicación
npx localize-dev init --agent
Lo que ve el agente después de una edición
localize.dev: src/components/Promo.tsx has UI text that isn't translated yet.
  line 4: "Free shipping on orders over $50"
Call the localize tool of the localize-dev MCP server with paths ["components/Promo.tsx"]: it gives this text translation keys, rewrites the code and translates it.

Configuración

Configúralo en tu agente.

Los agentes en su máquina ejecutan el servidor desde el paquete npm, sin necesidad de alojar nada. `npx localize-dev init --agent` lo configura para Claude Code y Cursor junto con el hook posterior a la edición. Lovable, Bolt y v0 se conectan al servidor alojado con una clave API.

Primero, una vez por máquina:npx localize-dev login

Claude Code

El agente de codificación de Anthropic en la terminal. Agregue el servidor desde el repositorio en el que trabaja; con --scope project se guarda en .mcp.json para todos en el equipo. npx localize-dev init --agent hace eso y agrega el hook posterior a la edición.

  1. 1Ejecuta claude mcp add en tu repositorio.
  2. 2Reinicia el agente o recarga sus servidores MCP para que comience a localizar.
  3. 3Abre tu repositorio y pídele algo similar a la indicación de abajo.

Intenta preguntar

“Localiza src/components/Checkout.tsx en español y francés.”

→ localize.localize

terminal
claude mcp add localize -- npx -y localize-dev mcp

# Share it with your team through .mcp.json
claude mcp add --scope project localize -- npx -y localize-dev mcp

# Or the server, the after-edit hook and AGENTS.md in one go
npx localize-dev init --agent

Cursor

Cursor lee los servidores MCP desde .cursor/mcp.json en el proyecto, o ~/.cursor/mcp.json para cada proyecto. npx localize-dev init --agent escribe el archivo del proyecto y una regla para sus archivos de interfaz de usuario.

  1. 1Agrega localización a .cursor/mcp.json.
  2. 2Reinicia el agente o recarga sus servidores MCP para que comience a localizar.
  3. 3Abre tu repositorio y pídele algo similar a la indicación de abajo.

Intenta preguntar

“Agrega japonés a esta aplicación.”

→ localize.add_language

.cursor/mcp.json
{
  "mcpServers": {
    "localize": {
      "command": "npx",
      "args": ["-y", "localize-dev", "mcp"]
    }
  }
}

Codex

El Codex de OpenAI lee los servidores MCP desde su archivo de configuración, compartido por la CLI y la extensión de IDE.

  1. 1Agrega la tabla [mcp_servers.localize] a ~/.codex/config.toml.
  2. 2Reinicia el agente o recarga sus servidores MCP para que comience a localizar.
  3. 3Abre tu repositorio y pídele algo similar a la indicación de abajo.

Intenta preguntar

“Antes de abrir el PR, verifica si hay texto codificado y traducciones faltantes.”

→ localize.check

~/.codex/config.toml
[mcp_servers.localize]
command = "npx"
args = ["-y", "localize-dev", "mcp"]

GitHub Copilot in VS Code

El modo agente de Copilot en VS Code lee los servidores MCP desde .vscode/mcp.json en el espacio de trabajo.

  1. 1Agrega localize a .vscode/mcp.json en tu espacio de trabajo.
  2. 2Reinicia el agente o recarga sus servidores MCP para que comience a localizar.
  3. 3Abre tu repositorio y pídele algo similar a la indicación de abajo.

Intenta preguntar

“Traduce las nuevas claves en locales/en.json a todos los idiomas.”

→ localize.translate

.vscode/mcp.json
{
  "servers": {
    "localize": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "localize-dev", "mcp"]
    }
  }
}

Devin

Devin, anteriormente Windsurf, lee los servidores MCP desde ~/.config/devin/mcp_config.json o .devin/mcp_config.json en el proyecto. El CLI de Devin agrega uno con devin mcp add.

  1. 1Agrega localize a ~/.config/devin/mcp_config.json (%APPDATA%\devin\mcp_config.json en Windows).
  2. 2Reinicia el agente o recarga sus servidores MCP para que comience a localizar.
  3. 3Abre tu repositorio y pídele algo similar a la indicación de abajo.

Intenta preguntar

“Haz una prueba de localización de la página de configuración, luego aplícala.”

→ localize.localize

~/.config/devin/mcp_config.json
{
  "mcpServers": {
    "localize": {
      "command": "npx",
      "args": ["-y", "localize-dev", "mcp"]
    }
  }
}

Gemini CLI

El CLI Gemini de Google lee los servidores MCP desde ~/.gemini/settings.json o .gemini/settings.json en el proyecto.

  1. 1Agrega localize a los mcpServers en settings.json.
  2. 2Reinicia el agente o recarga sus servidores MCP para que comience a localizar.
  3. 3Abre tu repositorio y pídele algo similar a la indicación de abajo.

Intenta preguntar

“¿Qué idiomas soporta esta app y qué hay en su glosario?”

→ localize.config

~/.gemini/settings.json
{
  "mcpServers": {
    "localize": {
      "command": "npx",
      "args": ["-y", "localize-dev", "mcp"]
    }
  }
}

Lovable

Los conectores de chat de Lovable pueden llamar a cualquier servidor MCP remoto. Conecte el servidor alojado con una clave API, y el agente de Lovable podrá verificar y traducir la aplicación que está creando. La conexión es solo suya y nunca forma parte de la aplicación publicada.

  1. 1En Conectores, elija Agregar personalizado, luego servidor MCP e ingrese la URL.
  2. 2Elija token Bearer o clave API, pegue su clave API de localize.dev y haga clic en Agregar servidor.
  3. 3Abre tu proyecto y pregunta algo como el prompt a continuación. El agente envía los archivos que necesita la herramienta y escribe los archivos que devuelve.

Intenta preguntar

“Revisa esta aplicación en busca de texto codificado y dime qué no está traducido.”

→ localize.check

Connectors → Add custom → MCP server
Name            localize
URL             https://uselocalize.dev/api/mcp
Authentication  Bearer token or API key
Key             ldv_live_… (your localize.dev API key)

Bolt

Bolt agrega servidores MCP personalizados desde su página de Conectores. Apunte uno al servidor alojado, y el agente de Bolt podrá localizar el proyecto abierto en el editor.

  1. 1Haz clic en + en el chat, abre Conectores (MCP) y elige el servidor MCP personalizado. Ingresa la URL y configura el transporte a HTTP.
  2. 2Selecciona la clave API como autenticación y pega tu clave API de localize.dev.
  3. 3Abre tu proyecto y pregunta algo como el prompt a continuación. El agente envía los archivos que necesita la herramienta y escribe los archivos que devuelve.

Intenta preguntar

“Localiza la página de precios al español y al alemán.”

→ localize.localize

Connectors (MCP) → Custom MCP server
Name            localize
URL             https://uselocalize.dev/api/mcp
Transport       HTTP
Authentication  API key
Key             ldv_live_… (your localize.dev API key)

v0

v0 utiliza servidores MCP personalizados mientras genera código. Conecta el servidor alojado, y v0 puede agregar idiomas a la aplicación que está creando y completar sus traducciones.

  1. 1Abre + en el formulario de indicación, elige MCPs, luego Configurar e ingresa la URL.
  2. 2Selecciona Bearer Token y pega tu clave API de localize.dev.
  3. 3Abre tu proyecto y pregunta algo como el prompt a continuación. El agente envía los archivos que necesita la herramienta y escribe los archivos que devuelve.

Intenta preguntar

“Agrega japonés a esta aplicación.”

→ localize.add_language

+ → MCPs → Configure
Name            localize
URL             https://uselocalize.dev/api/mcp
Authentication  Bearer Token
Key             ldv_live_… (your localize.dev API key)

Servidor alojado

Para agentes que no pueden ejecutar comandos.

Constructores como Lovable, Bolt, v0 y otros que funcionan en el navegador no pueden iniciar `npx localize-dev mcp`. Pueden conectarse al servidor alojado en su lugar. Tiene las mismas cinco herramientas y funciona en localize.dev.

  1. 1

    Añade un servidor MCP personalizado con la URL https://uselocalize.dev/api/mcp.

  2. 2

    Si la aplicación admite OAuth, elígela y aprueba la conexión en localize.dev. De lo contrario, introduce tu clave API de localize.dev en la cabecera de autorización como un token de portador.

  3. 3

    El agente envía los archivos que necesita la herramienta y escribe de vuelta los archivos que devuelve. Se guardan en una carpeta temporal mientras se realiza la llamada y se eliminan cuando responde.

Configuración MCP (HTTP transmitible)
{
  "mcpServers": {
    "localize": {
      "type": "http",
      "url": "https://uselocalize.dev/api/mcp",
      "headers": { "Authorization": "Bearer YOUR_API_KEY" }
    }
  }
}

Seguridad y privacidad

Solo lo necesario sale de tu máquina.

El servidor local es la CLI, que se ejecuta en tu máquina, y solo lo que necesita traducción va a la API. El servidor alojado recibe los archivos que envía un agente y los elimina cuando responde.

  • Se ejecuta localmente

    El servidor se ejecuta en tu máquina a través de stdio, iniciado por tu agente. No hay nada que alojar ni puerto que abrir.

  • Cadenas, no fuente

    Solo las cadenas extraídas se envían a la API, con su ruta de archivo y componente como contexto. Nunca se envían archivos completos.

  • Permanece en su carpeta

    Cada herramienta funciona dentro de la carpeta donde se inició el servidor. Un argumento de la app selecciona una app en un monorepo, nunca una ruta fuera de él.

  • Nada comprometido

    Los cambios se aplican en tu árbol de trabajo. El servidor nunca hace commits ni pushes, y las llamadas a herramientas se ejecutan una a la vez.

Preguntas frecuentes

Preguntas sobre el servidor MCP

¿Con qué agentes funciona?+

Cualquier cliente MCP que inicie servidores sobre stdio: Claude Code, Cursor, Codex, GitHub Copilot en VS Code, Devin (anteriormente Windsurf), Gemini CLI y otros. La configuración es el mismo comando: npx -y localize-dev mcp. Lovable, Bolt, v0 y otros constructores que se ejecutan en el navegador se conectan al servidor alojado en su lugar.

¿Cómo sabe el agente qué localizar de lo que escribe?+

npx localize-dev init --agent se lo indica. Las instrucciones del servidor MCP, una sección en AGENTS.md y una regla de Cursor le piden que llame a localize en los archivos que modifica. En Claude Code, un hook posterior a la edición también revisa cada archivo que el agente edita y enumera cualquier texto que quede sin traducir, para que el agente lo corrija antes de continuar.

¿El hook usa mi asignación?+

No. El hook solo lee el archivo, en tu máquina, sin clave ni modelo. Las cadenas se cuentan cuando el agente llama a localize y se traducen, como en cualquier ejecución.

¿Necesito una clave API?+

En tu máquina, check y config no necesitan uno. localize, translate y add_language traducen a través de localize.dev, por lo que necesitan la clave de npx localize-dev login (o LOCALIZE_API_KEY). El servidor alojado necesita una clave para cada llamada, aunque check y config todavía no cuentan para tu plan. Las traducciones cuentan para tu plan como cualquier otra ejecución.

¿Todavía necesito la acción de GitHub?+

No, funcionan por sí solos. El servidor MCP localiza mientras compilas, y con init --agent cada archivo a medida que el agente lo escribe. La Acción mantiene cada push localizado y abre una solicitud de extracción. Leen el mismo localize.config.json y glosario.

¿Va a hacer commit o push de mi código?+

El servidor no: escribe archivos en tu árbol de trabajo y devuelve lo que cambió. Lo que hace tu agente a continuación depende de ti y de los permisos del agente.

¿Funciona en un monorepo?+

Sí. Cada herramienta toma un argumento de app, como apps/web, y trabaja allí con la configuración y los archivos de idioma de esa app.

¿Puedo usarlo sin ejecutar nada en mi máquina?+

Sí, a través del servidor alojado en https://uselocalize.dev/api/mcp. Conéctalo como un servidor HTTP Streamable, luego inicia sesión con OAuth o envía tu clave API como un token de portador. Cada llamada necesita una clave o un inicio de sesión, pero las comprobaciones y la configuración aún no cuentan para tu plan.

Obtenga una clave API y agregue el servidor.

El plan gratuito cubre aplicaciones pequeñas, y check se ejecuta en tu máquina sin clave.