Unofficial guide. Not affiliated with Meta.

Last updated:

Reverse Engineer Anything (REA): The Complete Guide

Reverse Engineer Anything (REA) is an open-source MCP server and command-line tool that lets AI coding agents such as Claude Code, Cursor and Codex inspect native binaries, Electron apps and websites without their source code. You ask a question in plain words, REA drives the analysis tools on your machine, and your agent gets back code, references and evidence it can explain or build on.

Short version: REA is free (MIT) and installs with one command, npx rea-agents setup. Static JavaScript, Electron and .NET analysis work out of the box; native binaries need Hopper, Ghidra or IDA as the engine underneath. It is a layer that lets your agent use those tools, not a replacement for them.

What Is Reverse Engineer Anything (REA)?

REA, short for Reverse Engineer Anything, is a project by morluto on GitHub. Its tagline is “One MCP for reverse engineering across binaries, applications, and runtime behavior”. In practice it gives your coding agent a set of reverse engineering tools, so you can point it at an app you see a feature in and ask how that feature works. The current npm release, rea-agents 6.4.0, is MIT licensed, and analysis runs locally on your machine.

Source: GitHub: morluto/rea (README)

Source: rea.tools: official site

How REA AI Works: Agents, MCP, Ghidra and Hopper

REA itself is not a disassembler. It is an MCP (Model Context Protocol) server that sits between your agent and the real analysis engines. When you ask Claude Code or Cursor about a binary, the agent calls REA’s tools; REA starts Hopper, Ghidra or IDA (or its own JavaScript analyzer, or a Chrome-family browser for websites), runs the analysis and returns structured results. The terminal command rea uses the same workflows.

  1. You ask your agent (Claude Code, Cursor, Codex) a question about an app or file on your machine.
  2. The agent calls REA’s tools through MCP.
  3. REA runs the right engine locally: Hopper, Ghidra or IDA for native code, its JS analyzer for Electron, a browser for websites.
  4. REA returns code, references, evidence and unknowns.
  5. The agent explains the behavior, or writes and tests a version for your project.

Your agent’s model provider still sees the tool results it receives, under its own data policy. REA itself does not upload your target.

Source: GitHub: morluto/rea (README)

Source: REA docs: installation and setup

REA GitHub Install Guide: Requirements and Commands

  1. Run npx rea-agents setup.
  2. Pick your agents in the list, review the exact config paths it will change, and approve. Existing configs are backed up first.
  3. Restart your agent so it loads the new MCP server.
  4. Optionally install the rea command globally for terminal use, and run rea update now and then: the project ships fixes often.
# 1) Register REA with your agents (Claude Code, Codex, Cursor, Gemini CLI ...)
npx rea-agents setup

# 2) Optional: install the rea command for regular terminal use
npm install --global rea-agents
rea --help

# 3) Keep it current (global install / npx setup)
rea update
npx rea-agents@latest setup

Commands copied from the README of github.com/morluto/rea. Use bunx rea-agents@latest in place of npx rea-agents@latest if you use Bun.

Source: GitHub: morluto/rea (README)

Source: REA docs: installation and setup

Source: npm: rea-agents

Using REA with Claude Code, Cursor and Codex

Setup registers the same MCP server in each agent and installs REA’s workflow instructions (the “reverse-engineer-anything” skill) alongside it. After a restart you just ask in plain language. The prompt below is the README’s own example; the others are ours, one per agent.

README example (any agent)
Understand how search works in the Notes app, show me the evidence, and build a
similar feature for my project.
Claude Code: trace an Electron feature
Use REA on /Applications/Example.app. Find how the “copy as Markdown” command works: start from the renderer, follow it through preload and IPC into the main process, and show the file and function at each step. List anything you could not confirm.
Cursor: learn from a closed library
Use REA to inspect ./vendor/libexample.dylib. Find the function that parses the config file, give me its pseudocode and the strings it references, then write an equivalent TypeScript parser in src/config/ with unit tests.
Codex: debug an old build
I lost the source for ./legacy/report.exe (my own app, 2014). Use REA with Ghidra to find where it formats dates in the CSV export and explain why it writes 2-digit years.

Source: GitHub: morluto/rea (README)

Source: REA docs: installation and setup

Try REA from the terminal first

You can test REA without any agent. This command inspects an extracted JavaScript/Electron app directory or ASAR and prints the modules, imports and Electron boundaries it found, with their evidence. No native engine is needed.

npx -y rea-agents@latest analyze-javascript-application /absolute/path/to/app --json

Replace the path with your target, for example "D:/apps/example" on Windows.

Source: GitHub: morluto/rea (README)

REA Use Cases: Reverse Engineering Anything from Electron Apps to Malware

Source: REA showcases (DX-Ball, Notion, TH04)

Source: REA: responsible-use disclaimer

REA Video Tutorials

Two Reverse Engineer Anything walkthroughs from YouTube creators (not made by the REA project or by us). Videos load from YouTube only when you click play.

Reverse Engineer Any App using REA (41k Stars)
Reverse Engineer Any App using REA (41k Stars) · Prompt Engineer 48
How To Use REA To Clone Any Software In Minutes
How To Use REA To Clone Any Software In Minutes · Eric Tech

REA vs Ghidra vs Hopper

These are not really competitors. Ghidra and Hopper are the engines that disassemble and decompile. Reverse Engineer Anything is the agent layer on top that drives them and turns the output into evidence your agent can use.

REAGhidraHopper
What it isMCP server + CLI that connects AI agents to analysis toolsReverse engineering suite from the NSADisassembler and decompiler
Who drives itYour AI agent, or you in the terminalYou, in its GUI or with scriptsYou, in its GUI or with scripts
PriceFree, MIT licenseFree, Apache 2.0Commercial, with a limited free demo
PlatformsmacOS, Linux; Windows for agents, JS/.NET and experimental GhidraWindows, macOS, Linux (needs a JDK)macOS, Linux
TargetsNative, Electron/JS, websites, HAR, .NET, Android, firmware and moreNative binaries for many CPUsNative binaries (Mach-O, ELF, PE)
Best forAsking questions and getting answers with evidenceDeep manual analysis, scriptingFast manual analysis on Mac

IDA is a third supported engine. Commercial engines need your own valid license; REA does not provide one.

Source: GitHub: morluto/rea (README)

Source: GitHub: NationalSecurityAgency/ghidra

Source: Hopper Disassembler

Often yes, but it depends on where you are, what you analyze and the license you agreed to. Many places allow it for interoperability, security research, education and fixing software you own; the US DMCA has an interoperability exemption and the EU Software Directive permits decompilation for interoperability under conditions. A software license or terms of service can still forbid it.

REA’s own disclaimer says it is for lawful research, education, interoperability, software preservation and analysis of software you own or are authorized to examine. The project will not help with bypassing DRM, license checks or anti-cheat, building game cheats, bypassing authentication on systems you are not authorized to test, or copying proprietary code and assets.

This is general information, not legal advice. If you plan to publish findings or ship code based on someone else’s software, talk to a lawyer first.

Source: REA: responsible-use disclaimer

FAQ

Is REA free?

Yes. REA is open source under the MIT license, and the npm package rea-agents is free. You pay only for what sits around it: your AI agent’s plan or API usage, and a Hopper or IDA license if you use those engines. Ghidra is free.

What is REA skill?

The reverse-engineer-anything skill is a set of instructions that tells your agent when and how to use REA. npx rea-agents setup installs it together with the MCP server. You can also install only the skill with npx skills add morluto/rea --skill reverse-engineer-anything, but that does not register the MCP tools.

Does REA work on Mac/Windows?

macOS 12+ and recent Linux distributions are the main supported hosts, with Hopper, Ghidra or IDA for native analysis. On Windows, setup can configure your agents and static JavaScript, Electron and .NET analysis work; Ghidra support is experimental and Hopper is not available.

What is REA AI?

People use “REA AI” for REA (Reverse Engineer Anything), the tool that gives AI coding agents reverse engineering abilities. REA has no model of its own: the AI is your agent (Claude, GPT, Gemini and so on), and REA supplies the tools and evidence.

REA vs MCP servers?

REA is an MCP server. Compared with single-tool MCP servers such as a Ghidra-only bridge, it wraps several engines (Hopper, Ghidra, IDA, a browser, JS, .NET and Android analyzers) behind one setup, returns evidence with each result and ships matching agent instructions.

Where is the Reverse Engineer Anything GitHub repo?

At github.com/morluto/rea. The npm package the README installs is rea-agents, and the guides and case studies are on rea.tools.

Independent guide, not affiliated with the REA project, morluto, Anthropic, Cursor, OpenAI, the NSA or Hopper. Facts are from the morluto/rea README, installation docs and disclaimer (version 6.4.0), checked on October 12, 2026. REA changes quickly; check the README before you install.