# Tolgee

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

- name: io.github.tolgee/tolgee
- version: 1.0.0
- connection class: R2 (oauth_consent_once)
- trust: 86/100
- quality: 86/100 (good)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/io.github.tolgee%2Ftolgee
- tools: https://api.protogrid.dev/v1/servers/io.github.tolgee%2Ftolgee/tools

**An agent can connect after a one-time OAuth consent by a human.** Remote endpoint behind OAuth 2. Tokens stay with the agent; the registry only exposes the authorization metadata.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "tolgee": {
      "type": "http",
      "url": "https://app.tolgee.io/mcp/developer",
      "headers": {
        "X-API-Key": "${X_API_KEY}"
      }
    }
  }
}
```

Placeholders to fill: `${X_API_KEY}`.

## Trust

- hygiene: 100
- liveness: 100
- freshness: 45
- provenance: 90
- drivers: +repository +namespace-matches-repo +website +reachable +uptime-100% -stale-194d
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 86/100 (good)

### protocol: n/a (weight 25)

- n/a `protocol.modern`, `protocol.stateless`, `protocol.transport`, `protocol.list_ttl`: no remote answered a protocol handshake (not probed yet, unreachable, or local-only)

### authorization: 100 (weight 15)

- pass `auth.prm`: Protected Resource Metadata (RFC 9728) published
- pass `auth.as_metadata`: authorization server metadata reachable
- pass `auth.cimd`: Client ID Metadata Documents supported
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: 71 (weight 30)

- pass `tools.descriptions`: every tool has a description
- pass `tools.description_length`: descriptions are concise
- pass `tools.schemas`: every tool has an object input schema
- fail `tools.annotations`: no tool declares readOnlyHint or destructiveHint, so clients cannot tell safe calls from risky ones
- fail `tools.directory_hints`: no tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: create_branch (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); list_namespaces (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); get_key (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); …
- pass `tools.token_cost`: about 3,180 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump

### stability: 100 (weight 15)

- pass `stability.changes`: no tool changes in 30 days
- pass `stability.rug_pull`: no tool changed its meaning under the same name

### dependencies: n/a (weight 15)

- n/a `deps.known_vulns`, `deps.mcp_sdk_version`, `deps.resolvable`: no npm or PyPI package

- tools: 22, about 3,180 tokens to load them all
- tool set hash: db40e997adce23a4ca2adaef8f4961cc
- badge: [![protogrid quality](https://protogrid.dev/badge/io.github.tolgee/tolgee.svg)](https://protogrid.dev/servers/io.github.tolgee/tolgee)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

_No tool definition changes recorded._

## Remotes

- https://app.tolgee.io/mcp/developer (streamable-http, auth oauth2, reachable true, uptime30d 1)

## Packages

_none_

## Tools (22)

- `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).
- `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.
- `create_language`: Add a new language to a Tolgee project
- `create_project`: Create a new Tolgee project with initial languages
- `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.
- `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.
- `get_batch_job_status`: Get the status of a batch job (e.g. machine translation) by its ID. Use to poll for completion.
- `get_key`: Get a translation key's metadata (name, namespace, description) by its name. To get the key's translations, use get_translations.
- `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.
- `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.
- `list_branches`: List branches in a Tolgee project. Returns up to 100 results per page. Only available for projects with branching enabled (enterprise feature).
- `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.
- `list_languages`: List all languages configured for a Tolgee project. Returns up to 1000 results per page.
- `list_namespaces`: List all namespaces in a Tolgee project. Namespaces organize translation keys into logical groups (e.g. by feature, page, or module).
- `list_projects`: List Tolgee projects accessible to the current user. Returns up to 100 results per page.
- `list_tags`: List all tags used in a Tolgee project. Returns up to 1000 results per page.
- `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.
- `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.
- `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.
- `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.
- `tag_keys`: Add tags to translation keys. Creates tags if they don't exist.
- `update_key`: Update an existing translation key's name, namespace, or description
