Server MCP

Localizza dall'interno del tuo agente di coding.

localize-dev mcp fornisce al tuo agente di codifica gli stessi strumenti della CLI. Chiedi una pagina in spagnolo, e troverà la copia hardcoded, la estrarrà in chiavi e la tradurrà, seguendo il tuo glossario. Configuralo con init --agent, e farà lo stesso per ogni file man mano che lo scrive.

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

Pubblica la pagina di checkout in spagnolo, francese e tedesco.

localize.check(only: "strings")

2 stringhe hardcoded in components/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 chiavi scritte, 3 lingue compilate. Il diff è nel tuo albero di lavoro da rivedere.

Funziona con agenti che eseguono server MCP sulla tua macchina e con Lovable, Bolt e v0 tramite il server ospitato

Strumenti

Cinque strumenti, quelli che la CLI ha già.

L'agente sceglie lo strumento; ognuno risponde con risultati strutturati (file, righe, chiavi) su cui può agire.

localize

Estrae le stringhe codificate in chiavi di traduzione, riscrive il codice nella tua libreria i18n e traduce i nuovi messaggi in ogni lingua. Solo per alcuni file, o prima come prova generale.

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

check

Trova il testo dell'interfaccia utente ancora hardcoded nel codice e le traduzioni mancanti o obsolete, ciascuna con il suo file e la sua riga. Non cambia nulla. Dati i file che l'agente ha appena modificato, risponde in circa un secondo.

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

translate

Compila le traduzioni mancanti e rifà quelle il cui testo sorgente è cambiato, nei tuoi file di localizzazione esistenti.

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

add_language

Traduce ogni messaggio in una nuova lingua, quindi lo aggiunge a localize.config.json. Senza una chiave, nulla viene modificato.

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

config

Le tue lingue, i file di localizzazione e la libreria i18n, e il glossario del progetto, in modo che anche il testo scritto a mano dall'agente lo segua.

  • Mantieni: Acme
  • checkout → es: pago

Nessuna chiave necessariaSulla tua macchina, controllo e configurazione funzionano senza chiave API.

Una sessione

Chiedi in parole semplici. Rivedi il diff.

L'agente decide quando chiamare ogni strumento. Vedi ogni chiamata e il risultato finisce nel tuo albero di lavoro.

01 / 04

Tu chiedi

"Pubblica la pagina di checkout in spagnolo", "Aggiungi il giapponese" o "È rimasto qualcosa di non tradotto?"

agent

Pubblica la pagina di checkout in spagnolo, francese e tedesco.

Controllerò prima la pagina di checkout per il testo hardcoded.

localize.check(only: "strings")

Mentre scrivi

Tradotto prima dell'apertura della pull request

Un comando imposta i tuoi agenti di codifica. Dopodiché, ogni file modificato da un agente viene controllato per verificare la presenza di testo non tradotto e l'agente lo localizza prima di procedere.

  1. 1

    L'agente scrive un componente con nuovo testo al suo interno.

  2. 2

    L'hook post-modifica di Claude Code controlla quel singolo file, in circa un secondo, senza chiave o modello, e dice all'agente quali righe contengono ancora testo hardcoded.

  3. 3

    L'agente chiama localize sul file. Il testo ottiene chiavi e traduzioni, in modo che la pull request arrivi con ogni lingua compilata.

Cursor, Codex e altri agenti ricevono le stesse istruzioni da AGENTS.md e una regola Cursor. Aggiungi --pre-commit per controllare anche i file preparati prima di ogni commit e imposta LOCALIZE_DEV_HOOK=off per mettere in pausa l'hook.

Nella cartella della tua app
npx localize-dev init --agent
Cosa vede l'agente dopo una modifica
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.

Configurazione

Configuralo nel tuo agente.

Gli agenti sulla tua macchina eseguono il server dal pacchetto npm, senza nulla da ospitare. `npx localize-dev init --agent` lo imposta per Claude Code e Cursor insieme all'hook post-modifica. Lovable, Bolt e v0 si connettono al server ospitato con una chiave API.

Innanzitutto, una volta per macchina:npx localize-dev login

Claude Code

L'agente di codifica di Anthropic nel terminale. Aggiungi il server dal repository in cui lavori; con --scope project viene salvato in .mcp.json per tutti nel team. npx localize-dev init --agent fa ciò e aggiunge l'hook post-modifica.

  1. 1Esegui claude mcp add nel tuo repository.
  2. 2Riavvia l'agente o ricarica i suoi server MCP, in modo che avvii localize.
  3. 3Apri il tuo repository e chiedigli qualcosa come il prompt qui sotto.

Prova a chiedere

“Localizza src/components/Checkout.tsx in spagnolo e francese.”

→ 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 legge i server MCP da .cursor/mcp.json nel progetto, o ~/.cursor/mcp.json per ogni progetto. npx localize-dev init --agent scrive il file di progetto e una regola per i tuoi file dell'interfaccia utente.

  1. 1Aggiungi localize a .cursor/mcp.json.
  2. 2Riavvia l'agente o ricarica i suoi server MCP, in modo che avvii localize.
  3. 3Apri il tuo repository e chiedigli qualcosa come il prompt qui sotto.

Prova a chiedere

“Aggiungi il giapponese a questa app.”

→ localize.add_language

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

Codex

Codex di OpenAI legge i server MCP dal suo file di configurazione, condiviso dalla CLI e dall'estensione IDE.

  1. 1Aggiungi la tabella [mcp_servers.localize] a ~/.codex/config.toml.
  2. 2Riavvia l'agente o ricarica i suoi server MCP, in modo che avvii localize.
  3. 3Apri il tuo repository e chiedigli qualcosa come il prompt qui sotto.

Prova a chiedere

“Prima di aprire la PR, verifica la presenza di testo hardcoded e traduzioni mancanti.”

→ localize.check

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

GitHub Copilot in VS Code

La modalità agente di Copilot in VS Code legge i server MCP da .vscode/mcp.json nello spazio di lavoro.

  1. 1Aggiungi localize a .vscode/mcp.json nel tuo spazio di lavoro.
  2. 2Riavvia l'agente o ricarica i suoi server MCP, in modo che avvii localize.
  3. 3Apri il tuo repository e chiedigli qualcosa come il prompt qui sotto.

Prova a chiedere

“Traduci le nuove chiavi in locales/en.json in tutte le lingue.”

→ localize.translate

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

Devin

Devin, precedentemente Windsurf, legge i server MCP da ~/.config/devin/mcp_config.json o .devin/mcp_config.json nel progetto. La CLI di Devin ne aggiunge uno con devin mcp add.

  1. 1Aggiungi localize a ~/.config/devin/mcp_config.json (%APPDATA%\devin\mcp_config.json su Windows).
  2. 2Riavvia l'agente o ricarica i suoi server MCP, in modo che avvii localize.
  3. 3Apri il tuo repository e chiedigli qualcosa come il prompt qui sotto.

Prova a chiedere

“Esegui una simulazione della localizzazione della pagina delle impostazioni, poi applicala.”

→ localize.localize

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

Gemini CLI

Il CLI Gemini di Google legge i server MCP da ~/.gemini/settings.json o .gemini/settings.json nel progetto.

  1. 1Aggiungi localize a mcpServers in settings.json.
  2. 2Riavvia l'agente o ricarica i suoi server MCP, in modo che avvii localize.
  3. 3Apri il tuo repository e chiedigli qualcosa come il prompt qui sotto.

Prova a chiedere

“Quali lingue distribuisce questa app e cosa c'è nel suo glossario?”

→ localize.config

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

Lovable

I connettori di chat di Lovable possono chiamare qualsiasi server MCP remoto. Collega il server ospitato con una chiave API e l'agente di Lovable potrà controllare e tradurre l'app che sta creando. La connessione è solo tua e non fa mai parte dell'app pubblicata.

  1. 1In Connettori, scegli Aggiungi personalizzato, quindi server MCP e inserisci l'URL.
  2. 2Scegli token Bearer o chiave API, incolla la tua chiave API localize.dev e fai clic su Aggiungi server.
  3. 3Apri il tuo progetto e chiedi qualcosa come il prompt qui sotto. L'agente invia i file di cui lo strumento ha bisogno e riscrive i file che restituisce.

Prova a chiedere

“Controlla questa app per il testo hardcoded e dimmi cosa non è stato tradotto.”

→ 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 aggiunge server MCP personalizzati dalla sua pagina Connettori. Puntane uno al server ospitato e l'agente di Bolt potrà localizzare il progetto aperto nell'editor.

  1. 1Fai clic su + nella chat, apri Connettori (MCP) e scegli il server MCP personalizzato. Inserisci l'URL e imposta il trasporto su HTTP.
  2. 2Scegli la chiave API come autenticazione e incolla la tua chiave API localize.dev.
  3. 3Apri il tuo progetto e chiedi qualcosa come il prompt qui sotto. L'agente invia i file di cui lo strumento ha bisogno e riscrive i file che restituisce.

Prova a chiedere

“Localizza la pagina dei prezzi in spagnolo e tedesco.”

→ 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 utilizza server MCP personalizzati durante la generazione del codice. Collega il server ospitato e v0 potrà aggiungere lingue all'app che sta creando e inserirne le traduzioni.

  1. 1Apri + nel modulo di prompt, scegli MCP, quindi Configura e inserisci l'URL.
  2. 2Scegli Bearer Token e incolla la tua chiave API localize.dev.
  3. 3Apri il tuo progetto e chiedi qualcosa come il prompt qui sotto. L'agente invia i file di cui lo strumento ha bisogno e riscrive i file che restituisce.

Prova a chiedere

“Aggiungi il giapponese a questa app.”

→ localize.add_language

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

Server ospitato

Per agenti che non possono eseguire comandi.

Costruttori come Lovable, Bolt, v0 e altri che funzionano nel browser non possono avviare `npx localize-dev mcp`. Possono collegarsi al server ospitato invece. Ha gli stessi cinque strumenti e funziona su localize.dev.

  1. 1

    Aggiungi un server MCP personalizzato con l'URL https://uselocalize.dev/api/mcp.

  2. 2

    Se l'app supporta OAuth, scegli questa opzione e approva la connessione su localize.dev. Altrimenti, inserisci la tua chiave API localize.dev nell'header Authorization come token bearer.

  3. 3

    L'agente invia i file che lo strumento necessita e scrive indietro i file che restituisce. Rimangono in una cartella temporanea durante la chiamata e vengono eliminati quando l'agente risponde.

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

Sicurezza e privacy

Solo ciò che è necessario lascia la tua macchina.

Il server locale è la CLI, in esecuzione sulla tua macchina, e solo ciò che necessita di traduzione va all'API. Il server ospitato riceve i file che un agente invia e li elimina quando risponde.

  • Esegue localmente

    Il server gira sulla tua macchina tramite stdio, avviato dal tuo agente. Non c'è nulla da ospitare e nessuna porta da aprire.

  • Stringhe, non il codice sorgente

    Solo le stringhe estratte vengono inviate all'API, con il loro percorso file e componente come contesto. I file interi non vengono mai inviati.

  • Rimane nella sua cartella

    Ogni strumento funziona all'interno della cartella in cui è stato avviato il server. Un argomento dell'app sceglie un'app in un monorepo, mai un percorso esterno.

  • Nessun commit

    Le modifiche arrivano nel tuo albero di lavoro. Il server non esegue mai commit o push e le chiamate agli strumenti vengono eseguite una alla volta.

FAQ

Domande sul server MCP

Con quali agenti funziona?+

Qualsiasi client MCP che avvia server tramite stdio: Claude Code, Cursor, Codex, GitHub Copilot in VS Code, Devin (precedentemente Windsurf), Gemini CLI e altri. La configurazione è lo stesso comando: npx -y localize-dev mcp. Lovable, Bolt, v0 e altri builder che vengono eseguiti nel browser si connettono invece al server ospitato.

Come fa l'agente a sapere cosa localizzare di ciò che scrive?+

npx localize-dev init --agent glielo dice. Le istruzioni del server MCP, una sezione in AGENTS.md e una regola di Cursor gli chiedono di chiamare localize sui file che modifica. In Claude Code, un hook post-modifica controlla anche ogni file modificato dall'agente ed elenca eventuali testi non tradotti, in modo che l'agente li corregga prima di procedere.

L'hook utilizza la mia quota?+

No. L'hook legge solo il file, sulla tua macchina, senza chiave o modello. Le stringhe vengono conteggiate quando l'agente chiama localize e vengono tradotte, come in qualsiasi esecuzione.

Ho bisogno di una chiave API?+

Sulla tua macchina, check e config non ne hanno bisogno. localize, translate e add_language traducono tramite localize.dev, quindi necessitano della chiave da npx localize-dev login (o LOCALIZE_API_KEY). Il server ospitato necessita di una chiave per ogni chiamata, sebbene check e config non vengano ancora conteggiati nel tuo piano. Le traduzioni vengono conteggiate nel tuo piano come qualsiasi altra esecuzione.

Ho ancora bisogno della GitHub Action?+

No, funzionano da soli. Il server MCP localizza durante la compilazione e con init --agent ogni file mentre l'agente lo scrive. L'Azione mantiene ogni push localizzato e apre una pull request. Leggono lo stesso localize.config.json e glossario.

Eseguirà il commit o il push del mio codice?+

Il server non lo fa: scrive i file nel tuo albero di lavoro e restituisce ciò che ha modificato. Ciò che il tuo agente fa dopo dipende da te e dalle autorizzazioni del tuo agente.

Funziona in un monorepo?+

Sì. Ogni strumento accetta un argomento app, come apps/web, e funziona lì con la configurazione e i file di localizzazione di quell'app.

Posso usarlo senza eseguire nulla sulla mia macchina?+

Sì, tramite il server ospitato su https://uselocalize.dev/api/mcp. Collegalo come server HTTP Streamable, quindi accedi con OAuth o invia la tua chiave API come token bearer. Ogni chiamata richiede una chiave o un accesso, ma i controlli e la configurazione non vengono ancora conteggiati nel tuo piano.

Ottieni una chiave API e aggiungi il server.

Il piano gratuito copre le piccole app e check viene eseguito sulla tua macchina senza chiave.