Skip to main content

Model Context Protocol for x64dbg Buy Me A Coffee

An MCP server that can bridge various LLMS with the x64dbg debugger, providing direct access to debugging functionality through prompts!

Features

  • 40+ x64dbg SDK Tools - Provides access to almost every debugging feature given by the SDK for smart debugging.
  • Cross-Architecture Support - Works with both x64dbg and x32dbg.
  • API Compatibility - (Disclaimer: As of 8-2025, Anthropic added rate limiting to their messages API, super harsh on free tiers. I recommend using models from Cursor UI)
    • Provides API access to Claude from CMD for even faster debugging and longer consecutive tool chain calls.
    • Runable from cmd using the args given in the python file. (API Key, max tool calls, etc.)
    • IF you have issues connecting to the x64dbg session from the python file, open the logs tab in x64dbg to view what port the plugin is running on and add that as the argument to your python script.

Quick Setup

  1. Download Plugin

    • Grab .dp64 or .dp32 from this repo's build/release directory
    • Copy to your local: [x64dbg_dir]/release/x64/plugins/
  2. Configure Claude / MCP Supported App

    • Copy x64dbgmcp.py from this repos src directory
    • Update local claude_desktop_config.json with path to x64dbgmcp.py
{
  "mcpServers": {
    "x64dbg": {
      "command": "Path\\To\\Python",
      "args": [
        "Path\\to\\x64dbg.py"
      ]
    }
  }
}
  1. Start Debugging
    • Launch x64dbg
    • Start Claude Desktop
    • Check plugin loaded successfully (ALT+L in x64dbg for logs)

Build from Source

  • git clone [repository-url]
  • cd x64dbgmcp
  • cmake -S . -B build
  • cmake --build build --target all_plugins --config Release

Tips

  1. Use the --target all_plugins argument to specify both x32 and x64, otherwise use -A flag to distinguish between either x64 or Win32 build. For example 32 bit build would be:
  • cmake -S . -B build32 -A Win32 -DBUILD_BOTH_ARCHES=OFF
  • cmake --build build32 --config Release
  1. If you do not provide the model you are working with with context of where your exe is, it wont have the capabiltiy to restart the binary if it crashes or hangs. So, provide it with the full path of the binary so it can call the CMDEXEC function like "init C:\Absolute\Path\to\EXE"

This will allow for even more automated analysis.

Usage Examples

Register inspection:

"What's the current value of RAX and RIP registers?"

Pattern searching:

"Find the pattern '48 8B 05' in the current module"

Example from Cursor

Metadata

Release files for iflow-mcp_wasdubya-x64dbgmcp 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for iflow-mcp_wasdubya-x64dbgmcp 1.0.0
File Size Uploaded
iflow_mcp_wasdubya_x64dbgmcp-1.0.0.tar.gz 9.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for iflow-mcp_wasdubya-x64dbgmcp 1.0.0
File Interpreter ABI Platform
iflow_mcp_wasdubya_x64dbgmcp-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 19.1 kB

Release files / iflow_mcp_wasdubya_x64dbgmcp-1.0.0.tar.gz

Download URL iflow_mcp_wasdubya_x64dbgmcp-1.0.0.tar.gz
Size 9.3 kB
Tags Source
SHA-256 checksum
How to use checksums
e6295df011fc84b805256335a7e0ce6b97ae17e971e8ecfb5d21571ab8066bf1
BLAKE2b-256 checksum
How to use checksums
f8b2e85b83eaeaa3a087a08bac80741c171afae59e751edf3e382803e9e9582d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / iflow_mcp_wasdubya_x64dbgmcp-1.0.0-py3-none-any.whl

Download URL iflow_mcp_wasdubya_x64dbgmcp-1.0.0-py3-none-any.whl
Size 9.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d1d9e39f5d99219c6de7a5062d64c040a2159431a4ddb276f4441e86d6328737
BLAKE2b-256 checksum
How to use checksums
0bbbfbc187e6d4c3b7a924cb3f9c389ecf1ed5c7ad28b021bef73b5db3da0772
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page