MCP-Server

Tolgee

io.github.tolgee/tolgee
Entwicklertools Wissen & Dokumentation Öffentlich und erreichbar MCP 2025-11-25

Was dieses MCP kann

Manages Tolgee localization projects, languages, translation keys, namespaces, tags, translations, branches, and machine-translation jobs.

create_branch
Create a new branch in a Tolgee project by forking from an existing branch. Only available for projects with branching enabled (enterprise feature).
Eingabeschema
{'type': 'object', 'required': ['name', 'originBranchId'], 'properties': {'name': {'type': 'string', 'description': 'Name of the new branch'}, 'projectId': {'type': 'number', 'description': 'ID of the project (required for PAT, auto-resolved for PAK)'}, 'originBranchId': {'type': 'number', 'description': 'ID of the branch to fork from'}}}
create_keys
Create translation keys in a Tolgee project with optional translations and tags. Keys that already exist are silently skipped — their translations and tags are not updated. Use update_key and set_translation to modify existing keys.
Eingabeschema
{'type': 'object', 'required': ['keys'], 'properties': {'keys': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'description': "Key name (e.g. 'home.welcome_message')"}, 'tags': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Optional: tags to assign to the key'}, 'namespace': {'type': 'string', 'description': 'Optional: namespace for the key (overrides top-level namespace)'}, 'description': {'type': 'string', 'description': 'Optional: description / developer context for the key'}, 'translations': {'type': 'object', 'description': 'Optional: translations as {languageTag: text} map', 'additionalProperties': {'type': 'string'}}}}, 'description': 'List of keys to create'}, 'branch': {'type': 'string', 'description': 'Optional: branch name'}, 'namespace': {'type': 'string', 'description': 'Optional: default namespace for all keys (individual keys can override)'}, 'projectId': {'type': 'number', 'description': 'ID of the project (required for PAT, auto-resolved for PAK)'}}}
create_language
Add a new language to a Tolgee project
Eingabeschema
{'type': 'object', 'required': ['name', 'tag'], 'properties': {'tag': {'type': 'string', 'description': "Language tag / IETF BCP 47 code (e.g. 'de')"}, 'name': {'type': 'string', 'description': "Language display name (e.g. 'German')"}, 'flagEmoji': {'type': 'string', 'description': 'Flag emoji for this language'}, 'projectId': {'type': 'number', 'description': 'ID of the project (required for PAT, auto-resolved for PAK)'}, 'originalName': {'type': 'string', 'description': "Native name of the language (e.g. 'Deutsch')"}}}
create_project
Create a new Tolgee project with initial languages
Eingabeschema
{'type': 'object', 'required': ['name', 'organizationId', 'languages'], 'properties': {'name': {'type': 'string', 'description': 'Project name'}, 'languages': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'tag'], 'properties': {'tag': {'type': 'string', 'description': "Language tag (e.g. 'en')"}, 'name': {'type': 'string', 'description': "Language name (e.g. 'English')"}, 'flagEmoji': {'type': 'string', 'description': 'Flag emoji for the language'}, 'originalName': {'type': 'string', 'description': 'Original name of the language'}}}, 'description': 'Initial languages for the project'}, 'organizationId': {'type': 'number', 'description': 'ID of the organization to create the project in'}, 'baseLanguageTag': {'type': 'string', 'description': 'Tag of the base language (default: first language)'}}}
delete_branch
Delete a branch from a Tolgee project. IMPORTANT: This is a destructive operation. The AI assistant should always confirm with the user before calling this tool.
Eingabeschema
{'type': 'object', 'required': ['branchName'], 'properties': {'projectId': {'type': 'number', 'description': 'ID of the project (required for PAT, auto-resolved for PAK)'}, 'branchName': {'type': 'string', 'description': 'Name of the branch to delete'}}}
delete_keys
Delete translation keys from a Tolgee project. IMPORTANT: This is a destructive operation. The AI assistant should always confirm with the user before calling this tool.
Eingabeschema
{'type': 'object', 'required': ['keyNames'], 'properties': {'branch': {'type': 'string', 'description': 'Optional: branch name'}, 'keyNames': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Names of the keys to delete'}, 'namespace': {'type': 'string', 'description': 'Optional: namespace of the keys'}, 'projectId': {'type': 'number', 'description': 'ID of the project (required for PAT, auto-resolved for PAK)'}}}
get_batch_job_status
Get the status of a batch job (e.g. machine translation) by its ID. Use to poll for completion.
Eingabeschema
{'type': 'object', 'required': ['jobId'], 'properties': {'jobId': {'type': 'number', 'description': 'ID of the batch job'}, 'projectId': {'type': 'number', 'description': 'ID of the project (required for PAT, auto-resolved for PAK)'}}}
get_key
Get a translation key's metadata (name, namespace, description) by its name. To get the key's translations, use get_translations.
Eingabeschema
{'type': 'object', 'required': ['keyName'], 'properties': {'branch': {'type': 'string', 'description': 'Optional: branch name'}, 'keyName': {'type': 'string', 'description': 'The translation key name'}, 'namespace': {'type': 'string', 'description': 'Optional: namespace of the key'}, 'projectId': {'type': 'number', 'description': 'ID of the project (required for PAT, auto-resolved for PAK)'}}}
get_project_language_statistics
Get translation status and progress for each language in a project. Returns per-language statistics including translated, reviewed, and untranslated percentages.
Eingabeschema
{'type': 'object', 'required': [], 'properties': {'projectId': {'type': 'number', 'description': 'ID of the project (required for PAT, auto-resolved for PAK)'}}}
get_translations
Get translations for a specific key in a Tolgee project. Returns translations in all project languages, or only the specified languages if provided.
Eingabeschema
{'type': 'object', 'required': ['keyName'], 'properties': {'branch': {'type': 'string', 'description': 'Optional: branch name'}, 'keyName': {'type': 'string', 'description': 'The translation key name'}, 'languages': {'type': 'array', 'items': {'type': 'string'}, 'description': "Optional: language tags to filter by (e.g. ['en', 'de']). If omitted, returns all languages."}, 'namespace': {'type': 'string', 'description': 'Optional: namespace of the key'}, 'projectId': {'type': 'number', 'description': 'ID of the project (required for PAT, auto-resolved for PAK)'}}}
list_branches
List branches in a Tolgee project. Returns up to 100 results per page. Only available for projects with branching enabled (enterprise feature).
Eingabeschema
{'type': 'object', 'required': [], 'properties': {'page': {'type': 'number', 'description': 'Optional: page number (0-based, default 0)'}, 'search': {'type': 'string', 'description': 'Optional: search filter for branch names'}, 'projectId': {'type': 'number', 'description': 'ID of the project (required for PAT, auto-resolved for PAK)'}}}
list_keys
List translation keys in a Tolgee project. Returns up to 100 keys per page. Use search_keys to find specific keys by name or translation text.
Eingabeschema
{'type': 'object', 'required': [], 'properties': {'page': {'type': 'number', 'description': 'Optional: page number (0-based, default 0)'}, 'branch': {'type': 'string', 'description': 'Optional: branch name'}, 'projectId': {'type': 'number', 'description': 'ID of the project (required for PAT, auto-resolved for PAK)'}}}
list_languages
List all languages configured for a Tolgee project. Returns up to 1000 results per page.
Eingabeschema
{'type': 'object', 'required': [], 'properties': {'page': {'type': 'number', 'description': 'Optional: page number (0-based, default 0)'}, 'projectId': {'type': 'number', 'description': 'ID of the project (required for PAT, auto-resolved for PAK)'}}}
list_namespaces
List all namespaces in a Tolgee project. Namespaces organize translation keys into logical groups (e.g. by feature, page, or module).
Eingabeschema
{'type': 'object', 'required': [], 'properties': {'projectId': {'type': 'number', 'description': 'ID of the project (required for PAT, auto-resolved for PAK)'}}}
list_projects
List Tolgee projects accessible to the current user. Returns up to 100 results per page.
Eingabeschema
{'type': 'object', 'required': [], 'properties': {'page': {'type': 'number', 'description': 'Optional: page number (0-based, default 0)'}, 'search': {'type': 'string', 'description': 'Optional search query to filter projects by name'}}}
list_tags
List all tags used in a Tolgee project. Returns up to 1000 results per page.
Eingabeschema
{'type': 'object', 'required': [], 'properties': {'page': {'type': 'number', 'description': 'Optional: page number (0-based, default 0)'}, 'search': {'type': 'string', 'description': 'Optional: search filter for tag names'}, 'projectId': {'type': 'number', 'description': 'ID of the project (required for PAT, auto-resolved for PAK)'}}}
machine_translate
Start machine translation for specified keys into target languages. Returns a batch job ID — use get_batch_job_status to poll for completion.
Eingabeschema
{'type': 'object', 'required': ['keyNames', 'targetLanguageTags'], 'properties': {'branch': {'type': 'string', 'description': 'Optional: branch name'}, 'keyNames': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Names of keys to translate'}, 'namespace': {'type': 'string', 'description': 'Optional: namespace of the keys'}, 'projectId': {'type': 'number', 'description': 'ID of the project (required for PAT, auto-resolved for PAK)'}, 'targetLanguageTags': {'type': 'array', 'items': {'type': 'string'}, 'description': "Language tags to translate into (e.g. ['de', 'fr'])"}}}
search_keys
Search for translation keys in a Tolgee project by name or translation text. Returns up to 50 matching keys per page. Note: namespace and tags filtering is not yet supported — filter results client-side if needed.
Eingabeschema
{'type': 'object', 'required': ['query'], 'properties': {'page': {'type': 'number', 'description': 'Optional: page number (0-based, default 0)'}, 'query': {'type': 'string', 'description': 'Search query (matches key name or translation text)'}, 'branch': {'type': 'string', 'description': 'Optional: branch name'}, 'projectId': {'type': 'number', 'description': 'ID of the project (required for PAT, auto-resolved for PAK)'}, 'languageTag': {'type': 'string', 'description': 'Optional: language tag to search translations in'}}}
set_translation
Set or update translations for a key in one or more languages. The key must already exist — use create_keys to create it first.
Eingabeschema
{'type': 'object', 'required': ['keyName', 'translations'], 'properties': {'branch': {'type': 'string', 'description': 'Optional: branch name'}, 'keyName': {'type': 'string', 'description': 'The translation key name'}, 'namespace': {'type': 'string', 'description': 'Optional: namespace of the key'}, 'projectId': {'type': 'number', 'description': 'ID of the project (required for PAT, auto-resolved for PAK)'}, 'translations': {'type': 'object', 'description': 'Translations as {languageTag: text} map (e.g. {"en": "Hello", "de": "Hallo"})', 'additionalProperties': {'type': 'string'}}}}
store_big_meta
Store key relationships so Tolgee can use translations of related keys as context during machine translation, producing more consistent results. Keys that appear near each other in source code (e.g. on the same page or component) should be stored as related.
Eingabeschema
{'type': 'object', 'required': ['relatedKeysInOrder'], 'properties': {'branch': {'type': 'string', 'description': 'Optional: branch name'}, 'projectId': {'type': 'number', 'description': 'ID of the project (required for PAT, auto-resolved for PAK)'}, 'relatedKeysInOrder': {'type': 'array', 'items': {'type': 'object', 'required': ['keyName'], 'properties': {'keyName': {'type': 'string', 'description': 'Key name'}, 'namespace': {'type': 'string', 'description': 'Optional: key namespace'}}}, 'description': 'List of related keys in the order they appear together'}}}
tag_keys
Add tags to translation keys. Creates tags if they don't exist.
Eingabeschema
{'type': 'object', 'required': ['keyNames', 'tags'], 'properties': {'tags': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Names of the tags to add'}, 'branch': {'type': 'string', 'description': 'Optional: branch name'}, 'keyNames': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Names of the keys to tag'}, 'namespace': {'type': 'string', 'description': 'Optional: namespace of the keys'}, 'projectId': {'type': 'number', 'description': 'ID of the project (required for PAT, auto-resolved for PAK)'}}}
update_key
Update an existing translation key's name, namespace, or description
Eingabeschema
{'type': 'object', 'required': ['keyName', 'newName'], 'properties': {'keyName': {'type': 'string', 'description': 'Current key name (used to find the key)'}, 'newName': {'type': 'string', 'description': 'New key name (provide the current name if unchanged)'}, 'keyBranch': {'type': 'string', 'description': 'Optional: branch name (used to find the key, for branching projects)'}, 'projectId': {'type': 'number', 'description': 'ID of the project (required for PAT, auto-resolved for PAK)'}, 'keyNamespace': {'type': 'string', 'description': 'Optional: current namespace of the key (used to find the key)'}, 'newNamespace': {'type': 'string', 'description': 'Optional: new namespace for the key'}, 'newDescription': {'type': 'string', 'description': 'Optional: new description for the key'}}}
Hinzugefügt
set_translation
17. September 2026 12:52
Hinzugefügt
get_translations
17. September 2026 12:52
Hinzugefügt
tag_keys
17. September 2026 12:52
Hinzugefügt
list_tags
17. September 2026 12:52
Hinzugefügt
get_project_language_statistics
17. September 2026 12:52
Hinzugefügt
create_project
17. September 2026 12:52
Hinzugefügt
list_projects
17. September 2026 12:52
Hinzugefügt
list_namespaces
17. September 2026 12:52
Hinzugefügt
create_language
17. September 2026 12:52
Hinzugefügt
list_languages
17. September 2026 12:52
Hinzugefügt
delete_keys
17. September 2026 12:52
Hinzugefügt
update_key
17. September 2026 12:52
Hinzugefügt
get_key
17. September 2026 12:52
Hinzugefügt
create_keys
17. September 2026 12:52
Hinzugefügt
search_keys
17. September 2026 12:52
Hinzugefügt
list_keys
17. September 2026 12:52
Hinzugefügt
delete_branch
17. September 2026 12:52
Hinzugefügt
create_branch
17. September 2026 12:52
Hinzugefügt
list_branches
17. September 2026 12:52
Hinzugefügt
store_big_meta
17. September 2026 12:52
Hinzugefügt
machine_translate
17. September 2026 12:52
Hinzugefügt
get_batch_job_status
17. September 2026 12:52