Skip to content

Tags: jtsylve/re-mcp

Tags

v3.0.3

Toggle v3.0.3's commit message
Update dependencies to the latest

v3.0.2

Toggle v3.0.2's commit message
Bump version to v3.0.2

v3.0.1

Toggle v3.0.1's commit message
Migrate pyhidra → pyghidra, fix Ghidra save_database, and bump to 3.0.1

Migrate from the deprecated pyhidra package to pyghidra (adopted into
Ghidra 12 as the official Python integration).  Update all references,
imports, launcher class names, and dependency declarations.

Fix save_database failing with "Unable to lock due to active
transaction" by draining stale Ghidra transactions before saving.
The pyghidra environment leaves transactions open after tool mutations
and analysis; the new _end_open_transactions() method on Session commits
tool data then aborts any cascading listener transactions.  Also drain
before GhidraProject.analyze() in reanalyze_range so analysis starts
with a clean transaction slate.

Bump all packages to 3.0.1.  Update Ghidra requirement to 12+.

v3.0.0

Toggle v3.0.0's commit message
Ghidra jpype memory fixes and bump to 3.0.0

v3.0.0rc3

Toggle v3.0.0rc3's commit message
Ghidra backend bug fixes, new struct tools, and bump to 3.0.0rc3

Fix Ghidra API misuse (enum remove-by-name, CParser import paths,
TaskMonitor.DUMMY, HighFunctionDBUtil for regvar renames), add
rename/delete struct member and delete structure tools, extract
session.save() method, and improve supervisor save_database param
forwarding.

v3.0.0rc2

Toggle v3.0.0rc2's commit message
Add unified re-mcp CLI, ida-mcp deprecation warning, and publish work…

…flow for root package

v3.0.0rc1

Toggle v3.0.0rc1's commit message
v3.0.0rc1 — ida-mcp is now re-mcp

ida-mcp has been renamed to re-mcp to reflect its evolution into a
multi-backend reverse-engineering MCP server. The project now supports
both IDA Pro and Ghidra, with a shared core and portable tool surface.

What's new
----------

Project rename — ida-mcp → re-mcp:
- The project is now re-mcp, published as three packages: re-mcp-core
  (shared infrastructure), re-mcp-ida (IDA backend), and re-mcp-ghidra
  (Ghidra backend). Install only the backend you need.
- The ida-mcp package name on PyPI becomes a redirect that installs
  re-mcp-ida, so existing configurations continue to work.
- CLI commands: `re-mcp-ida` (IDA), `re-mcp-ghidra` (Ghidra), or the
  generic `re-mcp --backend <name>`.

Ghidra backend:
- Full Ghidra/pyhidra backend with the same tool surface as the IDA
  backend — decompile, disassemble, strings, xrefs, types, structures,
  and all meta-tools (execute, batch, call, search_tools, get_schema).
- Install re-mcp-ghidra and run `re-mcp-ghidra` to start. Requires a
  local Ghidra installation and pyhidra.

Multi-backend architecture:
- Backends are discovered via entry points — the supervisor loads
  whichever backend package is installed.
- Tools, resources, and prompts are portable across backends. Agents
  can target either backend with the same workflow.

Direct stdio as default transport:
- The default CLI mode is now direct stdio instead of the persistent
  HTTP daemon with proxy. This is simpler and works out of the box with
  all MCP clients. The proxy/daemon modes remain available via the
  `proxy` and `serve` subcommands.

v2.2.2

Toggle v2.2.2's commit message
Release v2.2.2

v2.2.1

Toggle v2.2.1's commit message
Release v2.2.1 — documentation refinements and meta-tool access fix

Update docs for cross-platform state file paths, Windows process
creation flags, clarified context.py scope, and _process.py module.
Allow save_database and list_databases through call/execute/batch.

v2.2.1rc1

Toggle v2.2.1rc1's commit message
Add cross-platform process helpers and Windows compatibility

Extract IS_WINDOWS, pid_alive, and pid_exit_code into _process.py and
use them throughout daemon, proxy, and worker provider.  Key Windows
fixes: SO_EXCLUSIVEADDRUSE instead of SO_REUSEADDR, CREATE_NO_WINDOW
for detached spawns, shim/launcher tolerance in _spawn_daemon, and
platform-appropriate kill/reap logic in the death watcher.

Bump version to 2.2.1rc1.