Multilocale Translations
Manage app translations: find missing or duplicate phrases, add languages and export dictionaries.
Sollte ich dies verwenden
Qualität und Sicherheit
Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.
Kontextkosten
Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.
Installieren
Installation mit einem Klick
Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:
{
"mcpServers": {
"multilocale": {
"url": "https://mcp.multilocale.com/mcp"
}
}
}Remote-Endpunkte
https://mcp.multilocale.com/mcpstreamable-httpWas es kann
Tool-Inventar
Tools (17)
🟢list_projects
List all MultiLocale projects the authenticated user has access to. Returns a bounded Markdown and structured preview of project ids, names, locales, and timestamps.
Eingabe-Schema
{
"type": "object",
"properties": {},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"found",
"empty"
]
},
"projectCount": {
"type": "integer",
"minimum": 0
},
"projectsTruncated": {
"type": "boolean"
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"anyOf": [
{
"type": "string",
"pattern": "^[0-9a-f]{24}$"
},
{
"type": "null"
}
]
},
"name": {
"type": "string",
"maxLength": 128
},
"defaultLocale": {
"anyOf": [
{
"type": "string",
"maxLength": 35
},
{
"type": "null"
}
]
},
"locales": {
"type": "array",
"items": {
"$ref": "#/properties/projects/items/properties/defaultLocale/anyOf/0"
},
"maxItems": 200
},
"creationTime": {
"anyOf": [
{
"type": "string",
"maxLength": 32
},
{
"type": "null"
}
]
},
"lastEditTime": {
"$ref": "#/properties/projects/items/properties/creationTime"
}
},
"required": [
"id",
"name",
"defaultLocale",
"locales",
"creationTime",
"lastEditTime"
],
"additionalProperties": false
},
"maxItems": 100
}
},
"required": [
"status",
"projectCount",
"projectsTruncated",
"projects"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_project(projectIdOrName)
Fetch a single MultiLocale project by id or name. Returns bounded Markdown and structured project metadata, including name, configured locales, and timestamps.
Eingabe-Schema
{
"type": "object",
"properties": {
"projectIdOrName": {
"type": "string",
"maxLength": 128,
"description": "Project id or project name (slug)"
}
},
"required": [
"projectIdOrName"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"found",
"not-found"
]
},
"project": {
"anyOf": [
{
"type": "object",
"properties": {
"id": {
"anyOf": [
{
"type": "string",
"pattern": "^[0-9a-f]{24}$"
},
{
"type": "null"
}
]
},
"name": {
"type": "string",
"maxLength": 128
},
"defaultLocale": {
"anyOf": [
{
"type": "string",
"maxLength": 35
},
{
"type": "null"
}
]
},
"locales": {
"type": "array",
"items": {
"$ref": "#/properties/project/anyOf/0/properties/defaultLocale/anyOf/0"
},
"maxItems": 200
},
"creationTime": {
"anyOf": [
{
"type": "string",
"maxLength": 32
},
{
"type": "null"
}
]
},
"lastEditTime": {
"$ref": "#/properties/project/anyOf/0/properties/creationTime"
}
},
"required": [
"id",
"name",
"defaultLocale",
"locales",
"creationTime",
"lastEditTime"
],
"additionalProperties": false
},
{
"type": "null"
}
]
}
},
"required": [
"status",
"project"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🔴add_project(name, defaultLocale, locales)
Create a MultiLocale project with a default locale and optional additional locales. Refuses to create a duplicate project name in the authenticated organization.
Eingabe-Schema
{
"type": "object",
"properties": {
"name": {
"type": "string",
"minLength": 1,
"maxLength": 128,
"description": "New project name (prefer a URL-safe slug)"
},
"defaultLocale": {
"type": "string",
"minLength": 1,
"maxLength": 35,
"description": "Default locale code for the project (for example, en)"
},
"locales": {
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 35
},
"maxItems": 200,
"description": "Initial locale codes. The default locale is added automatically when omitted."
}
},
"required": [
"name",
"defaultLocale"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"created",
"already-exists"
]
},
"project": {
"anyOf": [
{
"type": "object",
"properties": {
"id": {
"anyOf": [
{
"type": "string",
"pattern": "^[0-9a-f]{24}$"
},
{
"type": "null"
}
]
},
"name": {
"type": "string",
"maxLength": 128
},
"defaultLocale": {
"anyOf": [
{
"type": "string",
"maxLength": 35
},
{
"type": "null"
}
]
},
"locales": {
"type": "array",
"items": {
"$ref": "#/properties/project/anyOf/0/properties/defaultLocale/anyOf/0"
},
"maxItems": 200
},
"creationTime": {
"anyOf": [
{
"type": "string",
"maxLength": 32
},
{
"type": "null"
}
]
},
"lastEditTime": {
"$ref": "#/properties/project/anyOf/0/properties/creationTime"
}
},
"required": [
"id",
"name",
"defaultLocale",
"locales",
"creationTime",
"lastEditTime"
],
"additionalProperties": false
},
{
"type": "null"
}
]
}
},
"required": [
"status",
"project"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🔴update_project(projectIdOrName, defaultLocale, locales, context)
Update a MultiLocale project’s default locale, complete locale list, or translation context. Project names are intentionally not changed because phrases reference the project name.
Eingabe-Schema
{
"type": "object",
"properties": {
"projectIdOrName": {
"type": "string",
"minLength": 1,
"maxLength": 128,
"description": "Project id or project name (slug)"
},
"defaultLocale": {
"type": "string",
"minLength": 1,
"maxLength": 35,
"description": "New default locale code. It must be one of the project locales."
},
"locales": {
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 35
},
"minItems": 1,
"maxItems": 200,
"description": "Complete replacement list of locale codes. Include the default locale."
},
"context": {
"type": "string",
"maxLength": 600,
"description": "Optional translation context for the project. Use an empty string to clear it."
}
},
"required": [
"projectIdOrName"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"no-input",
"not-found",
"no-change",
"updated"
]
},
"project": {
"anyOf": [
{
"type": "string",
"maxLength": 128
},
{
"type": "null"
}
]
},
"changedFields": {
"type": "array",
"items": {
"type": "string",
"enum": [
"defaultLocale",
"locales",
"context"
]
},
"maxItems": 3
}
},
"required": [
"status",
"project",
"changedFields"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢list_phrases(project, language, key)
List translation phrases for a MultiLocale project. Optionally filter by language or key. Returns a bounded Markdown and structured preview of id, key, language, and value.
Eingabe-Schema
{
"type": "object",
"properties": {
"project": {
"type": "string",
"maxLength": 128,
"description": "Project name (slug) to list phrases for"
},
"language": {
"type": "string",
"maxLength": 35,
"description": "Filter by language code (e.g. en, it, es)"
},
"key": {
"type": "string",
"maxLength": 256,
"description": "Filter by exact phrase key"
}
},
"required": [
"project"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"found",
"empty"
]
},
"phraseCount": {
"type": "integer",
"minimum": 0
},
"phrasesTruncated": {
"type": "boolean"
},
"phrases": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"anyOf": [
{
"type": "string",
"pattern": "^[0-9a-f]{24}$"
},
{
"type": "null"
}
]
},
"key": {
"type": "string",
"maxLength": 256
},
"language": {
"type": "string",
"maxLength": 35
},
"value": {
"type": "string",
"maxLength": 2000
},
"valueTruncated": {
"type": "boolean"
},
"machineTranslated": {
"type": [
"boolean",
"null"
]
},
"projects": {
"type": "array",
"items": {
"type": "string",
"maxLength": 128
},
"maxItems": 100
},
"creationTime": {
"anyOf": [
{
"type": "string",
"maxLength": 32
},
{
"type": "null"
}
]
},
"lastEditTime": {
"$ref": "#/properties/phrases/items/properties/creationTime"
}
},
"required": [
"id",
"key",
"language",
"value",
"valueTruncated",
"machineTranslated",
"projects",
"creationTime",
"lastEditTime"
],
"additionalProperties": false
},
"maxItems": 100
}
},
"required": [
"status",
"phraseCount",
"phrasesTruncated",
"phrases"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_phrase(project, key, language)
Fetch translations for one exact phrase key in a MultiLocale project. Returns a bounded Markdown and structured preview across locales, or a single locale when language is provided.
Eingabe-Schema
{
"type": "object",
"properties": {
"project": {
"type": "string",
"maxLength": 128,
"description": "Project name (slug) the phrase belongs to"
},
"key": {
"type": "string",
"minLength": 1,
"maxLength": 256,
"description": "Exact phrase key to look up"
},
"language": {
"type": "string",
"maxLength": 35,
"description": "Language code to fetch (e.g. en, it). Omit to fetch all languages for the key."
}
},
"required": [
"project",
"key"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"found",
"not-found"
]
},
"project": {
"type": "string",
"maxLength": 128
},
"key": {
"type": "string",
"maxLength": 256
},
"translationCount": {
"type": "integer",
"minimum": 0
},
"translationsTruncated": {
"type": "boolean"
},
"translations": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"anyOf": [
{
"type": "string",
"pattern": "^[0-9a-f]{24}$"
},
{
"type": "null"
}
]
},
"language": {
"type": "string",
"maxLength": 35
},
"value": {
"type": "string",
"maxLength": 2000
},
"valueTruncated": {
"type": "boolean"
},
"machineTranslated": {
"type": [
"boolean",
"null"
]
},
"projects": {
"type": "array",
"items": {
"type": "string",
"maxLength": 128
},
"maxItems": 100
},
"creationTime": {
"anyOf": [
{
"type": "string",
"maxLength": 32
},
{
"type": "null"
}
]
},
"lastEditTime": {
"$ref": "#/properties/translations/items/properties/creationTime"
}
},
"required": [
"id",
"language",
"value",
"valueTruncated",
"machineTranslated",
"projects",
"creationTime",
"lastEditTime"
],
"additionalProperties": false
},
"maxItems": 24
}
},
"required": [
"status",
"project",
"key",
"translationCount",
"translationsTruncated",
"translations"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢search_phrases(project, query, language)
Search translation phrases for a MultiLocale project by matching a query string against phrase keys and values. Returns a bounded Markdown and structured preview of matching ids, keys, languages, and values.
Eingabe-Schema
{
"type": "object",
"properties": {
"project": {
"type": "string",
"maxLength": 128,
"description": "Project name (slug) to search phrases in"
},
"query": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "Search text to match against phrase keys and values"
},
"language": {
"type": "string",
"maxLength": 35,
"description": "Restrict search to a specific language code (e.g. en, it)"
}
},
"required": [
"project",
"query"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"found",
"empty",
"no-matches"
]
},
"phraseCount": {
"type": "integer",
"minimum": 0
},
"phrasesTruncated": {
"type": "boolean"
},
"phrases": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"anyOf": [
{
"type": "string",
"pattern": "^[0-9a-f]{24}$"
},
{
"type": "null"
}
]
},
"key": {
"type": "string",
"maxLength": 256
},
"language": {
"type": "string",
"maxLength": 35
},
"value": {
"type": "string",
"maxLength": 2000
},
"valueTruncated": {
"type": "boolean"
},
"machineTranslated": {
"type": [
"boolean",
"null"
]
},
"projects": {
"type": "array",
"items": {
"type": "string",
"maxLength": 128
},
"maxItems": 100
},
"creationTime": {
"anyOf": [
{
"type": "string",
"maxLength": 32
},
{
"type": "null"
}
]
},
"lastEditTime": {
"$ref": "#/properties/phrases/items/properties/creationTime"
}
},
"required": [
"id",
"key",
"language",
"value",
"valueTruncated",
"machineTranslated",
"projects",
"creationTime",
"lastEditTime"
],
"additionalProperties": false
},
"maxItems": 100
}
},
"required": [
"status",
"phraseCount",
"phrasesTruncated",
"phrases"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢find_duplicate_phrase_values(project, scanLimit)
Find keys in a bounded scan of one MultiLocale project whose default-locale translations have the same value. The result explicitly reports when the scan or output preview is truncated.
Eingabe-Schema
{
"type": "object",
"properties": {
"project": {
"type": "string",
"minLength": 1,
"maxLength": 128,
"description": "Project id or name whose default-locale copy should be checked"
},
"scanLimit": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 2000,
"description": "Maximum default-locale phrases to scan. Defaults to 1000, capped at 2000."
}
},
"required": [
"project"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"found",
"none",
"partial",
"not-found"
]
},
"project": {
"anyOf": [
{
"type": "string",
"maxLength": 128
},
{
"type": "null"
}
]
},
"defaultLocale": {
"anyOf": [
{
"type": "string",
"maxLength": 35
},
{
"type": "null"
}
]
},
"phrasesScanned": {
"type": "integer",
"minimum": 0,
"maximum": 2000
},
"scanLimit": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 2000
},
"scanTruncated": {
"type": "boolean"
},
"duplicateCount": {
"type": "integer",
"minimum": 0,
"maximum": 2000
},
"duplicatesTruncated": {
"type": "boolean"
},
"duplicates": {
"type": "array",
"items": {
"type": "object",
"properties": {
"value": {
"type": "string",
"maxLength": 500
},
"valueTruncated": {
"type": "boolean"
},
"keys": {
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 256
},
"maxItems": 10
},
"keysTruncated": {
"type": "boolean"
},
"sharedWith": {
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"maxItems": 10
},
"sharedWithTruncated": {
"type": "boolean"
}
},
"required": [
"value",
"valueTruncated",
"keys",
"keysTruncated",
"sharedWith",
"sharedWithTruncated"
],
"additionalProperties": false
},
"maxItems": 25
}
},
"required": [
"status",
"project",
"defaultLocale",
"phrasesScanned",
"scanLimit",
"scanTruncated",
"duplicateCount",
"duplicatesTruncated",
"duplicates"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢find_missing_translations(project, language, localeLimit, scanLimit)
Report missing keys in a bounded scan of one locale or up to 10 configured locales, compared with the project default locale. The result explicitly reports partial locale or phrase scans and never creates translations.
Eingabe-Schema
{
"type": "object",
"properties": {
"project": {
"type": "string",
"minLength": 1,
"maxLength": 128,
"description": "Project id or name whose translation coverage should be checked"
},
"language": {
"type": "string",
"minLength": 1,
"maxLength": 35,
"description": "Locale code to check. Omit to report coverage for every configured locale."
},
"localeLimit": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 10,
"description": "Maximum configured locales to check when language is omitted. Defaults to 10."
},
"scanLimit": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 2000,
"description": "Maximum phrases to scan per locale. Defaults to 1000, capped at 2000."
}
},
"required": [
"project"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"complete",
"incomplete",
"partial",
"not-found"
]
},
"project": {
"anyOf": [
{
"type": "string",
"maxLength": 128
},
{
"type": "null"
}
]
},
"defaultLocale": {
"anyOf": [
{
"type": "string",
"maxLength": 35
},
{
"type": "null"
}
]
},
"sourcePhrasesScanned": {
"type": "integer",
"minimum": 0,
"maximum": 2000
},
"scanLimit": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 2000
},
"sourceScanTruncated": {
"type": "boolean"
},
"localesTruncated": {
"type": "boolean"
},
"locales": {
"type": "array",
"items": {
"type": "object",
"properties": {
"language": {
"type": "string",
"minLength": 1,
"maxLength": 35
},
"totalKeys": {
"type": "integer",
"minimum": 0,
"maximum": 2000
},
"translatedKeys": {
"type": "integer",
"minimum": 0,
"maximum": 2000
},
"missingKeyCount": {
"type": "integer",
"minimum": 0,
"maximum": 2000
},
"completionPercent": {
"type": "integer",
"minimum": 0,
"maximum": 100
},
"targetPhrasesScanned": {
"type": "integer",
"minimum": 0,
"maximum": 2000
},
"targetScanTruncated": {
"type": "boolean"
},
"analysisIncomplete": {
"type": "boolean"
},
"missingKeys": {
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 256
},
"maxItems": 25
},
"missingKeysTruncated": {
"type": "boolean"
}
},
"required": [
"language",
"totalKeys",
"translatedKeys",
"missingKeyCount",
"completionPercent",
"targetPhrasesScanned",
"targetScanTruncated",
"analysisIncomplete",
"missingKeys",
"missingKeysTruncated"
],
"additionalProperties": false
},
"maxItems": 10
}
},
"required": [
"status",
"project",
"defaultLocale",
"sourcePhrasesScanned",
"scanLimit",
"sourceScanTruncated",
"localesTruncated",
"locales"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢export_locale_dictionary(project, language, skip, limit)
Export one locale of a MultiLocale project as bounded, sorted key/value entries. Results are API-paginated with a maximum of 50 entries per call and each value is capped at 500 characters.
Eingabe-Schema
{
"type": "object",
"properties": {
"project": {
"type": "string",
"minLength": 1,
"maxLength": 128,
"description": "Project name (slug) to export"
},
"language": {
"type": "string",
"minLength": 1,
"maxLength": 35,
"description": "Language code to export (for example, en)"
},
"skip": {
"type": "integer",
"minimum": 0,
"maximum": 10000,
"description": "Number of keys to skip, sorted alphabetically. Defaults to 0 and is capped at 10000."
},
"limit": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 50,
"description": "Maximum number of keys to return. Defaults to 25, capped at 50."
}
},
"required": [
"project",
"language"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"found",
"empty",
"partial"
]
},
"project": {
"type": "string",
"maxLength": 128
},
"language": {
"type": "string",
"maxLength": 35
},
"returnedCount": {
"type": "integer",
"minimum": 0,
"maximum": 50
},
"skip": {
"type": "integer",
"minimum": 0,
"maximum": 10000
},
"nextSkip": {
"anyOf": [
{
"$ref": "#/properties/skip"
},
{
"type": "null"
}
]
},
"hasMore": {
"type": "boolean"
},
"offsetCapReached": {
"type": "boolean"
},
"valuesTruncated": {
"type": "boolean"
},
"entries": {
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string",
"minLength": 1,
"maxLength": 256
},
"value": {
"type": "string",
"maxLength": 500
}
},
"required": [
"key",
"value"
],
"additionalProperties": false
},
"maxItems": 50
}
},
"required": [
"status",
"project",
"language",
"returnedCount",
"skip",
"nextSkip",
"hasMore",
"offsetCapReached",
"valuesTruncated",
"entries"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢list_team_members
List a bounded roster for the authenticated MultiLocale organization. Returns only each member's display name and role. Email addresses, member IDs, role IDs, phone, country, and signup device details are excluded.
Eingabe-Schema
{
"type": "object",
"properties": {},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"found",
"empty"
]
},
"memberCount": {
"type": "integer",
"minimum": 0
},
"membersTruncated": {
"type": "boolean"
},
"members": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"role": {
"type": "string",
"minLength": 1,
"maxLength": 100
}
},
"required": [
"name",
"role"
],
"additionalProperties": false
},
"maxItems": 100
}
},
"required": [
"status",
"memberCount",
"membersTruncated",
"members"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🔴add_phrase(project, key, value, model, context)
Create a new key in a project’s default locale and generate translations for every other configured locale. Omit value to use the key as its source value. Refuses to overwrite an existing key.
Eingabe-Schema
{
"type": "object",
"properties": {
"project": {
"type": "string",
"minLength": 1,
"maxLength": 128,
"description": "Project name (slug) to add the key to"
},
"key": {
"type": "string",
"minLength": 1,
"maxLength": 256,
"description": "New exact phrase key"
},
"value": {
"type": "string",
"minLength": 1,
"maxLength": 2000,
"description": "Source value in the default locale. Omit to use the key itself."
},
"model": {
"type": "string",
"maxLength": 64,
"description": "Translation model to use. Defaults to gpt-6-luna."
},
"context": {
"type": "string",
"maxLength": 600,
"description": "Optional context that helps translators disambiguate the phrase."
}
},
"required": [
"project",
"key"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"created",
"not-found",
"already-exists"
]
},
"project": {
"anyOf": [
{
"type": "string",
"maxLength": 128
},
{
"type": "null"
}
]
},
"key": {
"type": "string",
"maxLength": 256
},
"defaultLocale": {
"anyOf": [
{
"type": "string",
"maxLength": 35
},
{
"type": "null"
}
]
},
"translationCount": {
"type": "integer",
"minimum": 0
},
"locales": {
"type": "array",
"items": {
"type": "string",
"maxLength": 35
},
"maxItems": 200
}
},
"required": [
"status",
"project",
"key",
"defaultLocale",
"translationCount",
"locales"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🔴update_phrase(project, key, language, value)
Update the translation value for a specific phrase key and language in a MultiLocale project. Phrases may be shared across projects — updating affects all projects that share the key. Clears machine-translation flags since the value is now human-edited.
Eingabe-Schema
{
"type": "object",
"properties": {
"project": {
"type": "string",
"maxLength": 128,
"description": "Project name (slug) the phrase belongs to"
},
"key": {
"type": "string",
"minLength": 1,
"maxLength": 256,
"description": "Exact phrase key to update"
},
"language": {
"type": "string",
"minLength": 1,
"maxLength": 35,
"description": "Language code of the translation to update (e.g. en, it, es)"
},
"value": {
"type": "string",
"minLength": 1,
"maxLength": 2000,
"description": "New translation value for the given language"
}
},
"required": [
"project",
"key",
"language",
"value"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"not-found",
"no-change",
"updated"
]
},
"project": {
"type": "string",
"maxLength": 128
},
"key": {
"type": "string",
"maxLength": 256
},
"language": {
"type": "string",
"maxLength": 35
},
"previousValue": {
"anyOf": [
{
"type": "string",
"maxLength": 2000
},
{
"type": "null"
}
]
},
"value": {
"anyOf": [
{
"type": "string",
"maxLength": 2000
},
{
"type": "null"
}
]
},
"sharedProjects": {
"type": "array",
"items": {
"type": "string",
"maxLength": 128
},
"maxItems": 100
}
},
"required": [
"status",
"project",
"key",
"language",
"previousValue",
"value",
"sharedProjects"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🔴add_locale(project, locale, model, context)
Add a new locale to a project and generate translations for every key currently missing in that locale. Uses the default-locale value as the source for each translation.
Eingabe-Schema
{
"type": "object",
"properties": {
"project": {
"type": "string",
"minLength": 1,
"maxLength": 128,
"description": "Project name (slug) to localize"
},
"locale": {
"type": "string",
"minLength": 1,
"maxLength": 35,
"description": "New locale code to add (for example, it)"
},
"model": {
"type": "string",
"maxLength": 64,
"description": "Translation model to use. Defaults to gpt-6-luna."
},
"context": {
"type": "string",
"maxLength": 600,
"description": "Optional context applied while translating the missing phrases."
}
},
"required": [
"project",
"locale"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"created",
"not-found",
"already-exists"
]
},
"project": {
"anyOf": [
{
"type": "string",
"maxLength": 128
},
{
"type": "null"
}
]
},
"locale": {
"type": "string",
"maxLength": 35
},
"translationCount": {
"type": "integer",
"minimum": 0
},
"locales": {
"type": "array",
"items": {
"type": "string",
"maxLength": 35
},
"maxItems": 200
}
},
"required": [
"status",
"project",
"locale",
"translationCount",
"locales"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🔴share_phrase(project, key, targetProjects)
Attach every locale translation for one key in a source project to one or more target projects. The underlying phrase rows become shared, so future edits affect every attached project.
Eingabe-Schema
{
"type": "object",
"properties": {
"project": {
"type": "string",
"minLength": 1,
"maxLength": 128,
"description": "Source project id or name that already contains the key"
},
"key": {
"type": "string",
"minLength": 1,
"maxLength": 256,
"description": "Exact key to share across every locale"
},
"targetProjects": {
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"minItems": 1,
"maxItems": 25,
"description": "One or more target project ids or names to attach to the key"
}
},
"required": [
"project",
"key",
"targetProjects"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"updated",
"not-found",
"no-targets",
"already-shared"
]
},
"project": {
"anyOf": [
{
"type": "string",
"maxLength": 128
},
{
"type": "null"
}
]
},
"key": {
"type": "string",
"maxLength": 256
},
"targetProjects": {
"type": "array",
"items": {
"type": "string",
"maxLength": 128
},
"maxItems": 25
},
"translationCount": {
"type": "integer",
"minimum": 0
}
},
"required": [
"status",
"project",
"key",
"targetProjects",
"translationCount"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🔴delete_phrase(project, key)
Permanently delete every locale translation for one key in a project. If a phrase is shared with other projects, this deletes the shared row for those projects too, rather than only detaching the project.
Eingabe-Schema
{
"type": "object",
"properties": {
"project": {
"type": "string",
"minLength": 1,
"maxLength": 128,
"description": "Project id or name that contains the key to delete"
},
"key": {
"type": "string",
"minLength": 1,
"maxLength": 256,
"description": "Exact key whose complete locale group should be deleted"
}
},
"required": [
"project",
"key"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"deleted",
"not-found"
]
},
"project": {
"anyOf": [
{
"type": "string",
"maxLength": 128
},
{
"type": "null"
}
]
},
"key": {
"type": "string",
"maxLength": 256
},
"deletedTranslationCount": {
"type": "integer",
"minimum": 0
},
"sharedProjects": {
"type": "array",
"items": {
"type": "string",
"maxLength": 128
},
"maxItems": 100
}
},
"required": [
"status",
"project",
"key",
"deletedTranslationCount",
"sharedProjects"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢show_project_overview(projectIdOrName)
Render a bounded overview for a known MultiLocale project. Use this after listing projects or when the user provides a project id or name. It shows safe project metadata and up to 24 configured locales without downloading the project phrase dictionary.
Eingabe-Schema
{
"type": "object",
"properties": {
"projectIdOrName": {
"type": "string",
"minLength": 1,
"maxLength": 128,
"description": "MultiLocale project id or name (slug) to render"
}
},
"required": [
"projectIdOrName"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"project": {
"anyOf": [
{
"type": "object",
"properties": {
"id": {
"anyOf": [
{
"type": "string",
"pattern": "^[0-9a-f]{24}$"
},
{
"type": "null"
}
]
},
"name": {
"type": "string",
"maxLength": 128
},
"defaultLocale": {
"anyOf": [
{
"type": "string",
"maxLength": 35
},
{
"type": "null"
}
]
},
"localeCount": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"localesTruncated": {
"type": "boolean"
},
"locales": {
"maxItems": 24,
"type": "array",
"items": {
"type": "string",
"maxLength": 35
}
},
"creationTime": {
"anyOf": [
{
"type": "string",
"maxLength": 32
},
{
"type": "null"
}
]
},
"lastEditTime": {
"anyOf": [
{
"type": "string",
"maxLength": 32
},
{
"type": "null"
}
]
}
},
"required": [
"id",
"name",
"defaultLocale",
"localeCount",
"localesTruncated",
"locales",
"creationTime",
"lastEditTime"
],
"additionalProperties": false
},
{
"type": "null"
}
]
}
},
"required": [
"project"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}Community
Nachweis