Multilocale Translations
Manage app translations: find missing or duplicate phrases, add languages and export dictionaries.
我該用這個嗎
品質與安全性
根據工具定義與協定合規性的自動化分析。
上下文成本
這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。
安裝
一鍵安裝
將以下內容加入你的 `claude_desktop_config.json` 檔案:
{
"mcpServers": {
"multilocale": {
"url": "https://mcp.multilocale.com/mcp"
}
}
}遠端端點
https://mcp.multilocale.com/mcpstreamable-http它能做什麼
工具清單
工具(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.
輸入結構描述
{
"type": "object",
"properties": {},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/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.
輸入結構描述
{
"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#"
}輸出結構描述
{
"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.
輸入結構描述
{
"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#"
}輸出結構描述
{
"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.
輸入結構描述
{
"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#"
}輸出結構描述
{
"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.
輸入結構描述
{
"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#"
}輸出結構描述
{
"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.
輸入結構描述
{
"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#"
}輸出結構描述
{
"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.
輸入結構描述
{
"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#"
}輸出結構描述
{
"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.
輸入結構描述
{
"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#"
}輸出結構描述
{
"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.
輸入結構描述
{
"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#"
}輸出結構描述
{
"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.
輸入結構描述
{
"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#"
}輸出結構描述
{
"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.
輸入結構描述
{
"type": "object",
"properties": {},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/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.
輸入結構描述
{
"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#"
}輸出結構描述
{
"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.
輸入結構描述
{
"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#"
}輸出結構描述
{
"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.
輸入結構描述
{
"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#"
}輸出結構描述
{
"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.
輸入結構描述
{
"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#"
}輸出結構描述
{
"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.
輸入結構描述
{
"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#"
}輸出結構描述
{
"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.
輸入結構描述
{
"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"
}輸出結構描述
{
"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
}社群
證據