Airsc miễn phí cho tất cả. Nếu nó giúp bạn, hãy ủng hộ $2–$20.

Ủng hộ
MCP serverAn toànKiểm thử & sửa lỗiNâng cao

x64dbg-mcp-server

duty1g · duty1g/x64dbg-mcp-server

Một plugin MCP cho x64dbg phơi bày toàn bộ chức năng debugger qua HTTP, cho phép các AI agent điều khiển debugger theo chương trình.

x64dbg-MCP Server là một plugin MCP (Model Context Protocol) gốc cho x64dbg, cho phép truy cập toàn bộ chức năng của trình gỡ lỗi qua HTTP. Kết nối bất kỳ trợ lý AI tương thích MCP nào và điều khiển x64dbg theo chương trình: đặt breakpoint, bước qua mã, đọc bộ nhớ, xuất các thanh ghi, v.v. Được xây dựng bằng Zig — không phụ thuộc, đầu ra một tệp nhị phân, đa nền tảng.

2.5k sao270Giấy phép: MITCập nhật 6 ngày trước0 lượt mở

Xem trước

▍

Bạn có thể làm gì với nó

  • Sử dụng một AI agent để tự động hóa phân tích mã độc bằng cách điều khiển x64dbg.
  • Gỡ lỗi mã assembly phức tạp bằng cách để agent thực hiện từng bước và phân tích bộ nhớ.
  • Hướng dẫn một AI agent đặt breakpoint, đọc thanh ghi và kiểm tra trạng thái chương trình trong x64dbg.

Kiểm tra an toàn

An toàn

Không thấy dấu hiệu rủi ro trong các file đã quét.

Quét tự động các file trong repo. Luôn xem lại code trước khi chạy.

Trích từ README

x64dbg-MCP Server MCP-powered agentic reverse engineering for x64dbg.

Features • Install • Usage • Tools • Configuration • Building • Structure

x64dbg-MCP Server is a native MCP (Model Context Protocol) plugin for x64dbg that exposes the debugger's full functionality over HTTP. Connect any MCP-compatible AI assistant and control x64dbg programmatically: set breakpoints, step through code, read memory, dump registers, and more.

Built with Zig — zero dependencies, single-binary output, cross-compiles to both x32 and x64 from any host. No .NET, no Python, no runtime — just drop the plugin into your x64dbg plugins folder and go.

MCP 2024-11-05 — Streamable HTTP + SSE transports, JSON-RPC 2.0.

Features

  • 84 MCP Tools: Full debugger control — disassembly, stepping, breakpoints, memory allocation, registers, modules, threads, call stack, pattern scanning, string extraction, xrefs, symbols, bookmarks, PE analysis, OEP detection, module dumping, PEB/SEH inspection, tracing, and more.
  • 22 Event Callbacks: Full debugger event coverage — init, stop, breakpoint, exception, step, attach/detach, DLL load/unload, threads, and more.
  • Zero Dependencies: Pure native plugin, no runtime or framework needed.
  • x32 and x64: Single codebase, builds both architectures from one command.
  • Dual Transport: Streamable HTTP + SSE — compatible with any MCP client (new and legacy).
  • Bearer Auth: Mandatory token authentication — auto-generated on first run, required on every request to prevent unauthorized access.
  • Config Dialog: Change IP/port/token from the Plugins menu, auto-restarts the server on save.
  • Auto-Start: MCP server starts automatically when x64dbg launches.
  • Cross-Compile: Build Windows plugins from Linux, macOS, or WSL.

Install

Download the latest release or build from source:

  1. Copy the contents of dist/ into your x64dbg root folder (deploys both x32 and x64)
  2. Launch x64dbg

The MCP server starts automatically. Default ports:

  • x64: 0.0.0.0:9094
  • x32: 0.0.0.0:9095

Usage

Add to your MCP client config (.mcp.json, etc.):

Streamable HTTP (recommended):

{
  "mcpServers": {
    "x64dbg": {
      "type": "http",
      "url": "http://localhost:9094/",
      "headers": {
        "Authorization": "Bearer YOUR_TOKEN_HERE"
      }
    }
  }
}

SSE (legacy clients):

{
  "mcpServers": {
    "x64dbg": {
      "type": "sse",
      "url": "http://localhost:9094/sse",
      "headers": {
        "Authorization": "Bearer YOUR_TOKEN_HERE"
      }
    }
  }
}

If connecting from WSL or a remote machine, use the host's IP address and set the bind address to 0.0.0.0 in the config dialog.

Example — AI-assisted reverse engineering session:

You:    Load calc.exe and break at the entry point
AI: [calls LoadBinary, SetBreakpoint, run, WaitForPause]
        Loaded calc.exe, hit breakpoint at 0x7FF7A1234000 in calc.exe

You:    What are the current registers?
AI: [calls GetAllRegisters]
        RAX: 0x0, RCX: 0x7FF7A1234000, RDX: 0x1, ...

You:    Read 64 bytes at the current instruction pointer
AI: [calls ReadMemory]
        48 83 EC 28 E8 12 34 00 00 ...

You:    Step over the next 3 instructions and show me the stack
AI: [calls StepOver x3, GetCallStack]
        Stepped to 0x7FF7A1234010, call stack: ...

Tools

72 MCP tools covering the full x64dbg debugging workflow.

Always available

ToolDescription
GetDebugStateCurrent debugger state, PID, instruction pointer
LoadBinaryLoad an executable into the debugger
ExecuteDebuggerCommandRun any x64dbg command
ListCommandsByCategoryList available MCP tools
SearchForStringsSearch process memory for text
GetEventLogLast N debugger events (exceptions, breakpoints, DLL loads)
ClearEventLogClear the event log
EvalExpressionEvaluate any x64dbg expression (address, register, arithmetic)
AttachProcessAttach to a running process by PID
EchoEcho input back
WaitForEventLong-poll for debugger events (breakpoint, pause, resume, exception)

Requires active debug session

ToolDescription
GetCurrentAddressCurrent EIP/RIP with label and comment
DisassembleDisassemble N instructions at an address
DisassembleFunctionDisassemble an entire function by boundaries
ReadMemoryHex dump of process memory
WaitForPauseBlock until target pauses
runResume execution (F9)
StepIntoSingle-step into calls (F7)
StepOverStep over calls (F8)
StepOutRun until return (Ctrl+F9)
PauseDebugPause the target (F12)
StopDebugTerminate debug session
RestartDebugRestart debug session
SetBreakpointSet INT3 breakpoint at address/symbol
SetHardwareBreakpointSet hardware breakpoint (DR0-DR3, read/write/execute)
SetConditionalBreakpointSet breakpoint with condition expression and optional log
EnableBreakpointEnable a breakpoint at a given address
DisableBreakpointDisable a breakpoint without deleting it
ToggleBreakpointToggle a breakpoint between enabled and disabled
DeleteBreakpointRemove a breakpoint
DeleteAllBreakpointsRemove all breakpoints (normal, hardware, memory)
ResetHitCountReset a breakpoint's hit counter to zero
ListBreakpointsList all active breakpoints
GetAllRegistersDump all general-purpose registers
SetRegisterSet a CPU register value
GetCallStackCurrent thread call stack
GetThreadsList all threads with IDs and instruction pointers
SwitchThreadSwitch active thread context
SuspendThreadSuspend a thread by its thread ID
ResumeThreadResume a suspended t
Xem mã nguồn trên GitHub