hypothesi/mcp-server-tauri
A Model Context Protocol (MCP) server and plugin for Tauri v2 development
MCP Server Tauri – TauriアプリにおけるAI強化開発
何であるか – AIアシスタント(Claude、Cursor、Windsurfなど)と通信するModel Context Protocol(MCP)サーバーで、実行中のTauri v2アプリケーションに対するリアルタイムの洞察を提供します。スクリーンショット、DOMスナップショット、コンソールログ、Tauri IPCトラフィックをストリーミングし、UI自動化、IPCの検査・送信、モバイルシミュレータの一覧表示などに利用可能な21のコマンドを公開しています。
なぜ重要か – 現代のAIコーディングアシスタントは、GUIアプリについて推論するための具体的かつ最新のコンテキストが必要です。TauriのWebViewとネイティブ側からの視覚的・構造的データを供給することで、アシスタントは以下のことが可能になります:
- UIバグを自動診断
- アプリのIPCレイヤーとやり取りするコードの生成または修正
- Seleniumなどの外部ツールなしでUIを操作(クリック、入力、スクロール)
- 1つのブリッジからデスクトップ、Android、iOSの開発を同時に行う
主な機能
| カテゴリ | ツール(合計21種) |
|---|---|
| UI自動化 | スクリーンショット、要素検出、クリック/スクロール/入力、ビジュアルピッカー、DOMスナップショット、CSSスタイルクエリ、JS実行、ウィンドウ管理 |
| IPCモニタリング | Tauri IPC呼び出しのリアルタイムキャプチャ、状態の検査、カスタムイベントの発行 |
| モバイル開発 | iOSシミュレータとAndroidエミュレータの一覧表示 |
| ログ | コンソール、Android logcat、iOSログ、システムログのストリーミング |
| 設定 | /setupコマンドでRustブリッジプラグインをTauriプロジェクトに追加 |
使い方
- 前提条件のインストール – Node 20+、Rust/Cargo、Tauri CLI、(オプションで)Xcode/Android SDK。
aixCLIでAIアシスタントにMCPを追加:
この操作により、アシスタントはサーバーの起動方法とスラッシュコマンドの呼び出し方を学びます。npx -y @a1st/aix add mcp tauri --command 'npx @hypothesi/tauri-mcp-server' --user- Tauriアプリの設定 – アシスタントに
/setupを実行させることで、Cargo.tomlの変更提案とプラグイン登録を自動で行うか、手動ガイドに従います。 - サーバーの起動 –
npx @hypothesi/tauri-mcp-serverで、AIクライアントと通信するstdioベースのMCPサーバーを起動します。 - 操作 – アシスタントで
/select(ビジュアル要素ピッカー)や/fix-webview-errorsなどのコマンドを入力できます。CLIも直接呼び出せます。例:tauri-mcp webview-screenshot --file out.png。
アーキテクチャの概要
AIアシスタント ←→ MCPサーバー(Node.js) ←WebSocket→ Tauriアプリ
│ │ │
│ ├─ Manager(CLI/設定) └─ MCPブリッジプラグイン(Rust)
│ ├─ Driver(UI自動化) └─ WebView(DOM/UI)
│ └─ Monitor(ログ&IPC)
ブリッジプラグインは小さなRustライブラリをTauriバイナリに挿入し、サーバーがアシスタントに転送するIPCコマンドと状態を公開します。外部のブラウザやドライバは不要です。
迅速な開始方法
# クローン&インストール
git clone https://github.com/hypothesi/mcp-server-tauri.git
cd mcp-server-tauri
npm install
# パッケージのビルド
npm run build
# サーバーの起動(AIクライアントとのstdioパイプで待機)
npx @hypothesi/tauri-mcp-server
実際のデモを試すには、バンドルされたtest-app Tauriプロジェクトを実行できます。
誰が関心を持つべきか
- Tauriでデスクトップアプリを開発しており、AI駆動のデバッグやコード生成を希望する開発者。
- Claude、Cursor、または同様のアシスタントを使用しており、UI状態をアシスタントに見えるようにしたいチーム。
- Selenium/Playwrightを使わずに、デスクトップおよびモバイルTauriターゲットでのUI操作をスクリプト化したい人。
ライセンス – MIT(LICENSEを参照)。
本プロジェクトはhypothesi組織によって維持されており、Tauri Programmeとは公式に無関係です。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト