Кратко
Локализация в Crowdin на crowdin.com и в Crowdin Enterprise через API v2: проекты и прогресс по языкам, файлы, исходные строки, переводы и утверждения, комментарии и замечания, задачи, отчёты, сборки и экспорт переводов, памяти переводов, глоссарии и участники проектов.
Пошаговая настройка
Подключи Crowdin к Claude, ChatGPT или Copilot за 2 минуты
Начни бесплатный пробный период в AnythingMCP Cloud, подключи Crowdin в пошаговой настройке и добавь свой MCP URL в своего ИИ-ассистента. Без кода и без собственного сервера.
Без банковской карты · 7 дней пробного периода · Есть вариант self-host
Попробуй спросить
Примеры промптов для Crowdin
Кликни по промпту — он скопируется. Вставь в Claude, ChatGPT, Cursor, Gemini, Copilot или OpenClaw и запусти через этот коннектор.
Claude — это AI, он может ошибаться. Проверяйте ответы.
💡 Без установки? Используйте cloud.anythingmcp.com напрямую. Войдите, нажмите Connectors → Crowdin, вставьте учётные данные, создайте MCP API key, и готово. Без Docker, без
git clone, без локального сервера.
Crowdin
Локализация в Crowdin на crowdin.com и в Crowdin Enterprise через API v2: проекты и прогресс по языкам, файлы, исходные строки, переводы и утверждения, комментарии и замечания, задачи, отчёты, сборки и экспорт переводов, памяти переводов, глоссарии и участники проектов.
Настройка
Настройка занимает около 2 минут. Нужен аккаунт на crowdin.com или в Crowdin Enterprise.
- Создайте personal access token. На crowdin.com: Account Settings > API > New Token. В Crowdin Enterprise: profile > Settings > API > New Token внутри вашей организации.
- Выберите нужные scopes: Projects, Source files and strings, Translations, Tasks, Reports, Translation memory, Glossaries. Scopes только для чтения дают настройку только для чтения. Скопируйте токен: он показывается один раз.
- Вставьте его в
CROWDIN_PERSONAL_ACCESS_TOKEN; он передаётся какAuthorization: Bearer <token>. CROWDIN_API_HOST:api.crowdin.comдля crowdin.com или<organization>.api.crowdin.comдля Enterprise, где организация берётся из вашего URL Enterprisehttps://<organization>.crowdin.com.- Установите коннектор и запустите
crowdin_get_authenticated_user: он покажет пользователя, которому принадлежит токен, и подтвердит токен и хост.
Собственный MCP-сервер Crowdin: Crowdin также предоставляет официальный MCP-сервер (https://mcp.crowdin.com/v2/mcp, в Enterprise https://<organization>.mcp.crowdin.com/v2/mcp, с personal access token как Bearer). Этот коннектор работает с API v2 напрямую.
Что он читает:
- Проекты с исходным и целевыми языками, типом (на основе файлов или строк) и настройками вроде workflow, проверок QA, машинного перевода и памяти переводов; прогресс по языкам для проекта или одного файла; все поддерживаемые языки с их id в Crowdin.
- Ветки, каталоги и исходные файлы, а также короткоживущую ссылку на исходную версию файла (
crowdin_download_file). - Исходные строки с ключом, текстом, контекстом, максимальной длиной, метками и формами множественного числа, с фильтрами по файлу, ветке, каталогу, метке, задаче, совпадению текста или выражению CroQL.
- Переводы (предложения) на один язык за раз с автором и оценкой, а также утверждения с тем, кто утвердил, и временем.
- Комментарии и замечания к строкам, например нерешённые запросы контекста.
- Задачи с типом, статусом, языком, исполнителями, прогрессом и сроком; участников проекта с ролью и языками.
- Памяти переводов и их сегменты, поиск совпадений (
crowdin_search_tm), чтобы узнать, как фразу переводили раньше, глоссарии и их термины.
Что он записывает:
crowdin_add_stringдобавляет исходную строку в файл (проекты на основе файлов).crowdin_edit_stringменяет её через JSON Patch по/text,/identifier,/context,/isHidden,/maxLengthили/labelIds;update_optionопределяет, что будет с существующими переводами при изменении текста.crowdin_add_translationдобавляет предложение;crowdin_approve_translationутверждает его, чтобы оно попало в экспортируемые файлы (нужны права корректора для этого языка).crowdin_add_commentкомментирует строку или сообщает о замечании: вопрос, ошибка перевода или исходного текста, запрос контекста.crowdin_create_taskсоздаёт задачу на перевод или вычитку файлов (или строк в проектах на основе строк) на одном языке с исполнителями и сроком; в Enterprise вместоtypeпередаётсяworkflow_step_id.crowdin_edit_taskменяет её через JSON Patch, например/statusнаdone.crowdin_add_tm_segmentдобавляет в память переводов одно и то же предложение на нескольких языках;crowdin_add_glossary_termдобавляет термин, при желании как перевод существующего термина или в концепт.
Отчёты и переведённые файлы: отчёты готовятся в фоне. crowdin_generate_report возвращает data.identifier; ИИ опрашивает crowdin_get_report_status, пока status не станет finished, и затем получает ссылку через crowdin_download_report. crowdin_export_project_translation сразу экспортирует один язык одним файлом. crowdin_build_project_translations собирает все файлы и языки в zip: ИИ опрашивает crowdin_get_build_status, затем вызывает crowdin_download_build. Ссылки на скачивание быстро истекают (expireIn), поэтому ИИ передаёт их вам, а не хранит. Эти вызовы это POST, но контент они не меняют.
При установке ничего не отключено: инструментов удаления нет.
Идентификаторы и форматы: id проектов, файлов, строк, переводов, задач и пользователей это числа; идентификаторы отчётов это строки. Языки задаются id Crowdin, например de, fr, es-ES, pt-BR или zh-CN. Время в ISO 8601 со смещением. Инструменты PATCH принимают списки JSON Patch: [{"op": "replace", "path": "/status", "value": "done"}]. Списки приходят как {"data": [{"data": {...}}, ...], "pagination": {"offset": 0, "limit": 25}}, отдельные элементы как {"data": {...}}. Прогресс считается в words и phrases, а translationProgress и approvalProgress указаны в процентах.
Постраничная выдача: limit (по умолчанию 25, максимум 500) и offset. Если на странице limit элементов, ИИ запрашивает следующую с offset + limit.
Ограничения: 20 одновременных запросов на аккаунт с учётом всех его токенов, на crowdin.com и в Enterprise; 429 означает, что нужно подождать.
Частые ошибки: 401 означает неверный или истёкший токен либо неверный хост. 403 означает токен без нужного scope или аккаунт без прав в проекте. 404 означает неизвестный id. 400 и 422 это ошибки валидации с названием поля.
Коннектор не удаляет проекты, файлы, строки и переводы и не загружает исходные файлы.
Предварительные требования: CROWDIN_PERSONAL_ACCESS_TOKEN, CROWDIN_API_HOST
Локальная установка коннектора
curl -fsSL https://raw.githubusercontent.com/HelpCode-ai/anythingmcp/main/docker-compose.quickstart.yml -o docker-compose.yml
printf 'JWT_SECRET=%s\nENCRYPTION_KEY=%s\n' "$(openssl rand -hex 32)" "$(openssl rand -hex 32)" > .env
docker compose up -d
Откройте http://localhost:3000/connectors/store, выберите Crowdin и введите переменные, перечисленные в Предварительных требованиях.
Доступные инструменты
| Tool | What it does |
|---|---|
crowdin_get_authenticated_user | The user the token belongs to: id, username, email, name and time zone |
crowdin_list_projects | Projects the token can reach, with id, name, identifier, source language, target language ids, type (file-based or string-based) and last… |
crowdin_get_project | One project with its settings: source language, target languages, workflow, QA checks, machine translation and translation memory settings |
crowdin_get_project_progress | Translation and approval progress per target language: words and phrases total, translated, approved, and the percentages |
crowdin_get_file_progress | Translation and approval progress of one file per target language |
crowdin_list_supported_languages | Every language Crowdin supports with its id (used everywhere else), name, locale, ISO codes and plural categories |
crowdin_list_branches | Branches of a project (file-based projects) with id, name, title and export pattern |
crowdin_list_directories | Directories of a project with id, name, path, branch and parent directory |
crowdin_list_files | Source files of a project with id, name, path, type, status, branch, directory and revision |
crowdin_get_file | One source file with its path, type, parser settings, export options, revision and timestamps |
crowdin_download_file | A short-lived download link (data.url, data.expireIn) for the source version of a file |
crowdin_list_strings | Source strings of a project with id, identifier (key), text, context, file, max length, labels, plural forms and hidden flag |
crowdin_get_string | One source string with identifier, text, context, plural forms, labels, max length and file |
crowdin_add_string | Add a source string to a file (file-based projects) with its text, key and context for translators |
crowdin_edit_string | Change a source string with JSON Patch operations on /text, /identifier, /context, /isHidden, /maxLength or /labelIds. update_option says… |
crowdin_list_translations | All translations (suggestions) of strings into one language, with text, author, rating, plural category and time |
crowdin_get_translation | One translation with its text, string, language, author, rating and provider |
crowdin_add_translation | Add a translation (suggestion) for a string in one language |
crowdin_list_approvals | Approvals of translations, filtered by string, file, language, label or translation, with the approver and time |
crowdin_approve_translation | Approve a translation, making it the one that goes into the exported files |
crowdin_list_comments | Comments and issues on strings: text, type (comment or issue), issue type and status, language, author and time |
crowdin_add_comment | Comment on a string, or report an issue (a question, a translation or source mistake, a request for context) |
crowdin_list_tasks | Tasks of a project with title, type (translate or proofread), status, language, assignees, progress, deadline and words count |
crowdin_get_task | One task with its files or strings, language, assignees, progress, deadline, cost estimate and status |
crowdin_create_task | Create a translate or proofread task for files (or, in string-based projects, strings) in one language, assigned to people, with a deadline |
crowdin_edit_task | Change a task with JSON Patch operations, e.g. its status (todo, in_progress, done, closed), title, description, deadline or assignees |
crowdin_generate_report | Start a project report: costs estimate, translation costs, top members, contribution raw data, translator accuracy, QA issues, translation… |
crowdin_get_report_status | Progress of a report being generated: status (created, inProgress, finished, failed) and progress percent |
crowdin_download_report | A short-lived download link (data.url) for a finished report |
crowdin_build_project_translations | Start a build of the translated files of a project (all or some languages, optionally a branch) as a zip |
crowdin_get_build_status | Status and progress of a translations build (created, inProgress, finished, failed, canceled) |
crowdin_download_build | A short-lived download link (data.url) for the zip of a finished build |
crowdin_export_project_translation | Export the translations of one language right away, as one file in a chosen format (e.g. xliff, json, android, macosx), for all or some… |
crowdin_list_tms | Translation memories with id, name, languages, segments count and the projects using them |
crowdin_get_tm | One translation memory with its languages, segments count and default project |
crowdin_list_tm_segments | Segments of a translation memory, each with its records (language id and text) |
crowdin_search_tm | Concordance search: find how phrases were translated before in the translation memories of a project |
crowdin_add_tm_segment | Add a segment to a translation memory: the same sentence in several languages |
crowdin_list_glossaries | Glossaries with id, name, languages, terms count and the projects using them |
crowdin_get_glossary | One glossary with its languages, terms count and default project |
crowdin_list_glossary_terms | Terms of a glossary with text, language, description, part of speech, status, type, note and concept id (terms of one concept are… |
crowdin_add_glossary_term | Add a term to a glossary, optionally as the translation of an existing term (translation_of_term_id) or into a concept |
crowdin_list_members | Members of a project with id, username, full name, role (manager, proofreader, translator, ...) and their languages |
crowdin_get_member | One project member with role, permissions per language and join date |
Примеры запросов
- «Насколько продвинулись переводы нашего проекта приложения на немецкий и японский, переведено и утверждено?»
- «У каких строк в файле checkout есть открытые замечания с запросом контекста?»
- «Как мы раньше переводили «Sign in» на французский? Поищи в памяти переводов.»
- «Создай задачу на вычитку испанского перевода файла онбординга со сроком в пятницу и назначь её Марии.»
- «Собери переведённые файлы для всех языков только с утверждёнными переводами и дай ссылку на zip.»
Следующие шаги
Это руководство помогло?