概要
API v2 による crowdin.com と Crowdin Enterprise のローカライズ:プロジェクトと言語ごとの進捗、ファイル、原文の文字列、翻訳と承認、コメントと課題、タスク、レポート、翻訳のビルドとエクスポート、翻訳メモリ、用語集、プロジェクトメンバーを扱えます。
ガイド付きセットアップ
Crowdin を Claude、ChatGPT、Copilot に 2 分で接続
AnythingMCP Cloud の無料トライアルを始め、ガイド付きセットアップで Crowdin を接続して、MCP URL を AI アシスタントに追加します。コードもサーバーの運用も不要です。
クレジットカード不要 · 7日間の試用 · セルフホストの選択肢あり
こう聞いてみよう
Crowdin のサンプルプロンプト
プロンプトをクリックでコピー。Claude / ChatGPT / Cursor / Gemini / Copilot / OpenClaw に貼り付けて、このコネクターで実行できます。
Claude は AI のため誤ることがあります。回答をご確認ください。
💡 インストール不要? cloud.anythingmcp.com を直接利用してください。 サインインし、Connectors → Crowdin をクリック、認証情報を貼り付け、MCP API キーを発行すれば完了です。Docker も
git cloneもローカルサーバーも不要。
Crowdin
API v2 による crowdin.com と Crowdin Enterprise のローカライズ:プロジェクトと言語ごとの進捗、ファイル、原文の文字列、翻訳と承認、コメントと課題、タスク、レポート、翻訳のビルドとエクスポート、翻訳メモリ、用語集、プロジェクトメンバーを扱えます。
セットアップ
設定は約 2 分です。crowdin.com または Crowdin Enterprise のアカウントが必要です。
- パーソナルアクセストークンを作成します。crowdin.com では Account Settings > API > New Token、Crowdin Enterprise では組織内の profile > Settings > API > New Token です。
- 必要なスコープを選びます: Projects、Source files and strings、Translations、Tasks、Reports、Translation memory、Glossaries。読み取り専用のスコープにすれば読み取り専用の構成になります。トークンは一度しか表示されないのでコピーしておきます。
- それを
CROWDIN_PERSONAL_ACCESS_TOKENに貼り付けます。Authorization: Bearer <token>として送信されます。 CROWDIN_API_HOST: crowdin.com ならapi.crowdin.com、Enterprise なら<organization>.api.crowdin.comです。organization は Enterprise の URLhttps://<organization>.crowdin.comの部分です。- コネクタをインストールし、
crowdin_get_authenticated_userを実行します。トークンの所有ユーザーが表示され、トークンとホストが確認できます。
Crowdin 公式の MCP サーバー: Crowdin は公式の MCP サーバー(https://mcp.crowdin.com/v2/mcp、Enterprise は https://<organization>.mcp.crowdin.com/v2/mcp、パーソナルアクセストークンを Bearer として使用)も提供しています。このコネクタは API v2 を直接使います。
読み取る内容:
- 原文言語と翻訳先言語、タイプ(ファイルベースまたは文字列ベース)、ワークフロー、QA チェック、機械翻訳、翻訳メモリなどの設定付きのプロジェクト。プロジェクト全体または 1 ファイルの言語ごとの進捗。Crowdin ID 付きの対応言語すべて。
- ブランチ、ディレクトリ、原文ファイル。ファイルの原文版への短期間有効なリンク(
crowdin_download_file)。 - キー、テキスト、コンテキスト、最大長、ラベル、複数形付きの原文の文字列。ファイル、ブランチ、ディレクトリ、ラベル、タスク、テキスト一致、CroQL 式で絞り込めます。
- 1 言語ずつの翻訳(提案)と作成者、評価。承認者と日時付きの承認。
- 文字列へのコメントと課題。たとえば未解決のコンテキスト依頼など。
- タイプ、ステータス、言語、担当者、進捗、期限付きのタスク。役割と言語付きのプロジェクトメンバー。
- 翻訳メモリとそのセグメント、あるフレーズが以前どう訳されたかを調べるコンコーダンス検索(
crowdin_search_tm)、用語集とその用語。
書き込む内容:
crowdin_add_stringはファイルに原文の文字列を追加します(ファイルベースのプロジェクト)。crowdin_edit_stringは/text、/identifier、/context、/isHidden、/maxLength、/labelIdsへの JSON Patch で変更し、update_optionでテキスト変更時に既存の翻訳をどう扱うかを決めます。crowdin_add_translationは提案を追加し、crowdin_approve_translationはそれを承認してエクスポートされるファイルに入れます(その言語の校正者権限が必要です)。crowdin_add_commentは文字列にコメントするか、課題を報告します。質問、翻訳や原文の誤り、コンテキストの依頼などです。crowdin_create_taskは、1 つの言語でファイル(文字列ベースのプロジェクトでは文字列)に対する翻訳または校正のタスクを、担当者と期限付きで作成します。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 を返し、AI は status が finished になるまで crowdin_get_report_status を確認してから、crowdin_download_report でリンクを取得します。crowdin_export_project_translation は 1 言語をすぐに 1 ファイルとしてエクスポートします。crowdin_build_project_translations はすべてのファイルと言語を zip にビルドし、AI は crowdin_get_build_status を確認してから crowdin_download_build を呼び出します。ダウンロードリンクは短時間で失効する(expireIn)ため、AI は保存せずにそのまま渡します。これらの呼び出しは POST ですが、コンテンツは変更しません。
インストール時に無効になっているツールはありません: 削除ツールはありません。
ID と形式: プロジェクト、ファイル、文字列、翻訳、タスク、ユーザーの ID は数値で、レポートの識別子は文字列です。言語は de、fr、es-ES、pt-BR、zh-CN などの Crowdin ID を使います。日時はオフセット付きの 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 件が入っていれば、AI は offset + limit で次のページを取得します。
制限: crowdin.com でも Enterprise でも、アカウントごとに(すべてのトークンを合わせて)同時リクエストは 20 件までです。429 は待つ合図です。
よくあるエラー: 401 はトークンの誤りか期限切れ、またはホストの誤りです。403 はスコープのないトークン、またはプロジェクトでの権限がないアカウントです。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」をフランス語でどう訳した?翻訳メモリを検索して。」
- 「オンボーディングファイルのスペイン語訳について、金曜締め切りの校正タスクを作成して Maria に割り当てて。」
- 「承認済みの翻訳だけで全言語の翻訳ファイルをビルドして、zip のリンクをちょうだい。」
次のステップ
このガイドは役に立ちましたか?