mcpField
R
rosetta-mcp

rosetta-mcp

ローカル
github.com/ewalid生産性214 週間前に更新

rosetta-mcp について

Rosetta は Claude を使った Excel 翻訳ツールで、CLI、Web アプリ、REST API、Claude 向け MCP サーバーを提供します。表計算ファイルの翻訳に使え、数式、書式、グラフ、レイアウトを保ちます。元ファイルは変更しません。

主な機能

  1. 01Excel セル内のテキストを翻訳
  2. 02数式、書式、レイアウトを維持
  3. 03シート選択と分野コンテキストの指定
  4. 04Web アプリと REST API を提供
  5. 05翻訳の進捗をリアルタイム表示

活用シーン

  1. 01価格表を複数言語に翻訳
  2. 02専門用語を含む医療フォームを翻訳
  3. 03指定したワークシートのみ翻訳
  4. 04ブラウザーで翻訳し進捗を確認

MCP 対応

Claude Desktop 向けのローカル MCP サーバーを提供し、ローカルファイルパスを使って Excel ファイルを翻訳できます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"ewalid-rosetta": {
"command": "npx",
"args": [
"-y",
"@ewalid/rosetta-mcp"
],
"env": {
"ANTHROPIC_API_KEY": "<ANTHROPIC_API_KEY>"
}
}
}
}
起動コマンドnpx -y @ewalid/rosetta-mcp
設定が必要な環境変数
ANTHROPIC_API_KEYシークレットYour Anthropic API key from console.anthropic.com. Required to perform translations using Claude AI.

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@ewalid/rosetta-mcp0.1.1

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Rosetta

PyPI version Python 3.11+ License: MIT

AI を活用した Excel 翻訳 CLI です。書式、数式、データの整合性を維持したまま Excel ファイルを翻訳します。

機能

Rosetta は Claude AI を使って Excel ファイル内のすべてのテキストを翻訳し、以下を損なうことはありません。

  • 数式と計算
  • 書式(フォント、色、罫線)
  • 結合セルとレイアウト
  • グラフと画像
  • ドロップダウンメニュー
  • リッチテキスト(セル内の太字、斜体)

前提条件

Anthropic の Claude API キーが必要です。

  1. console.anthropic.com にアクセスします
  2. アカウントを作成します(またはサインインします)
  3. API Keys に移動し、新しいキーを作成します
  4. キーをコピーします(sk-ant-... で始まります)

注記:API の利用料金は Anthropic によって請求されます。現在の料金については、anthropic.com/pricing をご覧ください。一般的な Excel ファイルの翻訳にかかる費用は数セントです。

インストール

PyPI からインストールします。

pip install rosetta-xl

次に、API キーを設定します。

# Linux/macOS
export ANTHROPIC_API_KEY=sk-ant-your-key-here

# Windows (Command Prompt)
set ANTHROPIC_API_KEY=sk-ant-your-key-here

# Windows (PowerShell)
$env:ANTHROPIC_API_KEY="sk-ant-your-key-here"

または、作業ディレクトリに .env ファイルを作成します。

ANTHROPIC_API_KEY=sk-ant-your-key-here

使い方

# Translate to French
rosetta input.xlsx -t french

# Translate to Spanish with custom output name
rosetta input.xlsx -t spanish -o translated.xlsx

# Specify source language (auto-detected by default)
rosetta input.xlsx -s english -t german

# Translate only specific sheets
rosetta input.xlsx -t french --sheets "Sheet1" --sheets "Data"

# Add context for better translations (e.g., domain-specific terms)
rosetta input.xlsx -t french -c "Medical terminology document"

オプション

オプション短縮形説明
--target-lang-t翻訳先の言語(必須)
--source-lang-s翻訳元の言語(省略時は自動検出)
--output-o出力ファイルのパス(デフォルト:input_translated.xlsx)
--sheets翻訳するシート(繰り返し指定可能。デフォルト:すべて)
--context-c精度向上のための分野コンテキスト
--batch-size-bAPI 呼び出しごとのセル数(デフォルト:50)

例

価格表を複数の言語に翻訳する:

rosetta prices.xlsx -t french -o prices_fr.xlsx
rosetta prices.xlsx -t german -o prices_de.xlsx
rosetta prices.xlsx -t spanish -o prices_es.xlsx

コンテキストを指定して医療フォームを翻訳する:

rosetta patient_form.xlsx -t french -c "Medical intake form with clinical terminology"

「Questions」シートのみを翻訳する:

rosetta survey.xlsx -t japanese --sheets "Questions"

トラブルシューティング

「ANTHROPIC_API_KEY not set」

  • キーをエクスポートしたことを確認してください:export ANTHROPIC_API_KEY=sk-ant-...
  • または、キーを記載した .env ファイルを作成してください

「Invalid API key」

  • キーが sk-ant- で始まっていることを確認してください
  • console.anthropic.com からキー全体をコピーしたことを確認してください

「Rate limit exceeded」

  • Anthropic のレート制限に達しました。1 分待ってから再度お試しください
  • または、バッチサイズを小さくしてください:rosetta input.xlsx -t french -b 20

仕組み

  1. Excel ファイルからすべてのテキストセルを抽出します
  2. 翻訳のためにテキストを Claude AI に送信します(バッチ処理)
  3. すべての書式を維持しながら、翻訳をセルに書き戻します
  4. 翻訳済みファイルを保存します

元のファイルが変更されることはありません。

Web アプリと API

Rosetta には、ブラウザー上で翻訳できる Web アプリケーションと REST API も含まれています。

API サーバーの起動
# Install with uv (recommended)
uv sync

# Start the server
uv run uvicorn rosetta.api:app --reload

# Or with pip
pip install -e .
uvicorn rosetta.api:app --reload

API はデフォルトで http://localhost:8000 で実行されます。

フロントエンドの起動
cd frontend
npm install
npm run dev

フロントエンドは http://localhost:5173 で実行され、API に接続します。

API エンドポイント
エンドポイントメソッド説明
/translatePOSTExcel ファイルを翻訳します(ファイルを返します)
/translate-streamPOSTSSE を使ってリアルタイムで進捗を表示しながら翻訳します
/estimatePOSTセル数と費用の見積もりを取得します
/sheetsPOSTファイル内のシート名を一覧表示します
/countPOST翻訳可能なセル数をカウントします
/previewPOST翻訳対象となるセルをプレビューします
/healthGETヘルスチェック
リアルタイムの進捗

/translate-stream エンドポイントは Server-Sent Events(SSE)を使って、翻訳の進捗をリアルタイムで配信します。SSE をサポートしていないネットワーク(企業のプロキシなど)では、フロントエンドが標準の /translate エンドポイントに自動的にフォールバックします。

MCP 連携

Rosetta には、Claude Desktop と Claude Web 向けの MCP(Model Context Protocol)サーバーが含まれています。

Claude Desktop の場合(ローカル)

Claude Desktop の設定(~/Library/Application Support/Claude/claude_desktop_config.json)に追加します:

{
  "mcpServers": {
    "rosetta": {
      "command": "uv",
      "args": ["run", "--directory", "/path/to/rosetta", "python", "-m", "rosetta.api.mcp"],
      "env": {
        "ANTHROPIC_API_KEY": "your-key-here"
      }
    }
  }
}

使い方: 最適な結果を得るには、ローカルのファイルパスを使用してください。

Translate ~/Downloads/report.xlsx to French
Claude Web の場合(ブラウザー)

注: Claude.ai は、現時点(2026 年 1 月)ではブラウザーでのカスタム MCP サーバーをサポートしていません。

現在の推奨事項: ブラウザーで翻訳するには、ウェブアプリを使用してください。

詳しい手順については、MCP_USAGE.mdを参照してください。

要件

  • Python 3.11+
  • Anthropic API キー

ライセンス

MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。