The New Era of i18n Automation
If you've been following the AI coding space, you know Claude Code is a game-changer. It's not just a chatbot; it's an agent that lives in your terminal, understands your codebase, and can execute complex tasks.
But how are developers using Claude Code for i18n (internationalization)?
Traditionally, i18n has been a painful, manual process:
- Hunt for hardcoded strings.
- Extract them to a JSON file.
- Replace the string with a key.
- Send the file to translators.
- Wait.
- Merge translations back.
- Fix broken UI layouts.
With Claude Code, we can automate steps 1-3 entirely, and with the right tools, steps 4-7 too.
Why Claude Code is Perfect for Multilanguage Setup
Claude Code excels at pattern recognition and file manipulation. This makes it uniquely suited for:
- Context-Aware Extraction: It doesn't just see a string; it understands where the string is. Is it a button label? An error message? A prop value? This context is crucial for accurate translation keys.
- Refactoring Safety: It can traverse your codebase and update every instance of a hardcoded string to use your i18n library (like
next-intl,react-i18next, orvue-i18n) without breaking imports. - Consistency: By using "Skills" (custom commands), you can enforce a consistent naming convention for everything (e.g.,
component.section.key).
The Secret Weapon: IntlPull MCP Server
While Claude Code is powerful on its own, it lacks intrinsic knowledge of your specific translation project state. That's where the IntlPull Model Context Protocol (MCP) Server comes in.
IntlPull provides a bridge between your local development environment and your translation management system. By connecting Claude Code to IntlPull via MCP, you give the agent superpowers:
- "Does this key exist?": Before creating a new key, Claude can check if a similar string has already been translated, preventing duplicates.
- "Translate this now": Claude can trigger machine translations immediately for testing.
- "Pull latest translations": One command to sync your local files with the latest approval translations.
Setting up the IntlPull MCP
Add this to your claude_desktop_config.json or equivalent config:
JSON1{ 2 "mcpServers": { 3 "intlpull": { 4 "command": "npx", 5 "args": ["-y", "@intlpullhq/mcp"], 6 "env": { 7 "INTLPULL_API_KEY": "your-api-key" 8 } 9 } 10 } 11}
Now, you can ask Claude: "Find all hardcoded strings in this file, extract them to en.json using the IntlPull naming convention, and generate Spanish translations."
A Serverless-like Experience for Localization
Just like serverless architectures removed the need to manage infrastructure, Claude Code + IntlPull removes the need to manage translation files manually.
You stop thinking about JSON files and keys. You start thinking about content.
The Workflow
- Write Code Naturally: Don't worry about keys initially. Just write
<Button>Save Changes</Button>. - Run the Skill: Type
/i18n-extract(a custom skill you can define). - Review the Diff: Claude shows you the extraction:
DIFF
- <Button>Save Changes</Button> + <Button>{t('common.actions.save_changes')}</Button> - Auto-Translate: Behind the scenes, the new key is pushed to IntlPull, translated by AI (or humans), and synced back to your
es.json,de.json, etc.
Capabilities to Market to Your Team
If you're advocating for this stack, here are the key selling points (based on our own SKILL.md analysis):
- Surgical Extraction: Distinguishes between user-facing text and code strings (like IDs or CSS classes) with high precision.
- Safety First: We use strict AST (Abstract Syntax Tree) manipulation to ensure we never break your build.
- Framework Agnostic: Works perfectly with Next.js, React, Vue, Svelte, Angular, and even mobile frameworks like React Native and Flutter.
- Audit Compliance: Features like "Project Locking" ensure that during critical release windows, no new keys are generated, preventing last-minute translation bugs.
Conclusion
The combination of Claude Code for i18n and IntlPull transforms localization from a chore into a seamless part of your dev flow. It's not just about saving time; it's about maintaining flow state. You stay in your terminal, you stay in the code, and the world gets your software in their language faster.
Ready to automate your localization? Check out IntlPull and start using our MCP server today.
