MCP server for processing XLIFF translation files
Project description
XLIFF MCP Server
An MCP (Model Context Protocol) server for processing XLIFF and TMX translation files. This server provides tools for parsing, validating, and manipulating translation files commonly used in localization workflows.
Features
- XLIFF Processing: Parse and extract translation units from XLIFF files
- TMX Processing: Parse and extract translation units from TMX files
- Tag Preservation: Special processing mode that preserves inline tags for AI translation
- Validation: Validate XLIFF and TMX file formats
- Translation Replacement: Replace target translations in XLIFF files
Installation
Automatic Setup (Recommended)
python setup.py
Manual Installation
Using pip
pip install -r requirements.txt
pip install -e .
Using the install script
./install.sh # Unix/Linux/macOS
install.bat # Windows
Configuration
For Claude Desktop
Add the server to your Claude Desktop configuration file:
macOS/Linux: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %AppData%\Claude\claude_desktop_config.json
{
"mcpServers": {
"xliff-processor": {
"command": "python",
"args": ["-m", "xliff_mcp.server"],
"cwd": "/absolute/path/to/xliff-mcp-server"
}
}
}
Or if using uv:
{
"mcpServers": {
"xliff-processor": {
"command": "uv",
"args": ["run", "python", "-m", "xliff_mcp.server"],
"cwd": "/absolute/path/to/xliff-mcp-server"
}
}
}
Available Tools
process_xliff
Process XLIFF content and extract translation units.
Parameters:
file_name(string): Name of the XLIFF filecontent(string): XLIFF file content
Returns: JSON with translation units including:
- fileName, segNumber, unitId, percent, source, target, srcLang, tgtLang
process_xliff_with_tags
Process XLIFF preserving inline tags for AI translation.
Parameters:
file_name(string): Name of the XLIFF filecontent(string): XLIFF file content
Returns: JSON with translation units preserving original formatting tags
validate_xliff
Validate XLIFF content format.
Parameters:
content(string): XLIFF file content to validate
Returns: JSON with validation status, message, and unit count
replace_xliff_targets
Replace target translations in XLIFF file.
Parameters:
content(string): Original XLIFF file contenttranslations(string): JSON array of translations with segNumber/unitId and aiResult/mtResult
Returns: JSON with updated XLIFF content and replacement count
process_tmx
Process TMX content and extract translation units.
Parameters:
file_name(string): Name of the TMX filecontent(string): TMX file content
Returns: JSON with translation units including metadata
validate_tmx
Validate TMX content format.
Parameters:
content(string): TMX file content to validate
Returns: JSON with validation status and unit count
Usage Examples
Once configured in Claude Desktop, you can use the tools like this:
-
Process an XLIFF file: "Please process this XLIFF file and show me the translation units"
-
Validate XLIFF format: "Can you validate if this XLIFF content is properly formatted?"
-
Replace translations: "Replace the target translations in this XLIFF file with these new translations"
-
Process TMX file: "Extract all translation units from this TMX file"
Development
Running tests
python -m pytest tests/
Running the server directly
python -m xliff_mcp.server
Requirements
- Python 3.10+
- mcp[cli] >= 1.2.0
- translate-toolkit >= 3.0.0
- lxml >= 4.9.0
- pydantic >= 2.0.0
License
MIT
Support
For issues and questions, please open an issue on the GitHub repository.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file xliff_mcp_server-0.1.1.tar.gz.
File metadata
- Download URL: xliff_mcp_server-0.1.1.tar.gz
- Upload date:
- Size: 32.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9c5192b498d320f1e47ca71db2e811e5927aa219aaba42f903cdcad193c9b7d0
|
|
| MD5 |
430cce51f141603f99689396f4f8217f
|
|
| BLAKE2b-256 |
6f3b79dce022f26baa4971181e705fe6c93ca44b6fd5dde34a35e2c5a0fe4059
|
File details
Details for the file xliff_mcp_server-0.1.1-py3-none-any.whl.
File metadata
- Download URL: xliff_mcp_server-0.1.1-py3-none-any.whl
- Upload date:
- Size: 14.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3f366ab2de0372bcc8e1cec95b47bca6495332e15effdef720da8e2f70803be6
|
|
| MD5 |
5a2413a98eccb9c6008ac9e9513d7940
|
|
| BLAKE2b-256 |
f5875705e5f51fb9d39f9488611861c245d66df2d0cb440d1e30c3d6ebf1a7a6
|