Local Whisper について
Local Whisperは、実行中のコンピューターで音声や動画を文字起こしするMCPサーバーです。Claude Desktop、Claude Code、またはコンピューター上で実行するclaude.aiチャット向けで、GPUまたはCPUを使い、録音をクラウドに送らずにテキスト、字幕、タイムスタンプ付きデータを出力します。
主な機能
- 01音声と動画をローカルで文字起こし
- 02WAV、Ogg Opus、MP3とffmpeg対応形式を処理
- 03GPUを使用し、利用できない場合はCPUに切り替え
- 04テキスト、SRT、タイムスタンプ付きJSONを出力
- 05ファイルアクセスを許可フォルダーに制限
活用シーン
- 01ボイスメモや会議の録音を文字起こし
- 02動画ファイルから字幕を作成
- 03録音をクラウド処理せずに文字起こし
- 04モデルの状態確認やダウンロード済みモデルの削除
MCP 対応
Claude DesktopやClaude CodeなどのMCPクライアントに `transcribe`、`status`、`delete_models` ツールを提供します。文字起こしはサーバーを実行するコンピューター上で行われます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Claude 向けのプライベートなローカル音声文字起こしです。Local Whisper は、Whisper を使ってお使いのコンピューター上で音声ファイルを文字起こしする Model Context Protocol(MCP)サーバーです。そのため、音声メモ、会議、講義のデータが外部に送信されることはありません。Claude Desktop、Claude Code、お使いのコンピューター上で実行する claude.ai のチャットで動作します。
https://github.com/user-attachments/assets/dc71b178-b60d-457e-8f33-732696671c02
特長
- 追加のソフトウェアなしで、WAV、Ogg Opus(WhatsApp や Telegram の音声メモ)、MP3 ファイルを文字起こしします。ffmpeg が
PATHにある場合は、M4A と FLAC も読み込みます。 - ffmpeg がインストールされている場合、MP4 や WebM などの動画も文字起こしします。サーバーは音声トラックを取り出し、映像は無視します。音声を先に抽出することなく、録画した会議や授業をテキストや字幕に変換できます。
- Windows と Linux では Vulkan、Apple Silicon では Metal を通じて GPU で動作し、自動的に CPU に切り替えます。デフォルトのモデル
large-v3-turbo-q8_0を使用した場合、NVIDIA GeForce RTX 3080 では音声1分を約1秒で文字起こしします。 - モデルは必要になった初回にダウンロードされ、Hugging Face が公開しているハッシュと照合されます。5分間使用されないと、GPU メモリを含むメモリを解放します。
- プレーンテキスト、SubRip 字幕(SRT)、またはタイムスタンプ付きの JSON セグメントを返します。
- ノイズの少ない録音では音声活動検出を使って無音部分をスキップし、タイムスタンプの正確さを保ちます。背景ノイズによって小さな声が聞き取れなくなる可能性がある場合は、すべてを文字起こしします。
- プラットフォームごとにネイティブ実行ファイル1つで提供されます。Python や .NET ランタイムをインストールする必要はありません。
インストール
以下の表からお使いのシステムを探し、Claude を使用するアプリ用のファイルをダウンロードしてください。 各リンクから最新リリースのファイルをダウンロードできます。
| システム | Claude Desktop | Claude Code |
|---|---|---|
| Windows(x64) | ダウンロード(.mcpb) | ダウンロード(.zip) |
| Apple Silicon 搭載の macOS | ダウンロード(.mcpb) | ダウンロード(.tar.gz) |
| Intel プロセッサ搭載の macOS | ダウンロード(.mcpb) | ダウンロード(.tar.gz) |
| Linux(x64) | 利用できません | ダウンロード(.tar.gz) |
| Linux(arm64) | 利用できません | ダウンロード(.tar.gz) |
| すべてのシステム:スキル(任意) | ダウンロード(.zip) | プラグインをインストール |
スキルは、サーバーをいつ、どのように使うかを Claude に伝えます。詳しくは スキルをご覧ください。
お使いの Mac を確認するには、Apple メニュー > この Mac についてを選択します。Apple M2 など、Apple で始まる チップの項目があれば Apple Silicon 搭載モデルです。Intel と表示された プロセッサの項目があれば Intel プロセッサ搭載モデルです。
ダウンロードを検証するには、リリースページにある SHA256SUMS.txt の値と SHA-256 ハッシュを照合してください。
Claude Desktop
Local Whisper を Claude Desktop に追加するには、拡張機能をインストールします。
- インストールの表から、お使いのシステム用の拡張機能をダウンロードします。
- ファイルを開きます。Claude Desktop に拡張機能の詳細が表示されます。
- インストールをクリックします。
- 任意:拡張機能の設定で、音声ファイルがあるフォルダー、モデル、言語を選択します。
Claude Code
Local Whisper を Claude Code に追加するには、実行ファイルを MCP サーバーとして登録します。
-
インストールの表から、お使いのシステム用のアーカイブをダウンロードし、保管しておくフォルダーに展開します。
-
次のコマンドを実行します。
claude mcp add local-whisper -- PATH_TO_EXECUTABLEPATH_TO_EXECUTABLEを、展開したフォルダー内にあるlocal-whisper-mcp(Windows の場合はlocal-whisper-mcp.exe)のフルパスに置き換えます。
設定を変更するには、環境変数としてコマンドに追加します。例:
claude mcp add local-whisper -e LOCAL_WHISPER_LANGUAGE=es -- PATH_TO_EXECUTABLE
お使いのコンピューター上で claude.ai のチャットを利用する
claude.ai のチャットは、コンピューター上の Claude デスクトップアプリを経由してサーバーに接続します。
- Claude Desktopの説明に従って、Claude Desktop に拡張機能をインストールします。
- claude.ai でチャットを開始したら、メッセージボックスの + をクリックし、デバイスを選択して、タスクの実行先でお使いのコンピューターを選びます。コンピューターの電源が入っており、Claude デスクトップアプリが開いている必要があります。
- 音声ファイルを添付し、Claude に文字起こしを依頼します。Claude はファイルをサーバーの受信フォルダーにコピーし、サーバーは文字起こしの後にコピーを削除します。
スキル
スキルは任意ですが、インストールをおすすめします。スキルがなくてもサーバーは動作しますが、スキルがあると、Claude にサーバーを使うタイミング、チャットの添付ファイルを渡す方法、サーバーに接続できない場合の案内方法を教えられます。スキルがない場合、自分のコンピューター上で動作していない claude.ai のチャットからサーバーを認識できず、接続方法を案内する代わりに、音声をクラウド上で文字起こししようとすることがあります。
スキルを claude.ai と Claude Desktop に追加するには、local-whisper-skill.zip をダウンロードし、Settings > Capabilities の Skills からアップロードします。
スキルを Claude Code に追加するには、orihuelaconde マーケットプレイスから local-whisper プラグインをインストールします。まず、マーケットプレイスを追加します。
claude plugin marketplace add OrihuelaConde/claude-plugins
次に、プラグインをインストールします。
claude plugin install local-whisper@orihuelaconde
このプラグインにはスキルのみが含まれます。Claude Code の説明に従って、サーバーを登録してください。
使い方
自分の言葉で Claude に依頼してください。たとえば、次のように頼めます。
- 「今添付したボイスメモを文字起こししてください。」
- 「
C:\Users\me\Recordings\meeting.m4aを文字起こしして、決定事項を要約してください。」 - 「
~/Videos/class.mp4のスペイン語字幕を作成してください。」
動画ファイルは音声ファイルよりもはるかに大きくなります。動画がすでにコンピューター上にある場合は、チャットに添付するのではなく、Claude にファイルのパスを伝えてください。そうすれば、チャットを経由してファイルを送受信する必要がありません。
サーバーには次の 3 つのツールがあります。
| ツール | 説明 |
|---|---|
transcribe | 音声ファイルを文字起こしします。パラメーターは path(絶対パス)、model、language、format(txt、srt、または json)、および vad です。 |
status | 使用中のデバイス、インストール済みモデルとそのサイズ、進行中のダウンロード、受信フォルダー、許可されたフォルダー、およびログフォルダーを報告します。 |
delete_models | ディスク容量を確保するために、ダウンロード済みのモデルを削除します。このツールの説明では、最初に Claude から確認するよう指示しています。 |
設定
Claude Desktop 拡張機能では、そのページに設定が表示されます。Claude Code やその他の MCP クライアントでは、環境変数として設定してください。
| 変数 | デフォルト | 説明 |
|---|---|---|
LOCAL_WHISPER_MODEL | large-v3-turbo-q8_0 | whisper.cpp のモデル一覧にある任意のモデルを、名前(base)またはファイル名(ggml-base.bin)で指定します。 |
LOCAL_WHISPER_LANGUAGE | auto | en や es などの言語コード、または言語を自動検出する場合は auto を指定します。 |
LOCAL_WHISPER_USE_GPU | true | false にすると、CPU のみで実行します。 |
LOCAL_WHISPER_RUNTIME | auto | auto、cpu、または vulkan を指定します。ランタイムを読み込めない場合は、CPU にフォールバックします。 |
LOCAL_WHISPER_IDLE_MINUTES | 5 | モデルをメモリから解放するまでの未使用時間(分)です。0 にすると、文字起こしのたびに解放します。 |
LOCAL_WHISPER_ALLOWED_ROOTS | ユーザーフォルダー | サーバーが音声を読み取れるフォルダーです。Windows では ;、それ以外では : で区切って指定します。--allowed-roots DIR... オプションを指定すると、この設定は置き換えられます。 |
LOCAL_WHISPER_INBOX_DIR | ~/.local-whisper-mcp/inbox | クライアントがコンピューターにコピーする音声の保存先フォルダーです。サーバーは文字起こしの後、このフォルダー内のファイルを削除します。 |
LOCAL_WHISPER_MODELS_DIR | ~/.local-whisper-mcp/models | ダウンロードしたモデルの保存先フォルダーです。 |
LOCAL_WHISPER_AUTO_DOWNLOAD | true | false にすると、不足しているモデルをサーバーがダウンロードしなくなります。 |
LOCAL_WHISPER_THREADS | 最大 8 | 文字起こしに使用する CPU スレッド数です。 |
LOCAL_WHISPER_FFMPEG | 自動検出 | ffmpeg 実行ファイルのフルパスです。指定しない場合、サーバーは PATH と winget、Scoop、Chocolatey、Homebrew、MacPorts の各フォルダーを検索します。 |
初回使用前にモデルをダウンロードするには、たとえば接続速度が遅い場合、実行ファイルを download コマンドとともに実行します。
local-whisper-mcp download large-v3-turbo-q8_0
プライバシー
- 文字起こしはお使いのコンピューター上で実行されます。サーバーがインターネットに接続するのは、Hugging Face からモデルをダウンロードするときだけです。
LOCAL_WHISPER_AUTO_DOWNLOAD=falseにすると、これを無効にできます。 - サーバーが音声を読み取るのは、許可されたフォルダーと受信フォルダー内だけです。また、削除するのは受信フォルダー内のファイルだけです。文字起こし後に各ファイルを削除し、1 日を超えて残っているファイルも削除します。
~/.local-whisper-mcp/logsのログには、処理時間、設定、エラーが記録されますが、文字起こしの内容は記録されません。通常のログにはファイル名は記載されませんが、エラーログには失敗したファイルのパスが含まれる場合があります。そのため、ログを共有する前に内容を確認してください。サーバーは 1 週間分のログを保持します。
必要条件
- Windows 10 以降(x64)、macOS(Apple Silicon または Intel)、または Linux(x64 または arm64)。
- x64 の場合、AVX2 対応のプロセッサー。
- GPU を使用する場合:Windows および Linux x64 では Vulkan ドライバー、Metal を使用する場合は Apple Silicon が必要です。どちらもない場合、サーバーは CPU を使用します。
- 任意:WAV、Ogg Opus、MP3 以外の形式を使う場合は ffmpeg。
リリースファイルには署名がありません。macOS で Gatekeeper によりアーカイブ内の実行ファイルがブロックされる場合は、展開したフォルダーを FOLDER に指定して、xattr -dr com.apple.quarantine FOLDER を実行してください。
トラブルシューティング
- 最初の文字起こしに数分かかります。 サーバーがモデルをダウンロードしています。デフォルトのモデルは約 900 MB です。Claude では
statusツールを使ってダウンロードの進行状況を確認できます。 - Apple Silicon 搭載 Mac での最初の文字起こしには、約 15 秒余分にかかります。 macOS はコンピューターごとに GPU シェーダーを一度コンパイルします。
- 録音の一部が欠けています。 Claude に
vadをfalseに設定して、もう一度文字起こしするよう依頼してください。 - ほかの問題が発生します。
~/.local-whisper-mcp/logsにある今日のログファイルを確認してください。
ソースからビルドする
.NET 10 SDK と、お使いのシステム用の Native AOT の前提条件 が必要です。テストを実行し、サーバーを発行して、Claude Desktop 拡張機能をパッケージ化するには、リポジトリのルートから次のコマンドを実行してください。
dotnet test --project tests/LocalWhisperMcp.Tests
dotnet publish src/LocalWhisperMcp -c Release -r win-x64 -o out
pwsh packaging/mcpb/pack.ps1 -Rid win-x64 -PublishDir out
win-x64 を、お使いのシステムのランタイム識別子で置き換えてください:osx-arm64、osx-x64、linux-x64、または linux-arm64。Native AOT でビルドできるのは、実行中のシステム用のみです。
設計上の注記
サーバーの設計の根拠となる測定結果は、リポジトリにあります。
- 概念実証の結果:サーバーに Whisper.net を使用した C# Native AOT 実行ファイルを採用した理由と、デフォルトのモデル、GPU バックエンド、音声デコーダーを選んだ方法について説明しています。
- 代替エンジンとしての Gemma 4:参照用の文字起こしがある公開テストセットで、Gemma 4 E2B、E4B、12B と Whisper を比較しています。エンジンは引き続き Whisper のみです。Whisper のほうがエラーが少なく、GPU のないコンピューターでは Whisper の
smallモデルが Gemma 4 と同等の性能を発揮します。
ライセンス
Local Whisper はMIT ライセンスの下で公開されています。独自のライセンスが適用されるコンポーネントも含まれており、THIRD-PARTY-NOTICES.txt に記載されています。
Local Whisper は独立したプロジェクトであり、Anthropic または OpenAI との提携関係や、両社からの推奨はありません。Claude は Anthropic, PBC の商標です。このプロジェクトでは、対応するアプリを示す目的でのみ、その名称を使用しています。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。