frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

Show HN: Ghidra MCP Server – 110 tools for AI-assisted reverse engineering

https://github.com/bethington/ghidra-mcp
48•xerzes•3h ago

Comments

xerzes•3h ago
Hi HN,

I built this because reverse engineering software across multiple versions is painful. You spend hours annotating functions in version 1.07, then version 1.08 drops and every address has shifted — all your work invisible.

The core idea is a normalized function hashing system. It hashes functions by their logical structure — mnemonics, operand categories, control flow — not raw bytes or absolute addresses. When a binary is recompiled or rebased, the same function produces the same hash. All your documentation (names, types, comments) transfers automatically.

Beyond that, it's a full MCP bridge with 110 tools for Ghidra: decompilation, disassembly, cross-referencing, annotation, batch analysis, and headless/Docker deployment. It integrates with Claude, Claude Code, or any MCP-compliant client.

For context, the most popular Ghidra MCP server (LaurieWired's, 7K+ stars) has about 15 tools. This started as a fork of that project but grew into 28,600 lines of substantially different code.

Architecture:

  Java Ghidra Plugin (22K LOC) → embeds HTTP server inside Ghidra
  Python MCP Bridge (6.5K LOC) → 110 tools with batch optimization
  Any MCP client → Claude, scripts, CI pipelines
I validated the hashing against Diablo II — dozens of patch versions, each rebuilding DLLs at different base addresses. The hash registry holds 154K+ entries, and I can propagate 1,300+ function annotations from one version to the next automatically.

The headless mode runs in Docker (docker compose up) for batch processing and CI integration — no GUI required.

v2.0.0 adds localhost-only binding (security), configurable timeouts, label deletion tools, and .env-based configuration.

Happy to discuss the hashing approach, MCP protocol design decisions, or how this fits into modern RE workflows.

nunobrito•1h ago
Thank you for sharing, will soon try out. Does it support decompilation of android binaries?
babas•32m ago
How does this compare to ReVa? https://github.com/cyberkaida/reverse-engineering-assistant

I think your installation instructions are incomplete. I followed the instructions and installed via file -> install in the project view. Restarted. But GhidraMCP is not visible in Tools after opening a binary.

xnorswap•1h ago
Have you had any issues with models "refusing" to do reverse engineering work?
MadnessASAP•34m ago
From my experience, OpenAI Codex loves reverse engineering work. In one case it did a very thorough job of disassembling a 8051 MCUs firmware and how it spoke to its attached LCD controller.

Another (semi-related) project, given the manufacturers of above MCUs proprietary flashing SDK, it found the programmers firmware, extracted the decryption key from the updating utility, decrypted the firmware and accompanying flashing software and is currently tracing the necessary signals to use an Arduino as a programmer.

So not only is it willing, it's actually quite good at it. My thinking is that reverse engineering is a lot of pattern recognition and not a lot of "original thinking". I.e. the agent doesn't need to come up with anything new, just recognise what already exists.

jakozaur•1h ago
Funny coincidence, I'm working on a benchmark showcasing AI capabilities in binary analysis.

Actually, AI has huge potential for superhuman capabilities in reverse engineering. This is an extremely tedious job with low productivity. Currently reserved, primarily when there is no other option (e.g., malware analysis). AI can make binary analysis go mainstream for proactive audits to secure against supply-chain attacks.

rustyhancock•1h ago
Thank you for sharing this, it's a a huge amount of work and I now know how I'll be spending this weekend!
wombat23•1h ago
Super interesting.

Last week-end I was exploring the current possibilities of automated Ghidra analysis with Codex. My first attempt derailed quickly, but after giving it the pyghidra documentation, it reliably wrote Python scripts that would alter data types etc. exactly how I wanted, but based on fixed rules.

My next goal would be to incorporate LLM decisions into the process, e.g. let the LLM come up with a guess at a meaningful function name to make it easier to read, stuff like that. I made a skill for this functionality and let Codex plough through in agentic mode. I stopped it after a while as I was not sure what it was doing, and I didn't have more time to work on it since. I would need to do some sanity checks on the ones it has already renamed.

Would be curious what workflows others have already devised? Is MCP the way to go?

Is there a place where people discuss these things?

longtermop•55m ago
Very cool project! The MCP surface area here (110 tools) is a great example of why tool-output validation is becoming critical.

When an AI agent interacts with binary analysis tools, there are two injection vectors worth considering:

1. *Tool output injection* — Malicious binaries could embed prompt injection in strings/comments that get passed back to the LLM via MCP responses

2. *Indirect prompt injection via analyzed code* — Attackers could craft binaries where the decompiled output contains payloads designed to manipulate the agent

For anyone building MCP servers that process untrusted content (like binaries, web pages, or user-generated data), filtering the tool output before it reaches the model is a real gap in most setups.

(Working on this problem at Aeris PromptShield — happy to share attack patterns we've seen if useful)

JasonADrury•55m ago
I thought MCP interfaces with high amounts of tools perform much worse than MCP interfaces with fewer tools, this doesn't seem like a great design.

This also seems to just be vibecoded garbage.

stared•53m ago
Interesting to see Ghidra here!

A friend from work just used it (with Claude) to hack River Ride game (https://quesma.com/blog/ghidra-mcp-unlimited-lives/).

Inspired by the, I have it a try as well. While I have no prior experience with reverse engineering, I ported an old game from PowerPC to Apple Silicon.

First, including a few MCPs with Claude Code (including LaurieWired/GhidraMCP you forked from, and https://github.com/jtang613/GhidrAssistMCP). Yet, the agent fabricated as lot of code, instead for translating it from source.

I ended up using headless mode directly in Cursor + GPT 5.2 Codex. The results were the best.

Once I get some time, will share a write-up.

summarity•51m ago
Ive been using it (the original 15 tool version) for months now. It’s amazing. Any app is suddenly “open source”. I can track down bugs. Get a deeper understanding of any tool, and even write plug-ins or preload shims that mod any app. It’s like I finally actually _own_ the software I bought years ago.

For objective C heavy code, I also use Hopper Disassembler (which now has a built in MCP server).

Some related academic work (full recompilation with LLMs and Ghidra): https://dl.acm.org/doi/10.1145/3728958

junon•43m ago
Talking about RE'ing applications and equating that to OSS is not a good look when you work at GitHub...
randomtoast•42m ago
Now we just need to choose a game and run Claude Code with Ghidra MCP in a loop until the game is completely decompiled.
tarasyarema•13m ago
Simple question: why not a cli instead? As seems that lately LLM and agentic tools seems to be better at using clis rather than bloated MCPs?
NicuCalcea•4m ago
I think they're only better for CLI tools that are in the training data. If it's a new tool, you'd need to dump the full documentation in the context either way.

I miss thinking hard

https://www.jernesto.com/articles/thinking_hard
566•jernestomg•6h ago•332 comments

Data centers in space makes no sense

https://civai.org/blog/space-data-centers
632•ajyoon•15h ago•728 comments

Lessons learned shipping 500 units of my first hardware product

https://www.simonberens.com/p/lessons-learned-shipping-500-units
606•sberens•2d ago•266 comments

Show HN: Ghidra MCP Server – 110 tools for AI-assisted reverse engineering

https://github.com/bethington/ghidra-mcp
50•xerzes•3h ago•16 comments

Show HN: Craftplan – I built my wife a production management tool for her bakery

https://github.com/puemos/craftplan
334•deofoo•2d ago•76 comments

High-Altitude Adventure with a DIY Pico Balloon

https://spectrum.ieee.org/explore-stratosphere-diy-pico-balloon
34•jnord•3d ago•8 comments

The Mathematics of Tuning Systems

https://math.ucr.edu/home/baez/tuning_talk/
14•u1hcw9nx•4d ago•1 comments

Deno Sandbox

https://deno.com/blog/introducing-deno-sandbox
446•johnspurlock•17h ago•145 comments

New York’s budget bill would require “blocking technology” on all 3D printers

https://blog.adafruit.com/2026/02/03/new-york-wants-to-ctrlaltdelete-your-3d-printer/
440•ptorrone•18h ago•494 comments

Agent Skills

https://agentskills.io/home
462•mooreds•20h ago•228 comments

The largest zip tie is nearly 4 feet long and $75

https://www.thedrive.com/news/youll-have-that-on-those-big-jobs-the-worlds-largest-zip-tie-is-nea...
101•PaulHoule•5d ago•45 comments

How watercolor brushes are made (2015)

https://www.handprint.com/HP/WCL/brush1.html
27•YeGoblynQueenne•6d ago•2 comments

Xcode 26.3 – Developers can leverage coding agents directly in Xcode

https://www.apple.com/newsroom/2026/02/xcode-26-point-3-unlocks-the-power-of-agentic-coding/
315•davidbarker•16h ago•262 comments

AliSQL: Alibaba's open-source MySQL with vector and DuckDB engines

https://github.com/alibaba/AliSQL
217•baotiao•15h ago•28 comments

Resurrecting Crimsonland – Decompiling and preserving a cult 2003 classic game

https://banteg.xyz/posts/crimsonland/
118•banteg•2d ago•31 comments

Reimplementing Tor from Scratch for a Single-Hop Proxy

https://foxmoss.com/blog/kurrat/
41•Agreed3750•3d ago•6 comments

Exploring Different Keyboard Sensing Technologies

https://www.lttlabs.com/articles/2026/01/27/exploring-different-keyboard-sensing-technologies
29•viraptor•1w ago•7 comments

221 Cannon is Not For Sale

https://fredbenenson.com/blog/2026/02/03/221-cannon-is-not-for-sale/
255•mecredis•17h ago•186 comments

X offices raided in France as UK opens fresh investigation into Grok

https://www.bbc.com/news/articles/ce3ex92557jo
376•vikaveri•1d ago•662 comments

Prek: A better, faster, drop-in pre-commit replacement, engineered in Rust

https://github.com/j178/prek
249•fortuitous-frog•18h ago•103 comments

Show HN: BPU – An embedded scheduler for stable UART pipelines

5•DenisDolya•2d ago•0 comments

1,400-year-old tomb featuring giant owl sculpture discovered in Mexico

https://www.cnn.com/2026/01/29/science/zapotec-tomb-mexico-scli-intl
106•breve•5d ago•23 comments

Qwen3-Coder-Next

https://qwen.ai/blog?id=qwen3-coder-next
664•danielhanchen•18h ago•389 comments

France dumps Zoom and Teams as Europe seeks digital autonomy from the US

https://apnews.com/article/europe-digital-sovereignty-big-tech-9f5388b68a0648514cebc8d92f682060
970•AareyBaba•17h ago•510 comments

Y Combinator will let founders receive funds in stablecoins

https://fortune.com/2026/02/03/famed-startup-incubator-y-combinator-to-let-founders-receive-funds...
127•shscs911•16h ago•212 comments

"time to GPT-2", down to 2.91 hours

https://twitter.com/karpathy/status/2018804068874064198
14•tosh•1h ago•0 comments

Bunny Database

https://bunny.net/blog/meet-bunny-database-the-sql-service-that-just-works/
292•dabinat•22h ago•122 comments

FlashAttention-T: Towards Tensorized Attention

https://dl.acm.org/doi/10.1145/3774934.3786425
94•matt_d•13h ago•53 comments

The full history of Windows widgets, from 1997 to today

https://xakpc.dev/windows-widgets/history/
45•thunderbong•4h ago•16 comments

Notepad++ supply chain attack breakdown

https://securelist.com/notepad-supply-chain-attack/118708/
298•natebc•12h ago•137 comments