Tolgee

Your app's translations in Tolgee: search keys, create translations, trigger machine translation

我该使用它吗

质量与安全性

A
描述质量
96%
模式完整度
97%
命名质量
96%
投毒风险
100%
权限匹配度
100%
协议合规性
100%

发现(2)

  • LOWTool 'store_big_meta' description lacks action verb在 store_big_meta 中
  • LOWTool 'get_project_language_statistics' name length outside 3-30 range在 get_project_language_statistics 中

基于对工具定义和协议合规性的自动分析。

上下文开销

~3,046token 数(工具定义)
~1.3 KB典型响应大小
对注意力有显著影响(占 128k 上下文窗口的 2.38%)

这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。

安装

一键安装

将以下内容添加到你的 `claude_desktop_config.json` 文件中:

{
  "mcpServers": {
    "tolgee": {
      "url": "https://app.tolgee.io/mcp/developer"
    }
  }
}

远程端点

https://app.tolgee.io/mcp/developerstreamable-http

它能做什么

工具清单

工具(22)

🟢 只读🟡 写入🔴 删除⚪ 未知
🟢get_batch_job_status(projectId, jobId)

Get the status of a batch job (e.g. machine translation) by its ID. Use to poll for completion.

输入模式

{
  "type": "object",
  "properties": {
    "projectId": {
      "type": "number",
      "description": "ID of the project (required for PAT, auto-resolved for PAK)"
    },
    "jobId": {
      "type": "number",
      "description": "ID of the batch job"
    }
  },
  "required": [
    "jobId"
  ]
}
🟢machine_translate(projectId, keyNames, targetLanguageTags, namespace, branch)

Start machine translation for specified keys into target languages. Returns a batch job ID — use get_batch_job_status to poll for completion.

输入模式

{
  "type": "object",
  "properties": {
    "projectId": {
      "type": "number",
      "description": "ID of the project (required for PAT, auto-resolved for PAK)"
    },
    "keyNames": {
      "type": "array",
      "description": "Names of keys to translate",
      "items": {
        "type": "string"
      }
    },
    "targetLanguageTags": {
      "type": "array",
      "description": "Language tags to translate into (e.g. ['de', 'fr'])",
      "items": {
        "type": "string"
      }
    },
    "namespace": {
      "type": "string",
      "description": "Optional: namespace of the keys"
    },
    "branch": {
      "type": "string",
      "description": "Optional: branch name"
    }
  },
  "required": [
    "keyNames",
    "targetLanguageTags"
  ]
}
⚪store_big_meta(projectId, relatedKeysInOrder, branch)

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.

输入模式

{
  "type": "object",
  "properties": {
    "projectId": {
      "type": "number",
      "description": "ID of the project (required for PAT, auto-resolved for PAK)"
    },
    "relatedKeysInOrder": {
      "type": "array",
      "description": "List of related keys in the order they appear together",
      "items": {
        "type": "object",
        "properties": {
          "keyName": {
            "type": "string",
            "description": "Key name"
          },
          "namespace": {
            "type": "string",
            "description": "Optional: key namespace"
          }
        },
        "required": [
          "keyName"
        ]
      }
    },
    "branch": {
      "type": "string",
      "description": "Optional: branch name"
    }
  },
  "required": [
    "relatedKeysInOrder"
  ]
}
🟢list_branches(projectId, search, page)

List branches in a Tolgee project. Returns up to 100 results per page. Only available for projects with branching enabled (enterprise feature).

输入模式

{
  "type": "object",
  "properties": {
    "projectId": {
      "type": "number",
      "description": "ID of the project (required for PAT, auto-resolved for PAK)"
    },
    "search": {
      "type": "string",
      "description": "Optional: search filter for branch names"
    },
    "page": {
      "type": "number",
      "description": "Optional: page number (0-based, default 0)"
    }
  },
  "required": []
}
🟡create_branch(projectId, name, originBranchId)

Create a new branch in a Tolgee project by forking from an existing branch. Only available for projects with branching enabled (enterprise feature).

输入模式

{
  "type": "object",
  "properties": {
    "projectId": {
      "type": "number",
      "description": "ID of the project (required for PAT, auto-resolved for PAK)"
    },
    "name": {
      "type": "string",
      "description": "Name of the new branch"
    },
    "originBranchId": {
      "type": "number",
      "description": "ID of the branch to fork from"
    }
  },
  "required": [
    "name",
    "originBranchId"
  ]
}
🔴delete_branch(projectId, branchName)

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.

输入模式

{
  "type": "object",
  "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"
    }
  },
  "required": [
    "branchName"
  ]
}
🟢list_keys(projectId, branch, page)

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.

输入模式

{
  "type": "object",
  "properties": {
    "projectId": {
      "type": "number",
      "description": "ID of the project (required for PAT, auto-resolved for PAK)"
    },
    "branch": {
      "type": "string",
      "description": "Optional: branch name"
    },
    "page": {
      "type": "number",
      "description": "Optional: page number (0-based, default 0)"
    }
  },
  "required": []
}
🟢search_keys(projectId, query, languageTag, branch, page)

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.

输入模式

{
  "type": "object",
  "properties": {
    "projectId": {
      "type": "number",
      "description": "ID of the project (required for PAT, auto-resolved for PAK)"
    },
    "query": {
      "type": "string",
      "description": "Search query (matches key name or translation text)"
    },
    "languageTag": {
      "type": "string",
      "description": "Optional: language tag to search translations in"
    },
    "branch": {
      "type": "string",
      "description": "Optional: branch name"
    },
    "page": {
      "type": "number",
      "description": "Optional: page number (0-based, default 0)"
    }
  },
  "required": [
    "query"
  ]
}
🟡create_keys(projectId, keys, namespace, branch)

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.

输入模式

{
  "type": "object",
  "properties": {
    "projectId": {
      "type": "number",
      "description": "ID of the project (required for PAT, auto-resolved for PAK)"
    },
    "keys": {
      "type": "array",
      "description": "List of keys to create",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Key name (e.g. 'home.welcome_message')"
          },
          "namespace": {
            "type": "string",
            "description": "Optional: namespace for the key (overrides top-level namespace)"
          },
          "translations": {
            "type": "object",
            "description": "Optional: translations as {languageTag: text} map",
            "additionalProperties": {
              "type": "string"
            }
          },
          "tags": {
            "type": "array",
            "description": "Optional: tags to assign to the key",
            "items": {
              "type": "string"
            }
          },
          "description": {
            "type": "string",
            "description": "Optional: description / developer context for the key"
          }
        },
        "required": [
          "name"
        ]
      }
    },
    "namespace": {
      "type": "string",
      "description": "Optional: default namespace for all keys (individual keys can override)"
    },
    "branch": {
      "type": "string",
      "description": "Optional: branch name"
    }
  },
  "required": [
    "keys"
  ]
}
🟢get_key(projectId, keyName, namespace, branch)

Get a translation key's metadata (name, namespace, description) by its name. To get the key's translations, use get_translations.

输入模式

{
  "type": "object",
  "properties": {
    "projectId": {
      "type": "number",
      "description": "ID of the project (required for PAT, auto-resolved for PAK)"
    },
    "keyName": {
      "type": "string",
      "description": "The translation key name"
    },
    "namespace": {
      "type": "string",
      "description": "Optional: namespace of the key"
    },
    "branch": {
      "type": "string",
      "description": "Optional: branch name"
    }
  },
  "required": [
    "keyName"
  ]
}
🟡update_key(projectId, keyName, keyNamespace, keyBranch, newName, ...)

Update an existing translation key's name, namespace, or description

输入模式

{
  "type": "object",
  "properties": {
    "projectId": {
      "type": "number",
      "description": "ID of the project (required for PAT, auto-resolved for PAK)"
    },
    "keyName": {
      "type": "string",
      "description": "Current key name (used to find the key)"
    },
    "keyNamespace": {
      "type": "string",
      "description": "Optional: current namespace of the key (used to find the key)"
    },
    "keyBranch": {
      "type": "string",
      "description": "Optional: branch name (used to find the key, for branching projects)"
    },
    "newName": {
      "type": "string",
      "description": "New key name (provide the current name if unchanged)"
    },
    "newNamespace": {
      "type": "string",
      "description": "Optional: new namespace for the key"
    },
    "newDescription": {
      "type": "string",
      "description": "Optional: new description for the key"
    }
  },
  "required": [
    "keyName",
    "newName"
  ]
}
🔴delete_keys(projectId, keyNames, namespace, branch)

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.

输入模式

{
  "type": "object",
  "properties": {
    "projectId": {
      "type": "number",
      "description": "ID of the project (required for PAT, auto-resolved for PAK)"
    },
    "keyNames": {
      "type": "array",
      "description": "Names of the keys to delete",
      "items": {
        "type": "string"
      }
    },
    "namespace": {
      "type": "string",
      "description": "Optional: namespace of the keys"
    },
    "branch": {
      "type": "string",
      "description": "Optional: branch name"
    }
  },
  "required": [
    "keyNames"
  ]
}
🟢list_languages(projectId, page)

List all languages configured for a Tolgee project. Returns up to 1000 results per page.

输入模式

{
  "type": "object",
  "properties": {
    "projectId": {
      "type": "number",
      "description": "ID of the project (required for PAT, auto-resolved for PAK)"
    },
    "page": {
      "type": "number",
      "description": "Optional: page number (0-based, default 0)"
    }
  },
  "required": []
}
🟡create_language(projectId, name, tag, originalName, flagEmoji)

Add a new language to a Tolgee project

输入模式

{
  "type": "object",
  "properties": {
    "projectId": {
      "type": "number",
      "description": "ID of the project (required for PAT, auto-resolved for PAK)"
    },
    "name": {
      "type": "string",
      "description": "Language display name (e.g. 'German')"
    },
    "tag": {
      "type": "string",
      "description": "Language tag / IETF BCP 47 code (e.g. 'de')"
    },
    "originalName": {
      "type": "string",
      "description": "Native name of the language (e.g. 'Deutsch')"
    },
    "flagEmoji": {
      "type": "string",
      "description": "Flag emoji for this language"
    }
  },
  "required": [
    "name",
    "tag"
  ]
}
🟢list_namespaces(projectId)

List all namespaces in a Tolgee project. Namespaces organize translation keys into logical groups (e.g. by feature, page, or module).

输入模式

{
  "type": "object",
  "properties": {
    "projectId": {
      "type": "number",
      "description": "ID of the project (required for PAT, auto-resolved for PAK)"
    }
  },
  "required": []
}
🟢list_projects(search, page)

List Tolgee projects accessible to the current user. Returns up to 100 results per page.

输入模式

{
  "type": "object",
  "properties": {
    "search": {
      "type": "string",
      "description": "Optional search query to filter projects by name"
    },
    "page": {
      "type": "number",
      "description": "Optional: page number (0-based, default 0)"
    }
  },
  "required": []
}
🟡create_project(name, organizationId, languages, baseLanguageTag)

Create a new Tolgee project with initial languages

输入模式

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "description": "Project name"
    },
    "organizationId": {
      "type": "number",
      "description": "ID of the organization to create the project in"
    },
    "languages": {
      "type": "array",
      "description": "Initial languages for the project",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Language name (e.g. 'English')"
          },
          "tag": {
            "type": "string",
            "description": "Language tag (e.g. 'en')"
          },
          "originalName": {
            "type": "string",
            "description": "Original name of the language"
          },
          "flagEmoji": {
            "type": "string",
            "description": "Flag emoji for the language"
          }
        },
        "required": [
          "name",
          "tag"
        ]
      }
    },
    "baseLanguageTag": {
      "type": "string",
      "description": "Tag of the base language (default: first language)"
    }
  },
  "required": [
    "name",
    "organizationId",
    "languages"
  ]
}
🟢get_project_language_statistics(projectId)

Get translation status and progress for each language in a project. Returns per-language statistics including translated, reviewed, and untranslated percentages.

输入模式

{
  "type": "object",
  "properties": {
    "projectId": {
      "type": "number",
      "description": "ID of the project (required for PAT, auto-resolved for PAK)"
    }
  },
  "required": []
}
🟢list_tags(projectId, search, page)

List all tags used in a Tolgee project. Returns up to 1000 results per page.

输入模式

{
  "type": "object",
  "properties": {
    "projectId": {
      "type": "number",
      "description": "ID of the project (required for PAT, auto-resolved for PAK)"
    },
    "search": {
      "type": "string",
      "description": "Optional: search filter for tag names"
    },
    "page": {
      "type": "number",
      "description": "Optional: page number (0-based, default 0)"
    }
  },
  "required": []
}
🟡tag_keys(projectId, keyNames, tags, namespace, branch)

Add tags to translation keys. Creates tags if they don't exist.

输入模式

{
  "type": "object",
  "properties": {
    "projectId": {
      "type": "number",
      "description": "ID of the project (required for PAT, auto-resolved for PAK)"
    },
    "keyNames": {
      "type": "array",
      "description": "Names of the keys to tag",
      "items": {
        "type": "string"
      }
    },
    "tags": {
      "type": "array",
      "description": "Names of the tags to add",
      "items": {
        "type": "string"
      }
    },
    "namespace": {
      "type": "string",
      "description": "Optional: namespace of the keys"
    },
    "branch": {
      "type": "string",
      "description": "Optional: branch name"
    }
  },
  "required": [
    "keyNames",
    "tags"
  ]
}
🟢get_translations(projectId, keyName, namespace, branch, languages)

Get translations for a specific key in a Tolgee project. Returns translations in all project languages, or only the specified languages if provided.

输入模式

{
  "type": "object",
  "properties": {
    "projectId": {
      "type": "number",
      "description": "ID of the project (required for PAT, auto-resolved for PAK)"
    },
    "keyName": {
      "type": "string",
      "description": "The translation key name"
    },
    "namespace": {
      "type": "string",
      "description": "Optional: namespace of the key"
    },
    "branch": {
      "type": "string",
      "description": "Optional: branch name"
    },
    "languages": {
      "type": "array",
      "description": "Optional: language tags to filter by (e.g. ['en', 'de']). If omitted, returns all languages.",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "keyName"
  ]
}
🟡set_translation(projectId, keyName, namespace, translations, branch)

Set or update translations for a key in one or more languages. The key must already exist — use create_keys to create it first.

输入模式

{
  "type": "object",
  "properties": {
    "projectId": {
      "type": "number",
      "description": "ID of the project (required for PAT, auto-resolved for PAK)"
    },
    "keyName": {
      "type": "string",
      "description": "The translation key name"
    },
    "namespace": {
      "type": "string",
      "description": "Optional: namespace of the key"
    },
    "translations": {
      "type": "object",
      "description": "Translations as {languageTag: text} map (e.g. {\"en\": \"Hello\", \"de\": \"Hallo\"})",
      "additionalProperties": {
        "type": "string"
      }
    },
    "branch": {
      "type": "string",
      "description": "Optional: branch name"
    }
  },
  "required": [
    "keyName",
    "translations"
  ]
}

社区

评价此服务器

证据

最近观测

已验证未记录版本22 个工具
已验证未记录版本22 个工具