Skip to main content
Glama

WinDbgMCP

IMPORTANT

DEVELOPMENT NOTICE: WinDbgMCP & DebugExt (de.dll) are under active development. Pull Requests (PRs) are currently CLOSED. However, feedback and Issues are welcome — please report bugs or feature suggestions on GitHub Issues! Visit our GitHub Wiki for full documentation, command catalogs, and setup guides.

CAUTION

CRITICAL SECURITY LOCK: The master driver SYSTEM_PROMPT.md is set to Read-Only by default to prevent prompt injection and unauthorized modification during live AI debugging sessions. If you need to edit master directives:

  1. Unlock: attrib -r SYSTEM_PROMPT.md (or (Get-Item SYSTEM_PROMPT.md).IsReadOnly = $false in PowerShell)

  2. Make your edits and save.

  3. Re-lock for security: attrib +r SYSTEM_PROMPT.md (or (Get-Item SYSTEM_PROMPT.md).IsReadOnly = $true)

Model Context Protocol (MCP) server for WinDbg & WinDbgX, custom-built for Google Antigravity, Claude Code, Cursor, Codex, Cline, Windsurf, VS Code, OpenAI / OpenAI-Compatible frameworks, and Local LLMs (Ollama / LM Studio).

WinDbgMCP bridges AI coding assistants directly into live Windows debugging sessions (user-mode, kernel-mode, remote targets, and crash dumps), pairing standard debugger automation with advanced reverse-engineering analysis engines ported from DebugExt (de.dll).


Installation & Distribution

WinDbgMCP is distributed as a self-contained Python package bundling pre-compiled native de.dll binaries (x64 and x86). No C++ compiler or manual path configuration required.

Option 1: Direct Pip Wheel Installation (Pre-built Package)

Install the pre-built .whl package directly via pip:

pip install https://raw.githubusercontent.com/mnemonic-re/WinDbgX-MCP/main/WinDbgMCP/dist/windbg_mcp-0.1.0-py3-none-any.whl

(Or install locally if you cloned the repository: pip install dist/windbg_mcp-0.1.0-py3-none-any.whl)

Option 2: Install from GitHub Repository Source

pip install git+https://github.com/mnemonic-re/WinDbgX-MCP.git#subdirectory=WinDbgMCP

Option 3: Global Command Line Entry Point

Once installed, launch the MCP server binary from any terminal or AI client host configuration:

windbg-mcp --help

Related MCP server: X64Dbg MCP Server

Quick Start (Automated Bootstrap)

Automate all environment checks, debugger binary discovery (cdb.exe/kd.exe), symbol directory creation (C:\Symbols), and auto-register WinDbgMCP into all local AI client configurations with a single command:

python scripts/install_mcp.py

(or python -m windbg_mcp.bootstrap)


Live GUI Progress Watching & AI Intent Streaming

If you want to watch AI debugging progress live on your desktop inside the graphical WinDbg GUI (WinDbgX / DbgX.Shell.exe):

  1. Launch WinDbg GUI on desktop, open your target executable or attach to your process.

  2. In the WinDbg GUI command bar at the bottom, type:

    .server tcp:port=5005
  3. Ask your AI assistant to connect:

    open_cdb_remote(connection_string="tcp:Port=5005,Server=localhost")
  4. Live AI Intent Streaming: MCP execution tools support an optional reasoning parameter. When passed, WinDbgMCP streams === [AI INTENT]: <reasoning> === banners live into the WinDbg console right before command execution.

  5. Milestone Banners: The AI can write prominent double-bordered block banners into WinDbg GUI using annotate_session(milestone="...") for major phase shifts.

The AI assistant will drive the session remotely while every step and reasoning banner executes live before your eyes in your WinDbg GUI window!


📖 Real-World Case Study & Tool Usage Example

For a complete end-to-end demonstration of WinDbgMCP tool usage — featuring an AI agent performing automated assembly disassembly, algorithm extraction, key calculation for GigaApp.exe, and live visual stepping — read our published research article:

👉 WinDbgX-MCP AI Reverse Engineering Protocol (GigaApp Case Study)


Transport Modes: stdio (IPC) vs sse (Network HTTP)

WinDbgMCP supports two transport protocols:

  1. Stdio Mode (Default):

    • Launched automatically by desktop AI clients (Antigravity, Claude, Cursor, Codex, Cline) as a local background process via stdin/stdout.

    • Zero network overhead, zero firewall prompts, 100% local IPC.

    python -m windbg_mcp
  2. SSE HTTP Network Mode (--sse):

    • Spins up a web server listening on a TCP port (e.g. 8000) for remote debugging, web-based LLM apps, or cross-machine AI execution.

    python -m windbg_mcp --sse --port 8000

Capabilities Overview

  • Unrestricted WinDbg Command Passthrough:

    • AI agents can execute ANY native command, meta-command, or bang extension via run_cdb_command or run_kd_command (k, r, u, dt, !process, !thread, !heap, !address, bp, ba, .reload, etc.).

  • 4 Connection Modes:

    • Crash Dump Triage (open_cdb_dump)

    • User-Mode Remote Server (open_cdb_remote)

    • Kernel Debugging Target (open_kd_session_tool via KDNET, VM Pipe, Serial)

    • Live Local Process Attach (attach_live_process by PID or Process Name)

  • Multi-Session Orchestration:

    • Debug user-mode processes and kernel drivers concurrently (list_sessions, switch_session).

  • Google Antigravity Visual Artifact Tools:

    • render_control_flow_graph: Disassembles target functions into basic blocks and outputs native Mermaid flowcharts (graph TD) rendered visually in Antigravity artifacts.

    • dump_memory_visual: Formatted hex/ASCII byte tables with symbol annotations.

    • dump_rwx_payload: Dumps unpacked dynamic memory buffers to disk for malware payload analysis.

  • Extended Reverse Engineering & Analysis Engines:

    • Calling convention parameter inspection (inspect_function_args).

    • String reference scanner (scan_string_references).

    • Code XREF finder (find_code_xrefs).

    • Virtual memory protection auditor & RWX alerts (audit_memory_regions).

    • Static (Ghidra/PE-bear) <-> Live Memory offset converter (translate_offset for rva, fo2va, va2fo).

    • Relocatable AOB pattern generator (generate_signature).

    • Hook, injection & shellcode detector (scan_hooks_and_injections).

    • PE header, PEB anti-debug & TEB stack audit (audit_pe_security).

    • Memory snapshot byte & pointer diffing (diff_memory_snapshots).

    • Automated BSOD & crash dump Root Cause Analysis (triage_crash_report).

    • Dynamic C/C++ struct & offset reconstructor (reconstruct_struct).

    • Dynamic WinAPI tracing payload generator (trace_api_calls).

    • Dynamic PE header scanner & payload unpacker (unpack_dynamic_pe).

    • Kernel EPROCESS lists, SSDT & driver dispatch auditor (audit_kernel_integrity).

    • Thread callstack unbacked return address & spoofing scanner (scan_stack_spoofing).

    • Automated ROP gadget finder & categorizer (find_rop_gadgets).

    • Heuristic heap corruption & UAF detector (audit_heap_corruption).


Multi-Client Setup (configs/)

WinDbgMCP ships with ready-to-use configuration files under configs/:

  • Google Antigravity & Claude Code: configs/antigravity.mcp.json or root mcp.json

  • Claude Desktop: configs/claude_desktop.json

  • Cursor: configs/cursor.mcp.json

  • Codex: configs/codex.mcp.json

  • Cline (VS Code): configs/cline.mcp.json

  • Windsurf: configs/windsurf.mcp.json

  • VS Code / Roo Code / Continue: configs/vscode_mcp.json

  • OpenAI & OpenAI-Compatible (OpenRouter, vLLM, LiteLLM): configs/openai_agents.json

  • Local LLMs (Ollama, LM Studio, Jan, LocalAI): configs/local_ollama_lmstudio.json

NOTE

Machine-Independent Path Resolution: WinDbgMCP automatically resolves all environment paths (_NT_SYMBOL_PATH, _NT_DEBUGGER_EXTENSION_PATH, Python binaries) dynamically using Windows environment variables (%USERPROFILE%, %LOCALAPPDATA%, %SystemDrive%, %ProgramFiles%) without hardcoding personal user directory names or hostnames.


Supported Models Catalog (Frontier & Free Tier)

WinDbgMCP supports dynamic resolution for all modern LLM providers:

  • Google Gemini: gemini-3.5-flash (Recommended), gemini-3.5-flash-lite, gemini-3.6-flash, gemini-3.7-flash, gemini-3.1-pro-preview, gemini-2.5-pro

  • OpenAI Frontier: gpt-5.6, gpt-5.5, gpt-5, gpt-4.5, gpt-4o

  • Anthropic Frontier: claude-5-opus, claude-4.5-sonnet, claude-4-opus, claude-3-7-sonnet, claude-3-5-sonnet-20241022

  • Mistral AI: codestral-latest, mistral-large-latest, mistral-small-latest

  • Groq & Cerebras: deepseek-r1-distill-llama-70b, kimi-k2-instruct, llama-3.3-70b-versatile, gpt-oss-120b

  • OpenRouter Free Tier Examples:

    • nvidia/nemotron-3-nano-30b-a3b:free

    • google/gemma-4-31b-it:free

    • poolside/laguna-s-2.1:free

    • nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free

    • nvidia/nemotron-3-super-120b-a12b:free

    • nvidia/nemotron-3-ultra-550b-a55b:free

    • openai/gpt-oss-20b:free

  • Ollama Cloud & Local AI (LM Studio): qwen3-coder, gpt-oss:120b, qwen2.5-coder-14b-instruct-abliterated@q5_k_m, codestral-22b-v0.1-abliterated-v3


Complete WinDbgMCP FastMCP Tool Reference (38 Tools)

Tool Name

Category

Description

list_sessions

Session

Enumerate all open sessions & indicate active default session.

switch_session

Session

Switch active default session by session_id.

list_dumps

Session

Enumerate .dmp crash dump files with file metadata.

open_cdb_dump

Session

Open crash dump & run initial triage (!analyze -v, kb, lm).

open_cdb_remote

Session

Connect to user-mode remote debugger server (tcp, npipe, com).

open_kd_session_tool

Session

Attach to kernel target via KDNET (net), VM Pipe (com:pipe), or Serial.

attach_live_process

Session

Attach cdb.exe to a live running process by PID or executable name.

close_session

Session

Safely close debugging session (supports resume=true for kernel targets).

run_cdb_command

Execution

Execute ANY user-mode command (k, r, u, dt, !heap, etc.).

run_kd_command

Execution

Execute ANY kernel-mode command (!process 0 0, !thread, vertarget).

annotate_session

Execution

Write prominent milestone/reasoning block banners into WinDbg GUI console.

send_ctrl_break

Execution

Interrupt running target & resynchronize debugger prompt.

wait_for_break

Execution

Asynchronously block until target halts on a breakpoint or exception.

render_control_flow_graph

Visual

Build native Mermaid CFG diagram (graph TD) for Antigravity visual rendering.

dump_memory_visual

Visual

Format memory bytes in clean hex/ASCII markdown tables with symbol labels.

dump_rwx_payload

Visual

Dump unpacked memory regions/shellcode to local disk files.

update_scratchpad

Reporting

Append live notes/traces to analysis/<TARGET>/mds/scratchpad.md.

generate_final_report

Reporting

Synthesize scratchpad into analysis/<TARGET>/mds/<TARGET>_Final_Report.md.

update_analysis_report

Reporting

Append technical analysis section to target scratchpad log.

inspect_function_args

DebugExt

Inspect live fastcall/stdcall parameters & string/symbol previews.

scan_string_references

DebugExt

Scan module code/data for ASCII and UTF-16 strings (strref).

find_code_xrefs

DebugExt

Locate code references (CALL, JMP, RIP-rel) to target address (xrefs).

audit_memory_regions

DebugExt

Audit virtual memory protection states & flag RWX pages (memmap).

translate_offset

DebugExt

Convert RVA, Raw File Offset (fo2va), or VA to File Offset (va2fo).

generate_signature

DebugExt

Generate relocatable byte pattern signature (makesig / findsig).

scan_hooks_and_injections

DebugExt

Detect inline detours, IAT hooks, driver IRP table hooks, and shellcode.

audit_pe_security

DebugExt

Audit PE headers, ASLR/DEP/CFG, PEB anti-debug, & TEB stack limits.

diff_memory_snapshots

Analysis Engine

Compare byte regions, page protection, and pointers between two memory snapshots.

triage_crash_report

Analysis Engine

Automated BSOD & crash dump root-cause analyzer (RCA).

reconstruct_struct

Analysis Engine

Auto-reconstruct C/C++ struct definitions & ReClass.NET schemas from raw memory.

trace_api_calls

Analysis Engine

Generate WinAPI tracing breakpoint sets & argument interception payloads.

unpack_dynamic_pe

Analysis Engine

Scan dynamic memory for PE signatures (MZ/PE), validate headers, & export payloads.

audit_kernel_integrity

Analysis Engine

Audit kernel EPROCESS lists, SSDT tables, & driver dispatch arrays for DKOM & rootkits.

scan_stack_spoofing

Analysis Engine

Inspect thread stack frames for unbacked return addresses, alignment anomalies, & ROP chains.

find_rop_gadgets

Analysis Engine

Scan executable modules for ROP gadgets (pop rcx; ret, mov [rax], rbx, stack pivots).

audit_heap_corruption

Analysis Engine

Automate !heap -p -a & Pageheap diagnostics to pinpoint corrupted chunk headers & UAF bugs.

get_ai_provider_status

AI Management

Scan 11 AI providers (Gemini, OpenAI, Anthropic, etc.) & env setup status.

configure_ai_provider

AI Management

Initialize & validate AI provider config from environment variables.


DebugExt (de.dll) Complete Command Reference Catalog

Below is the complete reference catalog of ported bang (!de.*) commands provided by DebugExt (de.dll).

Loading & Unloading de.dll in WinDbg / CDB:

  • Automatic Load: .load de (WinDbgMCP automatically configures _NT_DEBUGGER_EXTENSION_PATH)

  • Explicit 64-bit Load: .load binaries\extensions\x64\de.dll

  • Explicit 32-bit Load: .load binaries\extensions\x86\de.dll

  • Unload: .unload de

  • Interactive Help: !de.dxhelp

============================================================
 DebugExt - Analysis & Navigation Command Reference
============================================================

Navigation Shortcuts:
  si                         Step Into
  so                         Step Over
  su                         Step Out
  ret                        Run to RET
  toaddr <address>           Run to address
  tobranch                   Run to branch
  tocall                     Run to CALL

Utilities:
  !de.regs                          Display registers
  !de.disasm (dis / disasm)         Disassemble with DML colorization
  !de.lmod                          List loaded modules
  !de.dxhelp                        Display DebugExt help

Memory Inspection (x64dbg style):
  !de.dq (dqx <addr> [L-20])        DML QWord dump + ASCII + symbols/strings
  !de.dd (ddx <addr> [L-20])        DML DWord dump + ASCII + symbols/strings
  !de.db (dbx <addr> [L-20])        DML Byte dump + ASCII + dimmed nulls
  !de.dp (dpx / tele <addr> [L-20]) Telescoping pointer chain dump
  !de.dumpmem (dxx <addr> [L-20])   Smart architecture-aware memory dump

Function Analysis:
  !de.function                      Inspect current function
  !de.function <address>            Find function containing address
  !de.function <function>           Resolve function by symbol name

Call Graph & Stack Analysis:
  !de.bt (bt / callstack)           DML Callstack & parameter retriever
  !de.callees                       List callees of current function
  !de.callees <address>             List callees of function at address
  !de.callees <function>            List callees of named function
  !de.callers                       List callers of current function
  !de.callers <address>             List callers of function at address
  !de.callers <function>            List callers of named function

Hook & Security Scanner:
  !de.vtable (vtable <ptr> [cnt])   Inspect virtual method table & detours
  !de.hooks (hooks [module])        Scan module for inline / IAT detour hooks
  !de.injections (injections)       Scan unmapped executable pages / reflective DLLs
  !de.codecaves (codecaves [mod])   Scan module PE alignment gaps for code caves

PE & Windows Internals:
  !de.peb (peb)                     PEB anti-debug audit & process parameters
  !de.teb (teb)                     Thread Environment Block & stack limits
  !de.pe (pe <mod/addr>)            PE header & security mitigations audit (ASLR/DEP/CFG)

Advanced Reversing & Inspection (x64dbg style):
  !de.args (args / params)           Inspect live function calling convention parameters
  !de.strref (strref / strings) [mod] Scan module for ASCII & UTF-16 string references
  !de.xrefs (xrefs / xref) <target>  Find code cross-references (CALL/JMP/RIP-rel) to target
  !de.memmap (memmap / pages)        Virtual memory protection & commit map + RWX alert

Offsets & Address Translations:
  !de.gooffset (gooffset / rva) [mod] <off>  Go to RVA offset in module & disassemble
  !de.fo2va (fo2va / fileoffset / fo) <off>  Convert Raw Disk File Offset to live Virtual Address
  !de.va2fo (va2fo / offsetof / rvaof) <addr> Convert Live VA / Symbol to RVA & Raw File Offset

Kernel & Driver Audit:
  !de.drivers (drivers)             List loaded kernel drivers & device objects
  !de.irphooks (irphooks <drv>)     Scan driver IRP MajorFunction dispatch table for hooks

Binary Dumping:
  !de.dumpmod <module>              Dump selected module from memory (e.g. C:\temp\dump.exe)

Session Logger (Astro MDX):
  !de.startlog [file] [title]       Start DML-to-MDX session logger
  !de.stoplog                       Stop session logger and finalize .mdx file

📖 Full Documentation & Guides: Visit our GitHub Wiki for complete operational guides, AI provider configurations, command references, and architecture documentation.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables AI-assisted reverse engineering and debugging through x64dbg integration. Provides 40+ tools for breakpoint management, memory operations, register manipulation, code analysis, process control, and advanced debugging features.
    22
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to interact with the WinDbg GUI through the Model Context Protocol using a PyKD-based plugin integration. It supports executing debugger commands, inspecting registers, reading memory, and performing automated crash analysis via natural language.
    4
    -