Tauri MCP Server について
Tauri MCP Server は、Tauri v2 アプリケーション向けの MCP サーバーです。Claude や Cursor などの AI アシスタントが、デスクトップアプリやモバイルアプリの構築、テスト、デバッグを行えるようにします。Tauri で開発する開発者を対象とし、UI 自動化、IPC 監視、ログ参照の機能を提供します。コンパニオンの コマンドライン ツール tauri-mcp も提供されています。
主な機能
- 01スクリーンショット、クリック、入力による WebView UI 自動化
- 02CSS セレクター、XPath、テキストによる要素検索
- 03Tauri IPC 呼び出しのリアルタイム取得
- 04コンソール、logcat、iOS ログの読み取り
- 05Android デバイスと iOS シミュレーターの一覧表示
- 06コンパニオンの tauri-mcp コマンドライン ツール
活用シーン
- 01AI アシスタントによる Tauri アプリ画面の自動テスト
- 02Tauri のフロントエンドとバックエンド間の IPC 呼び出しのデバッグ
- 03トラブルシューティング時のモバイル端末とログの確認
MCP 対応
MCP サーバーとして、Tauri アプリの自動化、IPC、ログに関する 20 のツールを MCP クライアントに公開します。アプリには Rust 側の MCP Bridge プラグインの組み込みが必要で、サーバーは WebSocket を介してこれと通信します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
24掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| args | array | いいえ | コマンドに渡す追加引数 |
| command | string | はい | 任意の Tauri CLI コマンド(例:"init"、"dev"、"build"、"android dev"、"migrate"、"plugin add" など) |
| cwd | string | はい | プロジェクトディレクトリ |
| timeout | number | いいえ | コマンドのタイムアウト(ミリ秒、デフォルト:180000) |
詳細
@hypothesi/tauri-mcp-server
Claude、Cursor、Windsurf などの AI アシスタントが Tauri® v2 アプリケーションをビルド、テスト、デバッグできるようにする Model Context Protocol(MCP)サーバーです。
📖 ドキュメント全文
機能
| カテゴリ | 機能 |
|---|---|
| 🎯 UI 自動化 | スクリーンショット、クリック、テキスト入力、スクロール、要素の検索、ビジュアル要素ピッカー |
| 🔍 IPC モニタリング | Tauri IPC 呼び出しをリアルタイムでキャプチャして検査 |
| 📱 モバイル開発 | Android エミュレーターと iOS シミュレーターを一覧表示 |
| 📋 ログ | コンソール、Android logcat、iOS、システムログをストリーミング |
クイックスタート
1. Tauri アプリに MCP Bridge プラグインを追加する
cargo add tauri-plugin-mcp-bridge
// src-tauri/src/main.rs
fn main() {
let mut builder = tauri::Builder::default();
#[cfg(debug_assertions)]
{
builder = builder.plugin(tauri_plugin_mcp_bridge::init());
}
builder
.run(tauri::generate_context!())
.expect("error while running tauri application");
}
注: npm パッケージ
@hypothesi/tauri-plugin-mcp-bridgeは任意です。アプリのフロントエンドコードからプラグインを呼び出す場合にのみ必要です。MCP サーバーは WebSocket 経由で Rust プラグインと直接通信します。
2. AI アシスタントを設定する
aix を使用して、AI アシスタントにサーバーを追加します。
npx -y @a1st/aix add mcp tauri --command 'npx @hypothesi/tauri-mcp-server' --user
対応クライアント:claude-code、cursor、windsurf、vscode、cline、roo-cline、claude、zed、goose、warp、codex
ターミナル CLI
シェルから同じツールを直接呼び出す場合は、付属の CLI パッケージをインストールしてください。
npm install -g @hypothesi/tauri-mcp-cli
tauri-mcp driver-session start --port 9223
tauri-mcp driver-session status --json
CLI は、バックグラウンドで基盤となる MCP サーバーを起動したままにするため、driver_session などの状態を保持するコマンドを別々の実行間で使用できます。
複数アプリのサポート
MCP サーバーは、複数の Tauri アプリに同時に接続できます。各アプリは固有のポートで実行され、最後に接続したアプリが「デフォルト」アプリになります。
主な機能:
- 異なるポートで複数のアプリに接続
appIdentifierが指定されていない場合に使用するデフォルトアプリ- ポート番号またはバンドル ID を使って特定のアプリを指定
- 個別のセッションまたはすべてのセッションを一度に停止
使用例:
// Connect to first app
await driver_session({ action: "start", port: 9223 })
// Connect to second app
await driver_session({ action: "start", port: 9224 })
// Check status - shows both apps with default indicator
await driver_session({ action: "status" })
// Use default app (most recent - port 9224)
await webview_screenshot()
// Target specific app by port
await webview_screenshot({ appIdentifier: 9223 })
// Stop specific app
await driver_session({ action: "stop", appIdentifier: 9223 })
// Stop all apps
await driver_session({ action: "stop" })
利用可能なツール(合計 20 個)
セットアップと設定
| ツール | 説明 |
|---|---|
get_setup_instructions | MCP Bridge プラグインのセットアップ/更新手順を取得 |
UI 自動化
| ツール | 説明 |
|---|---|
driver_session | 自動化セッションの開始/停止/状態確認 |
webview_find_element | CSS セレクター、XPath、テキスト、または ref ID で要素を検索 |
read_logs | コンソール、Android、iOS、またはシステムログを読み取る |
webview_interact | クリック、スクロール、スワイプ、フォーカス、長押し |
webview_screenshot | WebView のスクリーンショットを撮影(デフォルトは JPEG) |
webview_keyboard | テキストの入力またはキーイベントの送信 |
webview_wait_for | 要素、テキスト、またはイベントを待機 |
webview_get_styles | 計算済み CSS スタイルを取得 |
webview_execute_js | WebView 内で JavaScript を実行 |
webview_dom_snapshot | 構造化された DOM スナップショットを取得(アクセシビリティまたは構造) |
webview_select_element | ビジュアル要素ピッカー。ユーザーが要素をクリックすると、メタデータとスクリーンショットを返す |
webview_get_pointed_element | ユーザーが Alt+Shift+クリックした要素のメタデータを取得 |
manage_window | ウィンドウの一覧表示、情報の取得、またはサイズ変更 |
IPC とプラグイン
| ツール | 説明 |
|---|---|
ipc_execute_command | Tauri IPC コマンドを実行 |
ipc_get_backend_state | アプリのメタデータと状態を取得 |
ipc_monitor | IPC モニタリングの開始/停止 |
ipc_get_captured | キャプチャした IPC トラフィックを取得 |
ipc_emit_event | カスタムイベントを送信 |
モバイル開発
| ツール | 説明 |
|---|---|
list_devices | Android デバイスと iOS シミュレーターを一覧表示 |
リンク
ライセンス
MIT © hypothesi
商標に関するお知らせ
TAURI® は、Commons Conservancy 内の The Tauri Programme の登録商標です。https://tauri.app/
このプロジェクトは、Commons Conservancy 内の The Tauri Programme との提携、承認、または後援を受けていません。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。