x32dbg MCP服务器
x32dbg调试器的全功能模型上下文协议(MCP)服务器
让克劳德直接访问 48+全面的x32dbg调试功能 通过自然语言!
______________________________________________________________________
🎯 这是什么?
该项目通过模型上下文协议(MCP)将x32dbg(Windows调试器)连接到Claude AI。你可以:
- 使用自然语言调试程序
- 让Claude分析函数,找到加密货币,设置断点
- 获取实时调试上下文和帮助
- 自动化逆向工程工作流程
______________________________________________________________________
🚀 快速开始
先决条件
安装
1.构建插件
只需双击 build.bat -它处理一切!
# OR manually:
cmake -S . -B build32 -A Win32 -DBUILD_BOTH_ARCHES=OFF
cmake --build build32 --config Release编译后的插件将位于: build/MCPx64dbg.dp32
2.安装插件
将插件复制到x32dbg-plugins文件夹:
C:\Program Files\x64dbg\release\x32\plugins\MCPx64dbg.dp323.设置Python MCP服务器
# Install dependencies
pip install mcp requests
# Test the server
python mcp_server.py4.配置您的Claude应用程序
慰问:
claude mcp add x32dbg python C:\Tools\mcp_server.py --transport stdio --env X64DBG_URL=http://127.0.0.1:8888⚠️ 重要: 克劳德桌面和克劳德代码(VSCode)使用 不同的配置文件!
选项A:克劳德桌面(独立应用程序)
编辑: %APPDATA%\Claude\claude_desktop_config.json (Windows)或 ~/Library/Application Support/Claude/claude_desktop_config.json (Mac/Linux)
{
"mcpServers": {
"x32dbg": {
"command": "python",
"args": ["C:\\path\\to\\x64dbgMCP\\mcp_server.py"],
"env": {
"X64DBG_URL": "http://127.0.0.1:8888",
"X64DBG_TIMEOUT": "30"
}
}
}
}选项B:克劳德代码(VSCode扩展)⭐ 你可能在用这个!
创建 .vscode/settings.json 在您的工作空间中:
{
"claude.mcpServers": {
"x32dbg": {
"command": "python",
"args": ["C:\\path\\to\\x64dbgMCP\\mcp_server.py"],
"env": {
"X64DBG_URL": "http://127.0.0.1:8888",
"X64DBG_TIMEOUT": "30"
}
}
}
}然后完全重新启动VSCode!
______________________________________________________________________
✅ 验证安装
- 启动x32dbg
- 检查插件是否已加载: 按
ALT+L要打开日志,您应该看到:
[MCP] Plugin loading...
[MCP] HTTP server started on port 8888- 测试HTTP API: 打开浏览器
http://127.0.0.1:8888/status - 启动克劳德桌面 并验证x32dbg服务器是否出现在MCP设置中
______________________________________________________________________
📖 用法示例
基本调试
You: "Set a breakpoint at 0x401000 and show me the disassembly"
Claude: [Uses set_breakpoint and disassemble_at tools]功能分析
You: "Analyze the current function"
Claude: [Uses analyze_function prompt, gets registers, disassembles, analyzes flow]存储器操作
You: "Read 32 bytes from ESP and show me the stack contents"
Claude: [Uses get_register("esp") and read_memory tools]自动化
You: "Find all calls to GetProcAddress in the current module"
Claude: [Uses get_modules, searches memory, sets breakpoints]______________________________________________________________________
🔧 可用工具(48+)
📚 看 API参考文献.md 获取完整的API文档
核心业务(8)
- 状态与控制、命令执行、调试控制
- 寄存器读/写、内存读/写
- 拆卸、模块列表
模式与记忆搜索(3)
find_pattern_in_memory-搜索字节模式memory_search-查找所有事件search_and_replace_pattern-图案替换
符号与分析(15)
get_symbols-列出函数、导入、导出set_label/get_label/delete_label/get_all_labels-标签管理set_comment/get_comment/delete_comment/get_all_comments-评论管理resolve_label-将标签名称解析为地址
堆叠操作(3)
stack_push/stack_pop/stack_peek-堆栈操作
功能操作(4)
add_function/get_function_info/delete_function/get_all_functions
书签操作(4)
set_bookmark/check_bookmark/delete_bookmark/get_all_bookmarks
装配工操作(2)🆕
assemble_instruction-组装成字节码assemble_and_patch-组装并写入内存
CPU标记操作(3)🆕
get_cpu_flag/set_cpu_flag-读取/写入单个标志get_all_cpu_flags-一次获取所有标志(ZF、OF、CF、PF、SF、TF、AF、DF、IF)
其他公用设施(3)
parse_expression-计算复杂表达式resolve_api_address-在调试对象中查找API地址resolve_label_address-标签分辨率
______________________________________________________________________
🎨 MCP资源
资源为Claude提供了上下文信息:
debugger://status-当前调试状态debugger://modules-已加载模块列表
______________________________________________________________________
🎭 MCP提示
提示指导克劳德完成常见任务:
analyze_function-启动功能分析工作流find_crypto-搜索加密模式trace_execution-安装执行跟踪
______________________________________________________________________
🏗️ 建筑
Claude Desktop/VSCode
↕ (MCP Protocol)
mcp_server.py (Python)
↕ (HTTP REST API)
MCPx64dbg.dp32 (C++ Plugin)
↕ (x64dbg SDK)
x32dbg.exe______________________________________________________________________
🐛 故障排除
插件未加载
- 检查日志(x32dbg中的ALT+L)
- 确保插件位于正确的文件夹中
- 尝试重新启动x32dbg
HTTP服务器没有响应
- 检查端口8888是否未使用:
netstat -ano | findstr 8888 - 检查防火墙设置
- 尝试在插件中更改端口(需要重新编译)
MCP服务器无法连接
- 确保x32dbg在加载插件的情况下运行
- 手动测试:
curl http://127.0.0.1:8888/status - 检查X64DBG_URL环境变量
请求超时错误
如果您经常看到“请求超时-x32dbg是否正在运行?”:
原因: 一些调试操作(如 run, step_over,在运行时设置断点)可能需要比默认的30秒超时更长的时间,特别是在调试器需要运行到远程断点的情况下。
解决方案: 通过环境变量增加超时时间:
{
"claude.mcpServers": {
"x32dbg": {
"command": "python",
"args": ["C:\\path\\to\\x64dbgMCP\\mcp_server.py"],
"env": {
"X64DBG_URL": "http://127.0.0.1:8888",
"X64DBG_TIMEOUT": "60"
}
}
}
}根据您的需要调整超时值(秒):
- 违约:
30秒(一般调试) - 推荐:
60秒(复杂分析) - 长跑:
120+秒(等待罕见事件)
构建错误
- 确保Visual Studio安装时支持C++
- 确保CMake在PATH中
- 检查
deps/pluginsdk文件夹存在
______________________________________________________________________
📦 存储库结构
x64dbgMCP/
├── build.bat # One-click build script
├── mcp_server.py # Python MCP server (950+ lines, 48 tools)
├── src/
│ └── MCPx64dbg.cpp # C++ plugin main file (modular, 650+ lines)
├── include/ # Modular handler headers (8 files)
│ ├── mcp_common.h # Common utilities and helpers
│ ├── mcp_handlers_pattern.h # Pattern/memory search
│ ├── mcp_handlers_annotation.h # Symbols/labels/comments
│ ├── mcp_handlers_stack.h # Stack operations
│ ├── mcp_handlers_function.h # Functions/bookmarks
│ ├── mcp_handlers_misc.h # Misc utilities
│ ├── mcp_handlers_assembler.h # Assembler operations
│ └── mcp_handlers_flags.h # CPU flags
├── deps/
│ └── pluginsdk/ # x64dbg SDK headers
├── build/
│ └── MCPx64dbg.dp32 # Compiled plugin
├── CMakeLists.txt # Build configuration
├── API-REFERENCE.md # Complete API documentation
├── MCPx64dbg_old.cpp.backup # Original version (backup)
└── README.md # This file______________________________________________________________________
🎯 特性
✅ 完整的x64dbg SDK集成 -48多种工具,涵盖所有主要的x64dbg API ✅ 模块化架构 -干净、可维护的C++,具有有序的头文件 ✅ 完整的调试工具包 -内存、寄存器、断点、符号、标签、注释 ✅ 高级模式搜索 -查找字节模式,搜索并替换 ✅ 堆栈操作 -直接堆栈操作 ✅ 功能分析 -定义、分析和管理功能 ✅ 装配工支架 -组装指令,动态修补内存 ✅ CPU标志控制 -读取/写入所有CPU标志(ZF、OF、CF、PF、SF、TF、AF、DF、IF) ✅ JSON响应 -Claude的结构化数据 ✅ MCP资源和提示 -上下文信息和指导工作流程 ✅ 交叉处理 -无需注入DLL ✅ 安全 -全面的错误处理 ✅ 快速 -直接访问x64dbg SDK
______________________________________________________________________
🤝 贡献
这是x64dbgMCP的全面全功能实现,并进行了重大改进:
版本3.0(当前)
- ✨ 48+MCP工具 (从16上升)
- 🏗️ 模块化C++架构 有8个有序的头文件
- 🔍 完整的x64dbg SDK集成 -模式搜索、符号、标签、注释、堆栈、函数、书签、汇编器、CPU标志
- 📖 全面的API文件
- 🎯 生产准备就绪 具有强大的错误处理能力
- 🆕 装配支架 -即时组装和修补
- 🆕 CPU标志控制 -读取/写入所有CPU标志
2.0版本(上一版本)
- C++插件代码减少63%
- 使用适当的MCP支持完成Python重写
- 增加了资源和提示
版本1.0(原始)
- 基本x64dbg MCP集成
______________________________________________________________________
📝 许可证
麻省理工学院许可证-随心所欲!
______________________________________________________________________
🙏 鸣谢
- 最初的想法来自 Wasdubya/x64dbgMCP
- 为x64dbg调试器构建
- 使用Anthropic的模型上下文协议(MCP)
______________________________________________________________________
🔗 链接
______________________________________________________________________
快乐逆转! 🔍
