AI-Powered Windows Crash Dump Analysis Platform
MCP Nexus is a comprehensive Model Context Protocol (MCP) server that provides AI systems with advanced Windows crash dump analysis capabilities. It combines the power of Microsoft's debugging tools (WinDBG/CDB) with intelligent analysis workflows, making professional-grade crash investigation accessible to AI assistants.
MCP Nexus is a platform that provides structured access to Windows debugging tools through the Model Context Protocol. It makes crash dump analysis more accessible by providing standardized tools and real-time progress tracking.
Traditional Crash Analysis Challenges:
- π Complexity: Requires deep knowledge of Windows internals and debugging tools
- β±οΈ Time-consuming: Manual analysis can take hours or days
- π§ Expertise Required: Need specialized debugging skills and experience
- π Inconsistent Results: Different analysts may reach different conclusions
- π§ Tool Complexity: WinDBG/CDB have steep learning curves
MCP Nexus Solution:
- π§ Structured Access: Provides standardized tools for debugging operations
- β‘ Real-time Updates: Live progress tracking and notifications
- π Consistent Results: Provides structured output formats
- π MCP Integration: Works with AI clients through Model Context Protocol
- π οΈ Professional Tools: Built on Microsoft's industry-standard debugging infrastructure
- π Advanced Crash Analysis: Leverage WinDBG/CDB for comprehensive dump analysis
- π€ AI-Native Design: Built specifically for AI agent integration via MCP
- β‘ Command Batching: Intelligent command grouping for improved throughput
- π Real-time Notifications: Live updates during analysis operations
- π‘οΈ Session Management: Robust session lifecycle with automatic cleanup
- π― Extensible Architecture: PowerShell-based extension system for custom workflows
- π Structured Results: Parse debugging output into AI-friendly formats
- .NET 8.0 Runtime or SDK
- Windows Debugging Tools (WinDBG/CDB) - Download from Microsoft
# Clone the repository
git clone https://github.com/CapulusCodeNinja/mcp_nexus.git
cd mcp_nexus
# Build the project
dotnet build
# Run the server
dotnet run --project nexus/nexus.csprojAdd to .cursor/mcp.json:
{
"mcpServers": {
"mcp-nexus": {
"command": "dotnet",
"args": ["run", "--project", "C:\\path\\to\\mcp_nexus\\nexus\\nexus.csproj"],
"type": "stdio"
}
}
}Add to claude_desktop_config.json:
{
"mcpServers": {
"mcp-nexus": {
"command": "dotnet",
"args": ["run", "--project", "C:\\path\\to\\mcp_nexus\\nexus\\nexus.csproj"],
"cwd": "C:\\path\\to\\mcp_nexus"
}
}
}{
"mcpServers": {
"mcp-nexus": {
"type": "http",
"url": "http://0.0.0.0:5511/",
"headers": {
"Content-Type": "application/json"
}
}
}
}nexus_open_dump_analyze_session- Open a crash dump for analysisnexus_enqueue_async_dump_analyze_command- Execute WinDBG commands asynchronouslynexus_get_dump_analyze_commands_status- Get status of all commands (bulk polling)nexus_read_dump_analyze_command_result- Read individual command resultsnexus_cancel_dump_analyze_command- Cancel a running commandnexus_close_dump_analyze_session- Close session and cleanup resources
sessions- List all active debugging sessionscommands- List commands with filtering by session/stateextensions- List available PowerShell extension scriptsusage- Complete usage guide with exampleshealth- System health and metrics
Typical AI-driven crash analysis workflow:
- Open Session:
nexus_open_dump_analyze_sessionwith dump file path - Queue Commands: Use
nexus_enqueue_async_dump_analyze_commandfor:!analyze -v(automatic crash analysis)kL(stack trace with source lines)!threads(thread information)
- Monitor Progress:
nexus_get_dump_analyze_commands_status(bulk polling) - Retrieve Results:
nexus_read_dump_analyze_command_resultfor each command - Close Session:
nexus_close_dump_analyze_sessionfor cleanup
Example conversation with AI assistant:
User: "Analyze the crash dump at C:\dumps\myapp.dmp"
AI: I'll analyze that crash dump for you.
[Opens session, queues !analyze -v, kL, !threads commands]
Analysis Results:
- Exception: Access Violation (0xC0000005)
- Faulting Module: myapp.exe
- Root Cause: Null pointer dereference in ProcessData()
- Stack shows: ProcessData+0x42 called with null buffer
Recommendation: Add null check before buffer access.
nexus/ - Main application (entry point, hosting)
nexus_config/ - Configuration and logging
nexus_engine/ - Debug engine (CDB sessions, command queue)
nexus_engine_batch/ - Command batching system
nexus_protocol/ - MCP protocol layer (tools, resources)
nexus_setup/ - Service installation and management
nexus_external_apis/ - Shared utilities (file system, process, etc.)
nexus_extensions/ - PowerShell extension system
- Modular Architecture: Clear separation of concerns across libraries
- Singleton Pattern: Core engine accessible without DI overhead
- Command Queue: Asynchronous command processing with state management
- Batching: Transparent command grouping for improved performance
- Event-Driven: Real-time notifications for command state changes
- β 1247 total tests (all passing)
- π 87.1% line coverage (target: 75%)
- π 77.8% branch coverage (target: 75%)
- β‘ Fast execution (~12 seconds for full suite)
- π― Zero build warnings
MCP Nexus intelligently batches commands for improved throughput:
{
"McpNexus": {
"DebugEngine": {
"Batching": {
"Enabled": true,
"MinBatchSize": 2,
"MaxBatchSize": 5,
"ExcludedCommands": [
"!analyze", "!dump", "!heap", "!memusage"
]
}
}
}
}{
"McpNexus": {
"SessionManagement": {
"MaxConcurrentSessions": 10,
"SessionTimeoutMinutes": 30,
"CleanupIntervalSeconds": 300,
"DefaultCommandTimeoutMinutes": 10,
"DeleteDumpFileOnSessionClose": false
}
}
}{
"Logging": {
"LogLevel": "Information"
}
}Supported levels: Trace, Debug, Information, Warning, Error, Critical
Create custom analysis workflows with PowerShell:
# extensions/my-analysis/my-analysis.ps1
Import-Module McpNexusExtensions
$result1 = Invoke-NexusCommand -Command "!analyze -v"
$result2 = Invoke-NexusCommand -Command "kL"
# Process results and return structured data
return @{
CrashType = "Access Violation"
RootCause = "Null pointer dereference"
Recommendations = @("Add null checks", "Review error handling")
}Receive live updates during analysis:
{
"jsonrpc": "2.0",
"method": "notifications/commandStatus",
"params": {
"commandId": "cmd-abc123",
"sessionId": "session-xyz789",
"state": "Executing",
"timestamp": "2025-01-15T10:30:00Z"
}
}Run as a Windows Service for production environments:
# Install as service
dotnet run --project nexus/nexus.csproj -- service install
# Start service
net start MCP-Nexus
# Stop service
net stop MCP-Nexus
# Uninstall service
dotnet run --project nexus/nexus.csproj -- service uninstallThis project is licensed under the Apache License 2.0 - see the LICENSE file for details.
The Apache License 2.0 allows you to:
- β Use the software commercially
- β Modify and distribute
- β Sublicense
- β Use patent claims
β οΈ Include copyright notice
- Model Context Protocol - MCP specification
- C# SDK for MCP - MCP implementation
- Microsoft Debugging Tools - WinDBG/CDB
- NLog - Logging framework
