Mcp Reverse Engineering

io.github.daedalusPublished by GitHub account daedalusv0.1.4Updated Oct 24, 2026

A sandboxed MCP tool for reverse engineering with multiple tool integrations

VerifiedSTDIODesktop onlyDeveloper ToolsSecurity & Monitoring

Overview

AI-generated overview

A sandboxed local MCP server that lets an assistant run reverse engineering utilities such as strings, objdump, readelf and binwalk on binary files.

What you can do
Wraps common reverse engineering command-line tools behind a unified interface, exposing tools for file type detection, printable string extraction, hex dumps, disassembly, ELF header reading and firmware analysis. It runs tool executions inside a sandbox workspace with timeouts and argument validation, and also offers a Python API for listing available tools and executing them directly.
When to use it
Useful when an assistant needs to inspect binaries, firmware images or ELF files during analysis work, and you want those tool calls confined to a sandbox directory with execution limits rather than run freely on the host.
Requirements
Local Python 3.11+ environment; installed via pip. The external tools it wraps, such as binwalk, radare2 and ghidra, must be installed separately. Runs over stdio, desktop only.
Before you install
It executes external reverse engineering tools on files you point it at, so only run it on binaries you trust and review the sandbox workspace and timeout settings. The wrapped tools must be installed separately and are outside this package's control.

Installation

In SourceWeft

  1. Open Mcp Reverse Engineering in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

mcp-reverse-engineering

A sandboxed MCP (Model Context Protocol) tool for reverse engineering that provides a unified interface to various reverse engineering tools with security restrictions.

[PyPI] [Python] [Ruff][Ask DeepWiki]

Purpose

This project provides a secure, sandboxed environment for executing reverse engineering tools via CLI or MCP protocol. It wraps common reverse engineering utilities (strings, objdump, readelf, binwalk, etc.) with safety features like filesystem isolation, timeouts, and argument validation.

Install

bash
pip install mcp-reverse-engineering

Or for development:

bash
pip install -e ".[dev]"

MCP Server Installation

To use as an MCP server with Claude Desktop:

bash
mcp install src/mcp_reverse_engineering/server.py

Usage

CLI

bash
# Extract strings from a binarymcp-re --tool strings --file /path/to/binary
# Disassemble a binarymcp-re --tool objdump --args "['-d']" --file /path/to/binary
# Analyze ELF headersmcp-re --tool readelf --args "['-h', '-s']" --file /path/to/elf
# Run binwalk for firmware analysismcp-re --tool binwalk --file /path/to/firmware.bin

Python API

python
from mcp_reverse_engineering import ReverseEngineeringEngine
# Create engine with default configengine = ReverseEngineeringEngine(    workspace="./workspace",    timeout=30,)
# List available toolsprint(engine.list_available_tools())
# Execute a toolresult = engine.execute_tool("strings", ["-n", "8"], "/path/to/binary")print(result)

MCP Server

python
from mcp_reverse_engineering.server import mcp, strings, objdump, readelf, binwalk
# Run the server (stdio transport for Claude Desktop)if __name__ == "__main__":    mcp.run()

API

ReverseEngineeringEngine

Main class for executing reverse engineering tools.

python
engine = ReverseEngineeringEngine(    workspace: str = "./workspace",  # Sandbox directory    timeout: int = 30,               # Tool execution timeout    config_path: str | Path | None = None,  # YAML config path)

Methods:

  • execute_tool(tool_name: str, args: List[str], file_path: Optional[str] = None) -> str - Execute a tool
  • list_available_tools() -> List[str] - List enabled tools
  • get_tool_documentation(tool_name: str) -> Dict[str, Any] - Get tool docs
  • get_mcp_tools() -> List[Dict[str, Any]] - Get MCP tool schemas

Available Tools

ToolCategoryDescription
filefile_toolsDetermine file type
stringsfile_toolsExtract printable strings
hexdumpfile_toolsHexadecimal dump
xxdfile_toolsHexadecimal dump
objdumpbinary_toolsDisassemble binary
readelfbinary_toolsRead ELF headers
binwalkfirmware_toolsFirmware analysis

Development

bash
# Clone the repositorygit clone https://github.com/daedalus/mcp_reverse_engineering.gitcd mcp_reverse_engineering
# Install dependenciespip install -e ".[test]"
# Run testspytest
# Format coderuff format src/ tests/
# Lintruff check src/ tests/
# Type checkmypy src/
# Install pre-commit hookspip install pre-commitpre-commit install

MCP Server Configuration

mcp-name: io.github.daedalus/mcp-reverse-engineering

Requirements

  • Python 3.11+
  • External tools: binwalk, radare2, ghidra, etc. (must be installed separately)

License

MIT

Source: README.md at commit 86bb042

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v0.1.4LatestSep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts