Frida MCP について
Frida MCP は、動的インストルメンテーションツールキット Frida の MCP stdio サーバーで、AI システムからモバイルおよびデスクトップアプリをプロセス、デバイス、スクリプトの各レベルで操作できます。公式 MCP Python SDK で構築されており、動的解析を行う利用者を想定しています。
主な機能
- 01プロセスの一覧取得、アタッチ、スポーン、再開、終了
- 02USB およびリモートデバイスの管理
- 03対話型 JavaScript REPL
- 04進捗を追跡するスクリプトインジェクション
- 05Frida のバージョンとプロセス・デバイス一覧のリソース
活用シーン
- 01Claude Desktop からのアプリケーションの動的解析
- 02AI の支援による Frida スクリプトの作成と対象プロセスへの注入
MCP 対応
本プロジェクトは MCP サーバーであり、Frida のプロセス、デバイス、REPL、スクリプトインジェクションの機能をツールとして MCP クライアントに公開し、解析ワークフロー用のリソースとプロンプトも提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Frida MCP
Frida 動的計装ツールキット用の Model Context Protocol(MCP)実装です。
概要
このパッケージは、Frida の動的計装機能を通じて AI システムがモバイルアプリやデスクトップアプリと連携できる、MCP 準拠のサーバーを提供します。公式の MCP Python SDK を使用し、AI アプリケーションとシームレスに統合できます。
デモ
https://github.com/user-attachments/assets/5dc0e8f5-5011-4cf2-be77-6a77ec960501
機能
- 公式の MCP Python SDK で構築
- MCP を通じて公開される包括的な Frida ツール:
- プロセス管理(一覧表示、アタッチ、起動、再開、終了)
- デバイス管理(USB、リモートデバイス)
- リアルタイム実行に対応した対話型 JavaScript REPL
- 進行状況の追跡に対応したスクリプトのインジェクション
- プロセスとデバイスの監視
- モデルに Frida データを提供するリソース
- Frida 分析ワークフローをガイドするプロンプト
- 長時間実行される操作の進行状況を追跡
- すべての MCP トランスポート方式を完全サポート
インストール
前提条件
- Python 3.8 以降
- pip パッケージマネージャー
- Frida 16.0.0 以降
クイックインストール
pip install frida-mcp
開発用インストール
# Clone the repository
git clone https://github.com/yourusername/frida-mcp.git
cd frida-mcp
# Install in development mode with extra tools
pip install -e ".[dev]"
Claude Desktop との連携
Frida MCP を Claude Desktop で使用するには、Claude の設定ファイルを更新する必要があります。
-
Claude Desktop の設定ファイルを確認します。
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
- macOS:
-
設定ファイルに以下を追加します。
{
"mcpServers": {
"frida": {
"command": "frida-mcp"
}
}
}
使用方法
インストール後、Claude Desktop から Frida MCP を直接使用できます。サーバーは以下の機能を提供します。
プロセス管理
- 実行中のプロセスをすべて一覧表示
- 特定のプロセスにアタッチ
- 新しいプロセスを起動
- 中断中のプロセスを再開
- プロセスを終了
デバイス管理
- 接続中のデバイス(USB、リモート)をすべて一覧表示
- デバイス情報を取得
- 特定のデバイスに接続
対話型 JavaScript REPL
- プロセスとの対話型セッションを作成
- JavaScript コードをリアルタイムで実行
- プロセスの状態とメモリを監視
- 関数をフックして呼び出しをインターセプト
console.logの出力を取得- エラーや例外を適切に処理
スクリプトのインジェクション
- カスタム JavaScript スクリプトをインジェクト
- インジェクションの進行状況を追跡
- スクリプトのエラーや例外を処理
リソース
- Frida のバージョン情報を取得
- 人が読みやすい形式でプロセス一覧にアクセス
- 人が読みやすい形式でデバイス一覧にアクセス
開発
# Clone repository
git clone https://github.com/yourusername/frida-mcp.git
cd frida-mcp
# Install development dependencies
pip install -e ".[dev]"
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。