
REAとは?AIエージェントにアプリを解析させるMCPツール
REAとは、AIエージェントにリバースエンジニアリングをさせるためのMCPサーバーです。リバースエンジニアリングとは、完成したソフトウェアを調べてどう動作しているかを明らかにすることです。MCP(Model Context Protocol)は、AIエージェントが外部のツールを共通の手順で呼び出すための規格を指します。
REAはGitHubのmorluto/reaで公開されていて、コードのライセンスはMITです。 対応するエージェントは、Claude Code・Codex・Cursor・Gemini CLI・Grok Buildなどです。READMEは、ローカルのMCPサーバーに対応するエージェントなら使うことができるとしています。
REAを使った解析の流れ
| 順番 | 担当 | すること |
|---|---|---|
| 1 | ユーザー | 解析したいアプリと機能をプロンプトに書く |
| 2 | AIエージェント(Claude Codeなど) | MCP経由でREAを呼び出す |
| 3 | REA | Ghidra・IDA・Hopperや内蔵の静的解析で対象を調べる |
| 4 | REA | 解析した結果を、根拠と分からないことを添えてエージェントへ届ける |
| 5 | AIエージェント | 仕組みを回答する。指示すれば似た機能を実装してテストする |
REAの利用でソースコードの無いアプリの仕組みが分かる
REAを登録したAIエージェントは、ソースコードが公開されていないアプリでも、機能がどう動作しているかを回答します。 エージェントがMCP経由でREAを呼び出すと、REAが解析する対象のアプリについて、関係するコードを追跡する仕組みです。REAは解析した結果を、その根拠と一緒にエージェントへ届けます。
根拠として出てくるのは、疑似コード(機械語を人が理解しやすい書き方に近づけたコード)や関数の呼び出し関係などです。結果には結論ごとに分からなかったことも添えられるので、ユーザーは説明のどこまでが裏づけのある内容かを判断できます。解析した機能をもとに、ご自身のプロジェクト用の似た機能を作るところまでエージェントに任せることもできます。
Your agent calls REA through MCP to inspect the target and trace relevant code./REA returns findings with their evidence./Analysis runs locally, and results include the evidence and limitations behind each conclusion. — How REA works の項と冒頭の説明より公式情報を見る →
解析そのものはGhidra・IDA・Hopperで実行
REAは、解析エンジンを自前で持つツールではありません。 exeなどのネイティブバイナリを深く解析するときは、ユーザーのPCにインストールされたGhidra・IDA・Hopperを呼び出します。
JavaScriptや.NETのアプリは、REAに含まれる静的解析(アプリを実行せずにファイルを調べる方法)で調べることができます。REAの役割は、Ghidraなどの解析ツールをまとめてAIエージェントから1つのMCPサーバーとして呼び出せるようにすることです。
REA connects your agent to tools for inspecting native binaries, JavaScript and Electron apps, .NET assemblies, and websites. — 冒頭の説明より公式情報を見る →
リリースから半年でGitHubのスターは約25万
REAのGitHubリポジトリは2026年4月14日に作られ、10月15日時点でスターは25万1,958です。 フォークは6万3,287件あります。npmのパッケージrea-agentsは2026年7月12日に最初のバージョンが公開され、10月15日時点の最新バージョンは6.5.0です。

REAで解析できるもの
REAで解析できる対象は、exeなどのネイティブバイナリからAndroidアプリやWebサイトまで、23種類あります。READMEの表には対象ごとに分かることと必要なものが記載されており、主な対象は次のとおりです。
REAで解析できる主な対象と必要なもの
| 対象 | 分かること | 必要なもの |
|---|---|---|
| ネイティブバイナリ | 疑似コード・アセンブリ・文字列・呼び出し関係 | Ghidra・IDA・Hopperのどれか |
| JavaScript・Electron | モジュール・import・IPC | Node.jsとnpm |
| .NETのアプリ | メタデータ・CIL命令 | 不要(静的解析のみ) |
| Androidアプリ(APK) | マニフェスト・クラス・逆コンパイルしたメソッド | JADXとJDK |
| Webサイト | ページの構造・スクリプト・通信 | Chrome系のブラウザ |
| 保存した通信記録 | リクエスト・レスポンスの中身 | HARかFiddlerのSAZ |
SQLiteのデータベースやファームウェアの解析、実行中プロセスの観測にも対応しています。 対象によってはLinuxやmacOSでしか動作しないものもあるため、READMEの対象一覧で対応するOSをチェックしてから使います。

exeなどのネイティブバイナリ
バイナリとは、プログラムを機械語に変換したファイルで、代表的なものにWindowsのexeがあります。 人がそのまま読むのは難しいため、REAはGhidra・IDA・Hopperのどれかを呼び出して、疑似コード・アセンブリ・文字列・関数の呼び出しと参照を取り出します。
Go言語で作られたバイナリなら、Goをインストールしなくても埋め込まれたコンパイラのバージョンやモジュールを調べることができます。Rustのバイナリも、埋め込まれたクレート(Rustのライブラリ)の名前やバージョン、依存関係を取り出せます。
Pseudocode, assembly, strings, symbols, calls and references/no Go installation required — 対象の表の Native binaries と Go binaries の行より公式情報を見る →
JavaScript・Electron・.NETのアプリ
JavaScriptで作られたアプリと、Web技術で作るデスクトップアプリのElectronは、解析エンジンなしで調べることができます。また、REAはモジュールの構成やimport、画面側と本体のあいだのやり取り(IPC)を解析します。 Linuxで使う場合は、procps互換のpsコマンドも必要です。
.NETで作られたアプリも、追加のツールなしでメタデータやCIL命令(.NETが使う中間言語)を解析することができます。JavaScriptと.NETの静的な解析は、どちらもアプリを実行せずにファイルを調べる方法です。
Modules, imports, source maps, routes, IPC and native add-on relationships/None (static only) — 対象の表の JavaScript / Electron と .NET assemblies の行より公式情報を見る →
Androidアプリ・Webサイト・保存した通信記録
AndroidアプリはAPKファイルを解析し、マニフェスト・クラス・逆コンパイルしたメソッドを取り出します。 APKの解析にはJADXとJDKが必要です。Androidスマートフォンそのものも、adbという接続ツール経由で解析できます。
Webサイトは、Chrome系のブラウザでページの構造・スクリプト・通信を観測し、プロンプトで求めればスクリーンショットも撮ります。ブラウザの開発者ツールで保存したHARファイルや、FiddlerのSAZファイルのような通信記録も、リクエストとレスポンスを調べる対象になります。
Manifest declarations, classes, decompiled methods and references/Page structure, scripts, network observations and requested screenshots — 対象の表の Android APKs と Websites の行より公式情報を見る →
REAの導入方法(Claude Codeの場合)
REAは、ターミナルでnpx rea-agents setupを実行するだけで、Claude Codeに登録できます。 必要なのはNode.jsとnpmで、exeなどを調べる場合はGhidra・IDA・Hopperのどれかも用意します。

Node.jsとnpmを用意
REAを動作させるには、Node.jsとnpmが必要です。Node.jsは、次のどれかのバージョンをインストールしておきます。
- 22系なら22.19以上
- 24系なら24.11以上
- 26以上
ターミナルでnode -vを実行すると、インストールされているNode.jsのバージョンが表示されます。 条件より古い場合は、Node.jsの公式サイトから新しいバージョンをインストールします。
REA requires Node.js 22.x (>=22.19), 24.x (>=24.11), or 26+, plus npm. — 必要な環境の説明より公式情報を見る →
npxの1行でエージェントに登録
ターミナルで次のコマンドを実行すると、REAの登録が始まります。 途中で使うエージェント(ここではClaude Code)を指定し、表示された変更案を見て承認します。
npx rea-agents setup
setupが登録するのは、REAのMCPサーバーとエージェント向けの作業手順(スキル)です。既存の設定ファイルは書き換える前にバックアップされるので、元に戻すこともできます。登録が終わったら、Claude Codeを再起動します。
REAを日常的に使うなら、npm install --global rea-agentsでreaコマンドをインストールしておくと便利です。不具合の修正が頻繁に出るため、READMEはこまめな更新を勧めています。更新するときはrea updateを、npxで使っている場合はnpx rea-agents@latest setupを実行します。
Setup registers REA with your agent and installs matching workflow instructions. — 冒頭の説明より公式情報を見る →
exeの解析にはGhidra・IDA・Hopperが必要
exeなどのネイティブバイナリを調べるには、Ghidra・IDA・Hopperのどれかが必要です。GhidraとIDAは、PCにインストールされているものをREAが使います。Hopperは、setupの途中で承認すればインストールできます。
IDA ProとHopperは商用の製品で、正規のライセンスで使う必要があります。 READMEによると、WindowsでGhidraを呼び出す解析はまだ実験的な対応とのこと。
Native analysis can use an existing Hopper, Ghidra, or IDA installation; setup can optionally install Hopper with approval./experimental Windows Ghidra support — 冒頭の説明と解析ツールの選び方の項より公式情報を見る →
REAの使い方:解析したい機能をプロンプトに書く
REAを登録したら、Claude Codeのプロンプトに解析したいアプリと機能を書くだけで、解析が始まります。 Ghidraなどの操作を覚える必要はなく、どの解析ツールを呼び出すかはエージェントが判断します。

アプリ名と仕組みを知りたい動作を書く
プロンプトには対象のアプリ名と、仕組みを知りたい動作を具体的に書きます。READMEには「メモアプリの検索がどう動作しているかを調べて、根拠を見せて、私のプロジェクトにも同じような機能を作って」というプロンプトの例があります。
メモアプリの部分を、ご自身が解析したいアプリと機能に置き換えてお使いいただけます。Claude Codeで使う場合は、たとえば次のように書きます。
REAを使って、メモアプリの検索がどう動いているかを調べてください。結論ごとに根拠も書いてください。
ターミナルから直接使うこともできます。 Electronのアプリならnpx -y rea-agents@latest analyze-javascript-application <アプリのフォルダ> --jsonのように、アプリのフォルダやASARファイルを指定して解析します。
Understand how search works in the Notes app, show me the evidence, and build a similar feature for my project./Replace Notes with your target app and the feature you want to understand. — Ask your agent の項より公式情報を見る →
AIの回答には根拠と分からない部分も含まれる
AIの回答には、REAが解析した結果にもとづく結論ごとの根拠と、分からなかったことが含まれます。 エージェントはREAの結果をもとに追加で解析したり動作を説明したりし、プロンプトで求めれば似た機能を実装してテストまで行います。
公式サイトの事例は、Windowsの電卓で「200 + 10%」が220になる理由を解析したものです。解析の手順は次の3段階で、最後は電卓のDLL(共有ライブラリ)の命令から理由を明らかにしています。
- 分岐を解読する
- 呼び出しを追跡する
- 計算の規則を復元する
Why does Calculator give 220 for/Decode branches/Trace calls/Recover the rule — 電卓の事例の項より公式情報を見る →
公式の事例:ブロック崩しの計算をC言語で再現
READMEにある事例の1つは、ブロック崩しのゲームDX-Ballで効果音を左右に振り分ける計算を、C言語で再現したものです。効果音の呼び出しから、位置を左右の振り分けに変換する関数までを追って命令を解析し、不完全な疑似コードをC言語に書き直しています。
再現したコードは、元のx86の実行結果と3,205件のケースで一致し、コンパイルした関数の63バイトもすべて同じになりました。 ほかにも、NotionのElectronアプリでクリップボード機能の経路を追った事例や、PC-98のゲームで弾の角度の計算を復元した事例があります。

The reconstruction passes 3,205 original-x86 cases and reproduces all 63 compiled function bytes. — Showcases の DX-Ball の項より公式情報を見る →
REAとGhidraMCP・ida-pro-mcpの違い
AIエージェントに解析ツールを操作させるMCPサーバーは、REAが最初ではありません。 Ghidra用のGhidraMCPは2025年3月23日に、IDA Pro用のida-pro-mcpは2025年3月25日に、GitHubでリポジトリが作られています。
REAとGhidraMCP・ida-pro-mcpの比較
| 比較する内容 | REA | GhidraMCP | ida-pro-mcp |
|---|---|---|---|
| 連携する解析ツール | Ghidra・IDA・Hopperと内蔵の静的解析 | Ghidra | IDA Pro |
| 主な対象 | バイナリ・JavaScript・.NET・Android・Webサイトなど | Ghidraで開くバイナリ | IDA Proで開くバイナリ |
| リポジトリの作成日 | 2026年4月14日 | 2025年3月23日 | 2025年3月25日 |
GhidraMCPなどは解析ツールごとに別々に導入
GhidraMCPとida-pro-mcpは、1つの解析ツールと1つのMCPサーバーを連携する構成です。 GhidraとIDA Proの両方をAIに使わせたい場合は、MCPサーバーを2つ導入して、それぞれ設定することになります。


MCP Server for Ghidra — リポジトリの説明より公式情報を見る →
AI-powered reverse engineering assistant that bridges IDA Pro with language models through MCP. — リポジトリの説明より公式情報を見る →
REAは対象に合わせて解析ツールを使い分ける
REAは、複数の解析ツールと内蔵の静的解析を、1つのMCPサーバーにまとめています。 エージェントから見ると、対象がexeでもElectronのアプリでもAndroidアプリでも、REAを呼び出すだけで十分です。
調べる対象がネイティブバイナリだけで、使う解析ツールも1つに定まっているなら、GhidraMCPやida-pro-mcpでも十分です。JavaScriptのアプリやAndroidアプリのように種類の異なる対象も調べるなら、REAを1回登録するほうが手間がかかりません。

One MCP for reverse engineering across binaries, applications, and runtime behavior. — README の副題より公式情報を見る →
I recommend using the Official Hex-Rays IDA MCP Server instead! — README 冒頭の Important の項より公式情報を見る →
リバースエンジニアリングをAIに任せる前の注意点
REAを使う前に、調べてよいアプリかどうかを著作権法と利用規約の両方でチェックしておく必要があります。 REAの免責事項も、許可を得ることや法令・利用規約を守ることはユーザーの責任だとしています。

著作権法と利用規約を先にチェック
文化庁は2019年10月24日の資料で、プログラムの解析を目的とするリバースエンジニアリングについて見解を出しています。 資料では、解析は機能を楽しむ利用ではないとして、著作権法第30条の4の「享受」を目的としない利用に「該当するものと考えられる」との見解です。
ただし利用規約でリバースエンジニアリングが禁止されている場合は、著作権法とは別に、規約違反になる恐れがあります。文化庁の資料によると、解析専用のパソコンで実行することや、過程と結果をレポートに記録することが、機能を楽しむ目的ではないことの裏づけになります。
REAの免責事項も、リバースエンジニアリングは国や地域、調べるソフトウェアのライセンスによって制限されることがあるとしています。ソフトウェアが公開されていることやファイルを持っていることだけでは、すべての操作が許されるわけではありません。業務で使うかどうかを判断する際は、弁護士などの専門家に相談してください。

法第30条の4の「著作物に表現された思想又は感情」の「享受」を目的としない利用に該当するものと考えられる。/規約との関係については注意する必要がある。 — 問12の回答より公式情報を見る →
may be restricted in your jurisdiction or by the license of the software you analyze. — 免責事項の冒頭より公式情報を見る →
商用の解析ツールは正規のライセンスで利用
IDA Pro・Hopper・JEBなどの商用の解析ツールは、ユーザーが正規に購入したライセンスで使います。また、REAは商用ツールのライセンスやキー、アクティベーションを提供しません。
クラック版のソフトウェアや盗まれたキーで使うことも、REAは認めていません。体験版やデモ版を使う場合も、それぞれのメーカーの利用条件に従います。
provides no commercial-tool license, key, or activation entitlement./Permitted trials and demos remain subject to vendor terms. — 商用ツールの項より公式情報を見る →
解析結果はAIモデルの提供元へ送信される
REAの解析はお使いのPC上で行われますが、解析結果はAIエージェントを通じてAIモデルの提供元へ送信されます。送信された情報の保存期間や利用目的は、AIモデルを提供する会社ごとのデータ方針で定められています。社外秘のアプリや、個人情報を含む通信記録を調べる場合は、利用しているAIモデルのデータ方針を事前にチェックしてください。
実行時の観測や通信の記録はアプリの状態やファイル、アカウントに影響することがあるため、信頼できない対象は専用の環境で調べます。 信頼できないアプリやWebサイトを調べさせると、AIエージェント自体が乗っ取りの攻撃を受ける恐れもあります。
REA analyzes targets locally. Your agent receives the tool results, and its model provider has its own data policy. — FAQ の Does REA upload my app? の項より公式情報を見る →
REAは公式の配布元からだけダウンロード
名前が似たリポジトリやREADMEをコピーしたページだからといって、REAの公式版とは限りません。 公式の配布元は次の3つだけです。
- GitHubのmorluto/rea
- 公式サイトのrea.tools
- npmのrea-agents
REAは公開から半年でスターが約25万に達した注目のツールで、名前の似た偽物が出てもおかしくありません。導入するときは、コマンドのパッケージ名がrea-agentsになっているかをチェックします。

A similar repository name or copied README does not establish that a download is official. — 公式の配布元の項より公式情報を見る →
調べてよいアプリを判断してからREAを利用
REAは、リバースエンジニアリングをAIエージェントに任せるためのMCPサーバーで、npx rea-agents setupの1行でClaude Codeなどに登録できます。 exeなどの解析はGhidra・IDA・Hopperで行い、JavaScriptや.NETはREAが追加のツールなしで解析することができます。
使い方は、解析したいアプリと機能をプロンプトに書くだけです。AIの回答には、根拠と分からなかったことが含まれます。ただし調べてよいアプリかどうかは、著作権法と利用規約、商用ツールのライセンスで先に判断する必要があります。
最初はご自身で作ったアプリや調べる許可を得たアプリで試すと、REAの回答がどのように出るかを安全に体験できます。REAがエージェントとの接続に使うMCPも、仕様の更新が継続しています。
FAQ
- REAは無料で使うことができますか?
- REAのコードはMITライセンスで公開されていて、無料で使うことができます。ただし、exeなどの解析で呼び出すIDA ProやHopperは商用の製品です。REAはこれらのライセンスやキーを提供しないため、使う場合はユーザーが正規に購入する必要があります。
- WindowsでもREAを使うことができますか?
- 使うことができます。公式サイトの導入手順には、WindowsのPowerShellで実行するコマンドがあります。ただし、Ghidraを呼び出す解析のWindows対応は、READMEで実験的という位置づけです。
- REAで解析した機能を、ご自身の製品に使ってよいですか?
- REAの免責事項のとおり、解析結果や復元したコードを手にしても、元のプログラムへの権利はユーザーに移りません。対象のライセンスと利用規約で許されているかを先にチェックし、自社製品に組み込むかどうかを判断する際は弁護士などの専門家に相談してください。



