TopGit
GitHub Repo Review

REA: MCP reverse engineering tool for AI agents

morluto/rea
RTopGit review image for morluto/rea
Review by Topgit.dev for morluto/rea, with GitHub repository stats and README context.
Quick verdict

REA is the tool I'd actually reach for when I need an AI agent to investigate an app without its source. It runs analysis locally, returns evidence-backed conclusions, and integrates with Hopper, Ghidra, or IDA Pro for deep binary work. Worth using if you want explainable, reproducible reverse engineering from an agent instead of a manual hex editor session.

Stars
โ˜… 373.5k
Forks
โ‘‚ 93.4k
Contributors
๐Ÿ‘ฅ 15
Language
TypeScript
License
MIT
Topic
โ€”
Updated
Oct 2026

What is REA?

REA is an MCP server and CLI that lets AI agents reverse engineer binaries, JavaScript apps, .NET assemblies, and websites. It connects to Hopper, Ghidra, or IDA Pro for native binary analysis, and ships a static JavaScript analyzer that needs only Node.js. Every investigation returns an Evidence bundle with conclusions and acknowledged limitations, so you know what the tool did and resolve.

Analysis capabilities and supported targets

  • โœ“MCP server connecting AI agents to reverse engineering tools and a standalone CLI
  • โœ“Static JavaScript and Electron analysis with no execution, no emulator, and only Node.js required
  • โœ“Native binary analysis via Hopper (macOS/Linux), Ghidra (Linux/macOS, experimental Windows), or IDA Pro
  • โœ“Evidence bundles that record findings, limitations, and unknowns for every investigation
  • โœ“Import older source trees as historical reference and compare Evidence bundles across runs
  • โœ“CLI supports targeted commands: open, analyze, decompile, capture-process, and snapshot reuse
  • โœ“Firmware region inspection and APK static analysis with separate tooling
  • โœ“Works from the terminal without an agent or as an integrated MCP service to supported agents
How this repository's GitHub stars have grown over time. Source: star-history.com.View the star history โ†—

Installing REA and connecting your agent

Node.js 22.x or newer and npm are prerequisites. Run `npx rea-agents setup` for guided agent registration and engine detection. The command installs the REA skill, registers the MCP server with selected agents, and can install Hopper with your approval. Ghidra and IDA Pro require separate installation before setup; the README has the version requirements. On Linux, add `~/.local/bin` to your PATH if the installer placed `rea` there. After setup, verify readiness with `rea doctor --json` before running analysis.

Investigating an app with your agent

After setup, restart your agent and describe the app or feature you want to understand. For JavaScript or Electron targets, run `rea analyze /path/to/app.asar --json` directly from the terminal without any additional engine. For native binaries, ensure Hopper, Ghidra, or IDA Pro is installed and selected with `--provider`, then use `rea analyze /path/to/binary`. Pass `--snapshot /path/to/analysis.json` to cache a successful result and reuse it on matching runs. The agent collects Evidence throughout the session and reports conclusions with their limitations when you ask.

What you can do with REA

  • โ€ขAsk your agent to explain how search works in a competitor's app, show the evidence, and build a similar feature in your own project
  • โ€ขInspect a macOS .app bundle for XPC services, login items, and privileged helpers without executing it
  • โ€ขDecompile a native binary with Ghidra and get pseudocode, function names, and observed memory ranges back with documented gaps
  • โ€ขMap a JavaScript/Electron application directory or ASAR archive to its call graph and recovered structure without running it
  • โ€ขCompare Evidence bundles from two versions of an app to find what changed in the implementation
  • โ€ขImport an older source release as a reference baseline and investigate how architecture evolved

Key advantages of using REA

  • โœ“Turns reverse engineering into an agent task rather than a manual one
  • โœ“Analysis runs locally. No binaries or data are uploaded to a hosted service
  • โœ“Evidence bundles record what was found and what could not be resolved, so findings are auditable
  • โœ“CLI-first design lets you use it standalone without an agent, then connect the same tools to your agent later
  • โœ“Connects to multiple analysis engines. You pick Hopper, Ghidra, or IDA Pro depending on what you already own

Requirements, constraints, and gaps

  • โ–ณNative binary analysis depends on a separate Hopper, Ghidra, or IDA Pro installation. Hopper costs money; Ghidra requires manual install and a JDK; IDA Pro is commercial
  • โ–ณWindows native binary support is experimental. The README describes x86-64 PE analysis on local NTFS as a P0 effort with its own guide and release boundary
  • โ–ณStatic JavaScript analysis does not execute code. It extracts structure and strings from ASAR archives and directories
  • โ–ณSetup does not install Ghidra, Java, IDA Pro, or the JADX JAR for APK analysis. Those are bring-your-own
  • โ–ณThe tool is MIT-licensed and free, but the analysis engines underneath have their own licensing costs
View on GitHub โ†—Homepage โ†—

How REA compares to standalone reverse engineering tools

Ghidra โ€” free, open-source disassembler from NSA. Advanced and scriptable, but has no native MCP interface. You write Python scripts or use the GUI manually โ†—IDA Pro โ€” commercial disassembler with a mature plugin ecosystem. REA can use an existing ida-pro-mcp installation, but the tool itself is the standard for professional binary workHopper โ€” macOS and Linux disassembler with a simpler interface than IDA. REA can install it via setup, but the license is separate

Who should use REA?

Developers using Claude Code, Cursor, Windsurf, or Codex who want an agent to investigate a closed app or understand how a competitor implements a feature. Security researchers who want a reproducible Evidence-based workflow for binary analysis. Teams that need to document how a legacy binary works without rebuilding it from scratch. Skip it if you want a pure manual disassembler without agent integration, or if you only work with open-source code.

Frequently asked questions

What agents does REA support?

The README lists Claude Code, Claude Desktop, Codex, Cursor, Gemini CLI, Windsurf, Devin, OpenCode, Antigravity, GitHub Copilot CLI, Command Code, and VS Code as supported. Setup detects and registers with those automatically. Other agents can connect via manual MCP configuration.

Does REA require Hopper, Ghidra, or IDA Pro?

Static JavaScript and Electron analysis need only Node.js and no engine. Native binary analysis requires one of the three. Hopper needs a separate license; Ghidra is free but you must install it yourself along with JDK 21; IDA Pro is commercial and uses an existing ida-pro-mcp registration.

Can REA analyze Windows applications?

Experimental Windows x64 Ghidra support is available on local NTFS for native x86 and x86-64 PE applications. The README labels it P0 and mentions a release boundary for x86-64. Native binary support on mainstream Windows remains limited compared to macOS and Linux.

Is REA free to use?

REA itself is MIT-licensed and free. However, Hopper has its own commercial license, and IDA Pro is a paid product. Ghidra is free but requires a separate JDK installation. REA does not bundle any of these engines.

What types of applications can REA reverse engineer?

JavaScript and Electron apps, .NET assemblies, websites, native binaries in PE, ELF, and Mach-O formats, APKs via JADX, and macOS .app bundles. Coverage varies by platform. Static analysis works without execution; deep native analysis needs an engine.

How does REA keep analysis local and private?

All analysis runs on your local machine. REA does not upload binaries or results to any hosted service. When using Ghidra, REA analyzes a temporary copy and removes the temporary project when the session closes.

The problem it solves

Reverse engineering is slow and manual. You spend hours in a disassembler, take notes on what you find, and start over for every new target. When you work with an AI coding agent on your project, you cannot ask it to look at a competitor's app and explain how a feature works. The agent has no way to inspect binaries, decompile code, or recover structural information from a closed application.

Related repositories

Source & attribution

Repository: https://github.com/morluto/rea

GitHub data ยท last synced Oct 8, 2026Reviewed by Henry
โ† Back to TopGit

Is rea worth your time?

ChatGPT, Claude and Perplexity can all read this page. Ask one of them what it makes of rea.

GitHub