IX64MCP
БесплатноНе проверенConnects AI agents to IDA Pro and x64dbg for unified static and dynamic reverse engineering, enabling coordinated analysis, debugging, and patch planning throug
Описание
Connects AI agents to IDA Pro and x64dbg for unified static and dynamic reverse engineering, enabling coordinated analysis, debugging, and patch planning through a local MCP daemon.
README
IDA + x64dbg MCP for AI-assisted reverse engineering.
IX64MCP connects an AI agent such as Codex to a live reverse-engineering workspace: IDA Pro for static analysis, x64dbg for dynamic analysis, and a local MCP daemon that keeps addresses, breakpoints, comments, traces, notes, patch plans, and reports in one session.
This is an alpha research/developer tool, not a polished commercial product. The current goal is to make AI-assisted reversing practical, observable, and safe by default.
Why This Exists
Most reverse-engineering integrations expose one tool at a time: an IDA helper, a debugger helper, or a script that dumps context. IX64MCP is built around a stronger idea:
Let the AI agent coordinate static analysis, live debugging, patch planning, and reporting through one local session model.
That means the agent can answer questions like:
- "Explain the function where the debugger stopped."
- "Find likely password checks."
- "Break on entry and map the runtime address back to IDA."
- "Summarize calls, strings, imports, branches, and pseudocode."
- "Read registers and stack at a breakpoint."
- "Create rename/comment suggestions instead of silently modifying the database."
- "Generate a compact malware-analysis report from timeline, triage, IoCs, and patch candidates."
Architecture

IX64MCP is intentionally local-first:
- Codex talks to a thin MCP adapter over stdio.
- The adapter proxies tools/resources to the IX64MCP daemon.
- IDA and x64dbg connect to the daemon over
127.0.0.1WebSocket bridges. - The daemon owns session state, mappings, policy gates, timeline summaries, and persistent storage.
- SQLite + JSONL keep sessions, events, suggestions, mappings, breakpoints, patch reports, and workspace metadata.
Current Status
IX64MCP is a serious alpha prototype.
What works today:
- MCP daemon + thin Codex adapter split.
- IDAPython bridge for IDA Pro 9.1.
- x64dbg x64 C++ plugin bridge.
- Live current-address sync and runtime/static mapping.
- Breakpoints, stepping, register reads, memory reads, memory maps, call stacks, threads, exceptions.
- IDA functions, xrefs, strings, pseudocode chunks, callgraph/CFG helpers, comments, rename suggestions.
- Timeline, summaries, semantic cache, context budget profiles.
- Safe patch planning and gated file patching with backup/diff/rollback.
- Malware sample workspace, triage, IoCs, configs, lineage, behavior report, JSON/Markdown/HTML export.
- Bounded runtime workflows such as
workflow.analyze_function_runtime. - 100 automated tests covering server behavior, sync edges, policy, persistence, installation surface, and workflow orchestration.
Known alpha limitations:
- Windows-first.
- x64dbg x64 first; x32 support is not the main path yet.
- The project is single-live-session oriented.
- IDA/x64dbg bridges must be installed manually or through helper scripts.
- The x64dbg plugin binary should be downloaded from GitHub Releases for normal users.
- Protocol/schema hardening is still a roadmap item.
Fast Install
Requirements
- Windows 10/11 x64
- Python 3.14+ or
uv - IDA Pro 9.1 with IDAPython
- x64dbg x64
- Codex desktop/CLI with MCP config support
1. Clone
git clone https://github.com/lowcort1sol/ida-x64dbg-mcp.git
cd ida-x64dbg-mcp
2. Run the Installer
.\scripts\install.ps1
The installer:
- creates or reuses
.venv; - installs
ix64mcpinto the virtual environment; - creates
state/,state/logs/, andstate/downloads/; - auto-detects IDA and x64dbg when they are in common locations;
- prompts for missing IDA/x64dbg paths in interactive PowerShell;
- downloads
ix64mcp.dp64from the latest GitHub Release when no local binary exists; - copies the IDA and x64dbg plugins;
- starts the daemon and runs
doctor; - prints a ready-to-paste Codex MCP config.
It does not edit your Codex config automatically.
3. Configure Codex
The installer prints a snippet like this:
[mcp_servers.ix64mcp]
command = "C:\\path\\to\\IX64MCP\\.venv\\Scripts\\python.exe"
args = ["-m", "ix64mcp.server", "mcp"]
Paste it into your Codex MCP config, then restart or refresh Codex.
To let the installer update Codex config for you, run:
.\scripts\install.ps1 -ConfigureCodex
The installer backs up the existing config before adding or updating only the ix64mcp MCP block.
4. Verify
.\scripts\doctor.ps1
After opening IDA and x64dbg, doctor should report:
daemon_health.ok = true
connected.ida = true
connected.x64dbg = true
Install Options
For scripted or CI-like setup:
.\scripts\install.ps1 -NonInteractive
Useful overrides:
.\scripts\install.ps1 `
-IdaPluginsDir "C:\Path\To\IDA Pro 9.1\plugins" `
-X64DbgPluginsDir "C:\Path\To\x64dbg\release\x64\plugins" `
-X64DbgPluginBinary "C:\Path\To\ix64mcp.dp64"
Skip plugin copies when setting up the MCP server only:
.\scripts\install.ps1 -SkipIdaPlugin -SkipX64DbgPlugin
Install without starting the daemon:
.\scripts\install.ps1 -NoStart
Normal users do not need to build the x64dbg plugin. The installer downloads the latest release binary automatically. Developers can still build it locally with:
.\scripts\build-x64dbg-plugin.ps1
What You Can Do
Static Analysis Through IDA
The agent can ask IDA for:
- function boundaries and chunks;
- xrefs;
- strings and string xrefs;
- compact function summaries;
- pseudocode chunks;
- callgraph and CFG slices;
- callers/callees;
- import-to-caller and string-to-function flows;
- branch context and stack variable usage;
- safe rename/comment/decompiler-comment suggestions.
Useful calls:
ida.function_summary
ida.pseudocode
ida.callgraph
ida.cfg
ida.string_to_functions
analysis.suggest_name
analysis.suggest_comment
analysis.apply_suggestion
Dynamic Analysis Through x64dbg
The agent can ask x64dbg for:
- current registers;
- memory reads;
- memory map;
- threads;
- call stack;
- exceptions;
- software/hardware/memory/conditional breakpoints;
- breakpoint snapshots;
- safe dump metadata;
- compact trace recipe events.
Useful calls:
x64dbg.read_registers
x64dbg.read_memory
x64dbg.memory_map
x64dbg.call_stack
x64dbg.breakpoint_snapshot
x64dbg.run_until_breakpoint
trace.recipe_enable
Agent Workflows
High-level workflows combine multiple low-level tools:
workflow.follow_debugger
workflow.explain_current_function
workflow.find_password_check
workflow.break_on_first_strcmp_like
workflow.rename_functions_from_trace
workflow.make_patch_plan
workflow.generate_analysis_report
workflow.analyze_function_runtime
Example: workflow.analyze_function_runtime maps an IDA EA to runtime, sets a breakpoint, runs with a required timeout, waits for the exact hit, collects registers/stack/memory/call stack, writes an IDA comment, and returns a compact report.
Patch/Crackme Assistance
IX64MCP supports preview-first patch work:
patch.planscans for compare/JCC and success/failure string patterns.patch.apply_fileis policy-gated.- patched files get backups and hash logs.
patch.diffreports byte-level differences.patch.rollbackrestores from backup.
Memory patching is intentionally not enabled by default.
Malware Analysis Workspace
The malware workspace keeps case data together:
- sample copy and hashes;
- IDB/debugger paths;
- sandbox metadata;
- notes;
- IoCs;
- extracted configs;
- artifacts;
- lineage;
- tags/status;
- behavior reports;
- JSON/Markdown/HTML exports.
Useful calls:
malware.workspace_create
malware.triage
malware.add_ioc
malware.add_config
malware.add_artifact
malware.add_lineage
malware.behavior_report
malware.export_report
Context Budget
Reverse engineering can generate too much data for an AI context window. IX64MCP avoids dumping everything by default.
It provides:
quick,compact,deep, andforensicresponse profiles;- capped timeline summaries;
- semantic cache;
- compact report resources;
- pseudocode chunking;
- capped trace batches.
Useful resources:
analysis://current
analysis://modules
analysis://functions/hot
analysis://patches
analysis://report
analysis://runtime-history
analysis://correlation
malware://workspace
malware://behavior-report
Safety Model
Default mode is analysis-safe.
Allowed by default:
- navigation;
- reads;
- comments;
- names;
- breakpoints;
- stepping;
- bounded runtime workflows;
- patch planning;
- safe dump metadata.
Gated or blocked by default:
- memory patching;
- raw process memory dumping;
- file patch application;
- long autonomous run loops;
- dangerous malware automation.
Every mutating action is logged to the timeline.
Optional bridge token:
$env:IX64MCP_TOKEN = "change-me-local-secret"
Set the same token before launching the daemon, IDA, and x64dbg if you want localhost bridge authentication.
Server Commands
.\.venv\Scripts\python -m ix64mcp.server start
.\.venv\Scripts\python -m ix64mcp.server stop
.\.venv\Scripts\python -m ix64mcp.server status
.\.venv\Scripts\python -m ix64mcp.server doctor
.\.venv\Scripts\python -m ix64mcp.server mcp
Process model:
start/daemon: owns bridge port127.0.0.1:8765and daemon API127.0.0.1:8766;mcp: thin Codex adapter, no bridge port binding;legacy: old combined stdio+bridge mode for debugging only.
Default logs:
state/logs/daemon.log
state/logs/mcp.log
Troubleshooting
Codex lists tools, but tool calls fail
Run:
.\scripts\doctor.ps1
If the daemon is down:
.\.venv\Scripts\python -m ix64mcp.server start
Stale or partial server
.\.venv\Scripts\python -m ix64mcp.server stop --force
.\.venv\Scripts\python -m ix64mcp.server start
IDA is disconnected
- Verify
ix64mcp_ida.pyis in the IDApluginsdirectory. - Restart IDA after copying the plugin.
- Make sure the daemon is already running.
x64dbg is disconnected
- Verify
ix64mcp.dp64is inx64dbg\release\x64\plugins. - Restart x64dbg after copying the plugin.
- Make sure the daemon is already running.
IDAPython does not load
IDA may need a configured Python runtime. Run IDA's idapyswitch and choose a compatible Python install.
Developer Setup
Install development dependencies:
uv python install 3.14.4
uv venv --python 3.14.4 .venv
uv pip install --python .\.venv\Scripts\python.exe -e ".[dev]"
Run tests:
.\.venv\Scripts\python -m pytest
.\.venv\Scripts\python -m compileall ix64mcp bridges tests
Build the x64dbg bridge from source:
.\scripts\build-x64dbg-plugin.ps1
Run local bridge simulators without IDA/x64dbg:
.\.venv\Scripts\python -m ix64mcp.harness --role ida
.\.venv\Scripts\python -m ix64mcp.harness --role x64dbg
Run the x64dbg smoke test:
.\.venv\Scripts\python -m ix64mcp.smoke_x64dbg --kill --timeout 30 --event-timeout 10
Samples
The samples/ tree contains small benign binaries for testing workflows:
crackme_simple: password-checking practice target;anti_debug_demo: debugger-detection examples;control_flow_lab: branch-heavy control-flow practice target.
Build them with:
cmake -S samples -B build/samples -G Ninja
cmake --build build/samples
Repository Layout
ix64mcp/ Python daemon, MCP adapter, workflows, policy, storage
bridges/ida/ IDAPython bridge plugin
bridges/x64dbg/ x64dbg C++ bridge plugin source
scripts/ installation, doctor, and build helpers
samples/ benign test binaries
tests/ automated regression and hardening tests
docs/assets/ README images and public assets
pluginsdk/ x64dbg plugin SDK headers/libs
GitHub Alpha Notes
This project is intentionally public-alpha:
- APIs may change.
- Protocol hardening is ongoing.
- Long malware sessions need more live testing.
- Contributions should prefer reliability, session correctness, protocol schemas, and demo polish over adding many new tools.
The high-level direction is stable: one local MCP platform where AI agents can coordinate IDA, x64dbg, timeline, patch planning, and malware-analysis reporting without drowning in raw context.
Установка IX64MCP
У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.
▸ github.com/lowcort1sol/ida-x64dbg-mcpFAQ
IX64MCP MCP бесплатный?
Да, IX64MCP MCP бесплатный — установка в пару кликов через Unyly без оплаты.
Нужен ли API-ключ для IX64MCP?
Нет, IX64MCP работает без API-ключей и переменных окружения.
IX64MCP — hosted или self-hosted?
Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.
Как установить IX64MCP в Claude Desktop, Claude Code или Cursor?
Открой IX64MCP на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.
Похожие MCP
Fetch
Web content fetching and conversion for efficient LLM usage.
AWS KB Retrieval
Retrieval from AWS Knowledge Base using Bedrock Agent Runtime.
автор: modelcontextprotocolSpring AI MCP Server
Provides auto-configuration for setting up an MCP server in Spring Boot applications.
llm-analysis-assistant
A very streamlined mcp client that supports calling and monitoring stdio/sse/streamableHttp, and can also view request responses through the /logs page. It also
автор: xuzexin-hzCompare IX64MCP with
Не уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории ai
