by duty1g
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, cros
# Add to your Claude Code skills
git clone https://github.com/duty1g/x64dbg-mcp-serverGuides for using ai agents skills like x64dbg-mcp-server.
x64dbg-mcp-server is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by duty1g. 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, cros. It has 581 GitHub stars.
x64dbg-mcp-server's catalog security scan is still queued. You can run an instant dependency and prompt-injection check now with the "Scan for vulnerabilities" button above.
Clone the repository with "git clone https://github.com/duty1g/x64dbg-mcp-server" and add it to your Claude Code skills directory (see the Installation section above).
x64dbg-mcp-server is primarily written in Zig. It is open-source under duty1g on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh x64dbg-mcp-server against similar tools.
No comments yet. Be the first to share your thoughts!
Unlocks once the catalog security scan passes (runs nightly).
⚠️ Third-Party Software Notice
This skill is third-party open-source software developed and hosted independently on GitHub. SkillsLLM is an informational directory and does not control or maintain the underlying repository.
Any security checks, ratings, or warnings displayed by SkillsLLM are automated and limited in scope. They do not constitute a security certification or guarantee that the software is safe, error-free, or free from malicious code, vulnerabilities, compromised dependencies, or prompt-injection risks.
Review the source code, permissions, dependencies, and configuration before installing or running any third-party skill. Use is at your own risk. To the maximum extent permitted by applicable law, SkillsLLM is not liable for losses arising from third-party software.
The deep catalog scan for this skill is still queued. Run an instant dependency check now instead.
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.
Download the latest release or build from source:
dist/ into your x64dbg root folder (deploys both x32 and x64)The MCP server starts automatically. Default ports:
0.0.0.0:90940.0.0.0:9095Add 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: ...
71 MCP tools covering the full x64dbg debugging workflow.
| Tool | Description |
|---|---|
GetDebugState |
Current debugger state, PID, instruction pointer |
LoadBinary |
Load an executable into the debugger |
ExecuteDebuggerCommand |
Run any x64dbg command |
ListCommandsByCategory |
List available MCP tools |
SearchForStrings |
Search process memory for text |
GetEventLog |
Last N debugger events (exceptions, breakpoints, DLL loads) |
ClearEventLog |
Clear the event log |
EvalExpression |
Evaluate any x64dbg expression (address, register, arithmetic) |
AttachProcess |
Attach to a running process by PID |
Echo |
Echo input back |
| Tool | Description |
|---|---|
GetCurrentAddress |
Current EIP/RIP with label and comment |
Disassemble |
Disassemble N instructions at an address |
DisassembleFunction |
Disassemble an entire function by boundaries |
ReadMemory |
Hex dump of process memory |
WaitForPause |
Block until target pauses |
run |
Resume execution (F9) |
StepInto |
Single-step into calls (F7) |
StepOver |
Step over calls (F8) |
StepOut |
Run until return (Ctrl+F9) |
PauseDebug |
Pause the target (F12) |
StopDebug |
Terminate debug session |
RestartDebug |
Restart debug session |
SetBreakpoint |
Set INT3 breakpoint at address/symbol |
SetHardwareBreakpoint |
Set hardware breakpoint (DR0-DR3, read/write/execute) |
SetConditionalBreakpoint |
Set breakpoint with condition expression and optional log |
EnableBreakpoint |
Enable a breakpoint at a given address |
DisableBreakpoint |
Disable a breakpoint without deleting it |
ToggleBreakpoint |
Toggle a breakpoint between enabled and disabled |
DeleteBreakpoint |
Remove a breakpoint |
DeleteAllBreakpoints |
Remove all breakpoints (normal, hardware, memory) |
ResetHitCount |
Reset a breakpoint's hit counter to zero |
ListBreakpoints |
List all active breakpoints |
GetAllRegisters |
Dump all general-purpose registers |
SetRegister |
Set a CPU register value |
GetCallStack |
Current thread call stack |
GetThreads |
List all threads with IDs and instruction pointers |
SwitchThread |
Switch active thread context |
SuspendThread |
Suspend a thread by its thread ID |
ResumeThread |
Resume a suspended thread |
ListModules |
List loaded modules with base addresses and sizes |
GetMemoryMap |
Memory regions with addresses, sizes, and protection |
GetDumpableRegions |
List committed, readable memory regions |
AllocateMemory |
Allocate memory in the target process |
FreeMemory |
Free allocated memory in the target process |
WriteMemToAddress |
Patch memory with hex bytes |
RestorePatches |
Restore all patches to original bytes |
Assemble |
Assemble an instruction at an address |
CommentOrLabelAtAddress |
Add comment/label in disassembly |
SetBookmark |
Set a bookmark at an address |
DeleteBookmark |
Delete a bookmark |
ListBookmarks |
List all bookmarks |
GetImports |
Show module import table |
GetExports |
Show module export table |
SearchSymbols |
Search for symbols matching a pattern |
ListSymbols |
List exported symbols of a module |
GetPatches |
List all memory patches |
FindPattern |
Scan module memory for byte pattern with ?? wildcards |
GetStrings |
Extract ASCII strings from a module's memory |
GetReferences |
Find CALL/JMP xrefs to a target address |
GetFunctions |
List analyzed functions with addresses and labels |
AnalyzeModule |
PE structure analysis: sections, EP, image size |
DetectOEP |
Detect Original Entry Point for packed executables |
DumpMemory |
Save memory region to file on disk |
DumpModule |
Dump an entire module to a file |
RunToAddress |
Run until hitting a specific address |
TraceInto |
Step N instructions recording address + disassembly |
FollowPointer |
Dereference pointer chain N levels deep |
WatchExpressions |
Evaluate multiple expressions in one call |
GetSEHChain |
Walk Structured Exception Handler chain (x32) |
GetPEB |
Read Process Environment Block fields |
GetArguments |
Read function arguments from stack/registers |
Go to Plugins > x64dbg-MCP Server > Configure MCP Server... to change the bind address, port, and auth token.
0.0.0.0 — listen on all interfaces (for WSL/remote access)127.0.0.1 — local-only accessA Bearer token is auto-generated on first run and required on every request. The MCP server has full debugger control and can read/write process memory — all requests without a valid token receive 401 Unauthorized. Click Generate in the config dialog to rotate the token, or Copy to copy it to clipboard. Clients must include the token as an Authorization: Bearer <token> header.
Changes take effect immediately — the server auto-restarts on save. Config is persisted to mcp_config.json next to the x64dbg executable.
Requires [Zi