MCP Server for WinDbg Crash Analysis

io.github.svnscha由 GitHub 账号 svnscha 发布v1.6.0更新于 Oct 24, 2026

A Model Context Protocol server for Windows crash dump analysis using WinDbg/CDB

已验证STDIO仅桌面开发者工具安全与监控

概览

AI 生成的概览

一个本地 MCP 服务器,通过驱动 WinDbg 的 cdb.exe 和 kd.exe,让助手分析 Windows 崩溃转储并调试活动的用户态或内核目标。

可以做什么
列出并打开目录中的崩溃转储(含内核转储),自动执行 !analyze -v、调用栈、模块和线程等初步分析,并可批量比较多个转储。连接到活动的用户态远程调试服务器,或通过 KDNET、命名管道、串口连接内核目标。在已打开的会话上运行任意 WinDbg/KD 命令,中断正在运行的目标,等待其再次停止,并关闭会话。可同时保持多个会话,每个会话用各自的会话 ID 区分。
适用场景
当你手上有 Windows .dmp 或内核转储,想让助手定位异常或蓝屏原因时适用;也适合中断活动的用户态或内核目标并用自然语言查看状态。还适用于批量筛查大量转储,或通过 HTTP 从另一台机器驱动调试主机。
运行要求
需要 Windows 以及 Debugging Tools for Windows 或 Microsoft Store 版 WinDbg,以提供 cdb.exe 和 kd.exe(会自动检测)。以本地 stdio 进程运行,可通过 uvx 或 pip 安装(需 Python 3.10 或更高版本),也可使用签名的独立可执行文件。可选环境变量 CDB_PATH 和 _NT_SYMBOL_PATH;符号默认从 Microsoft 符号服务器下载,可能需要网络访问。
安装前请注意
该服务器会在你的机器上执行真实的调试器命令,并可附加到活动目标;关闭内核会话会恢复目标机器运行。调试器输出可能包含机密或个人信息,可选用过滤脚本在数据发送给模型前进行脱敏。符号解析可能访问 Microsoft 符号服务器。这是独立的社区项目,并非微软官方的 WinDbg MCP。

安装

在 SourceWeft 中

  1. 打开 控制台中的 MCP Server for WinDbg Crash Analysis,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

MCP Server for WinDbg Crash Analysis

[CI] [Docs] [PyPI] [License: MIT] [Platform: Windows] [Python 3.10+]

A Model Context Protocol server that bridges AI models with WinDbg for crash dump analysis, user-mode remote debugging, and kernel debugging.

[!TIP] Looking for AI debugging built into WinDbg itself? Microsoft now ships an official WinDbg MCP, starting with WinDbg 1.2610.1001.0. You enable it in WinDbg's MCP service settings, and chat with your active debugging session from VS Code with GitHub Copilot or from the GitHub Copilot CLI. If that is what you want, start there:

This project is an independent, community-built alternative. It runs cdb.exe / kd.exe headless, so it fits when you want to use another MCP client, drive a debugger from another machine over HTTP, or script triage across many dumps without opening the WinDbg UI.

Overview

This server drives the Windows debuggers - CDB for user mode (dumps and -remote) and KD for kernel targets (-k) - so you can debug in natural language: "Show me the call stack and explain this access violation" or "Open a kernel session and tell me which driver bugchecked."

It is not a magical auto-fix. It is a Python wrapper around cdb.exe / kd.exe that lets an LLM run real debugger commands and reason about the output.

Features

  • Crash dump analysis - open a .dmp/.mdmp/.hdmp and get automated triage (!analyze -v, stacks, modules, threads) in a single call.
  • User-mode remote debugging - attach to a live cdb/WinDbg debug server (-remote) over TCP, a named pipe, or COM, and break in on demand.
  • Kernel debugging - attach to a kernel target (-k, driven by kd.exe) over KDNET, a named pipe, or serial; the server waits for the target and breaks in for you.
  • Run any WinDbg/KD command - drive an open session with arbitrary commands (kb, !process 0 0, !heap, lm, ...) described in natural language.
  • Session ids - every open returns a session id; several sessions (dumps, remote, kernel) can be open at once and are addressed independently.
  • Resilient live sessions - per-call timeouts, and a slow live command that outruns its timeout is broken into with CTRL+BREAK and the session resynchronized instead of wedging.
  • Multi-dump triage - discover and compare many dumps across a directory.
  • Text filter hooks - a --filter-script can redact PII/secrets from tool arguments and output before they leave the machine.
  • stdio or HTTP - run locally over stdio, or as a streamable-HTTP service you drive from another machine.

Use cases

You haveYou want toGuide
A .dmp from a crash or a blue screenRoot-cause it: exception or bugcheck, faulting frame, why it happenedAnalyze a crash dump
A live user-mode process (via cdb -server)Break in and inspect a hang or live stateDebug a remote target
A KD-enabled machine or VMDebug drivers, bugchecks, and boot-time issuesDebug a kernel target
A folder full of dumpsTriage the batch and find the common signatureTriage multiple dumps
A debugging host, but you work elsewhereDrive it over HTTP from another machineDebug from another machine
Dumps with secrets or PIIScrub tool output before it leaves the boxRedact sensitive data

Tools

Every open_* tool returns an opaque session_id (e.g. cdb-1a2b3c4d); pass it to the matching run_*, close_*, send_ctrl_break, and wait_for_break calls. User-mode targets (dumps and -remote) run under cdb.exe; kernel targets and kernel dumps run under kd.exe.

ToolPurpose
list_dumpsList crash dump files in a directory
open_cdb_dumpOpen and triage a crash dump
open_cdb_remoteAttach to a user-mode remote debug server (-remote)
open_kd_sessionAttach to a kernel target (-k, KDNET / named pipe / serial)
open_kd_dumpOpen and triage a kernel crash dump (MEMORY.DMP, minidump)
run_cdb_commandRun a command on a user-mode session
run_kd_commandRun a command on a kernel session
close_cdb_sessionClose a user-mode session
close_kd_sessionClose a kernel session (resumes the target machine)
send_ctrl_breakBreak into a running live session
wait_for_breakWait for a target you resumed with g to stop again

Parameters, timeouts, and the built-in triage prompts are in the tools reference.

Quick start

[!NOTE] Claude Code in enterprise environments: when managed settings define allowedMcpServers, plugin-bundled MCP servers may be silently skipped (Claude Code issue #32882). I recommend installing and registering the server manually, then optionally adding the skills or agents plugin. The server must still be permitted by your organization's MCP policy.

Prerequisites

Python is not a prerequisite in itself. Each route below states what it needs.

Install in Claude Code

Install the server plugin if needed, then optionally add skills, agents, or both:

PluginServerIncluded workflows
mcp-windbg-uvxLaunched by the plugin with uvxMCP tools only
mcp-windbg-skillsUses the uvx plugin or your own MCP connectionFour optional skills
mcp-windbg-agentsUses the uvx plugin or your own MCP connectionOptional crash-analyst agent

Server with uvx

The shortest path: two lines, no pip install, no MCP configuration to edit. Adds the eleven tools, with symbols preconfigured. Skills and agents are installed separately.

/plugin marketplace add svnscha/mcp-windbg/plugin install mcp-windbg-uvx@mcp-windbg

Needs uv, which supplies uvx: winget install astral-sh.uv. The plugin uses it to fetch the pinned server from PyPI on first use, so there is nothing else to install. See the plugin README for symbols and options.

Registering the server yourself

If you would rather not use the plugin, or you already run the package:

bash
pip install mcp-windbgclaude mcp add mcp-windbg -s user -e _NT_SYMBOL_PATH="SRV*C:\Symbols*https://msdl.microsoft.com/download/symbols" -- python -m mcp_windbg

Needs Python 3.10 or higher. Add either optional plugin below for guided workflows or an agent.

Skills for an existing server

After installing the uvx plugin or registering mcp-windbg yourself, optionally add the four skills:

text
/plugin marketplace add svnscha/mcp-windbg/plugin install mcp-windbg-skills@mcp-windbg

Invoke /mcp-windbg-skills:analyze-dump, /mcp-windbg-skills:debug-remote, /mcp-windbg-skills:kernel-debug, or /mcp-windbg-skills:windbg-doctor. This plugin uses your configured MCP connection and adds no server, runtime, symbol settings, or crash-analyst agent. It works with a native executable, Python installation, or HTTP service exposing the mcp-windbg tools. Install this plugin alongside uvx for the server and skills together, or omit it to use just the tools. When upgrading from a version that bundled skills, install this plugin to keep the workflows; their invocation prefix changes from /mcp-windbg: to /mcp-windbg-skills:. The server's built-in MCP prompts remain available independently of these plugins. See the plugin guide for updating or switching plugins.

Agents for an existing server

text
/plugin marketplace add svnscha/mcp-windbg/plugin install mcp-windbg-agents@mcp-windbg

Ask: "Use the mcp-windbg-agents:crash-analyst agent on C:\dumps\app.dmp". It investigates the dump and returns a verdict, evidence, and next steps through your existing MCP connection. It requires neither uvx nor the skills plugin. When upgrading from a version that bundled the agent, install this plugin to keep it.

Install without Python

Every release attaches mcp-windbg.exe: one signed executable carrying its own interpreter and every dependency. cdb.exe is still required. Point your client's command at the file and give it no args.

The release also publishes SHA256SUMS, and the binary is code signed, so both are checkable:

powershell
(Get-FileHash .\mcp-windbg.exe -Algorithm SHA256).HashGet-AuthenticodeSignature .\mcp-windbg.exe | Format-List Status, SignerCertificate

Status should read Valid. The signer is Liasoft GmbH, which sponsors the signing certificate; the project is written by Sven Scharmentke.

Install in another client

bash
pip install mcp-windbg

Needs Python 3.10 or higher. Then point the client at python -m mcp_windbg. For VS Code (GitHub Copilot), press F1 and select MCP: Open User Configuration to enable it in every workspace:

json
{    "servers": {        "mcp_windbg": {            "type": "stdio",            "command": "python",            "args": ["-m", "mcp_windbg"],            "env": {                "_NT_SYMBOL_PATH": "SRV*C:\\Symbols*https://msdl.microsoft.com/download/symbols"            }        }    }}

See the client configuration guide for Claude Desktop, Copilot CLI, Autohand Code, HTTP, and from-source setups.

Start debugging

Restart your client, then ask for what you want:

text
Analyze the crash dump at C:\dumps\app.dmpConnect to tcp:Port=5005,Server=192.168.0.100 and show me the current thread stateOpen a kernel session on net:port=50000,key=1.2.3.4, run !analyze -v, and tell me which driver bugchecked

Server options (--cdb-path, --kd-path, --symbols-path, --filter-script, --transport, ...) are documented in the command-line reference.

Documentation

svnscha.github.io/mcp-windbg

TopicDescription
Getting startedSetup and your first crash dump analysis
Analyze a crash dumpRoot-cause an exception: faulting frame, why it happened
Debug a remote targetBreak into a live user-mode process and inspect a hang
Debug a kernel targetDrivers, bugchecks, and boot-time issues over KDNET or a pipe
Triage multiple dumpsScan a folder and find the common signature
Debug from another machineRun the server over HTTP and drive it remotely
Redact sensitive dataScrub secrets from tool output before it leaves the box
ReferenceTools, prompts, CLI options, and client configuration
TroubleshootingCommon issues and solutions
DevelopmentRun from a local checkout and point a client at the dev build

Blog

Read about the development journey: The Future of Crash Analysis: AI Meets WinDbg

License

MIT

来源:README.md,提交 48e4350

工具

0
SourceWeft 曾在隔离沙箱中以无凭据方式启动该软件包一次,以列出其工具,但未能完成:服务器未能启动。

版本历史

6
  1. v1.6.0最新Oct 24, 2026
  2. v1.5.1Oct 10, 2026
  3. v1.5.0Oct 9, 2026
  4. v1.4.0Oct 1, 2026
  5. v1.3.1Sep 30, 2026
  6. v0.12.2Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分