This is the reference client of x64dbg Automate. The library builds on x64dbg's command execution engine and plugin API to provide an expressive, modern, and easy to use Python client. x64dbg Automate is useful in a wide variety of malware analysis, reverse engineering, and vulnerability hunting tasks.
The client implements the full RPC protocol provided by x64dbg-automate.
Full project documentation is published on: https://dariushoule.github.io/x64dbg-automate-pyclient/
See: Installation and Quickstart
🔔 All examples and sample code assume x64dbg is configured to stop on entry and system breakpoints, skipping TLS breakpoints.
The MCP server exposes x64dbg automation as Model Context Protocol tools for LLM clients like Claude Code.
pip install x64dbg_automate[mcp] --upgradeAdd to your .mcp.json (project or user level):
{
"mcpServers": {
"x64dbg": {
"command": "x64dbg-automate-mcp",
"env": {
"X64DBG_PATH": "C:\\path\\to\\x96dbg.exe"
}
}
}
}Setting X64DBG_PATH lets the MCP tools resolve x64dbg automatically — no need to pass the path on every start_session or connect_to_session call.
For local development, install from source with poetry and point .mcp.json at the entry point:
cd C:\path\to\x64dbg-automate-pyclient
poetry install --extras mcp{
"mcpServers": {
"x64dbg": {
"command": "poetry",
"args": [
"-C", "C:\\path\\to\\x64dbg-automate-pyclient",
"run", "x64dbg-automate-mcp"
],
"env": {
"X64DBG_PATH": "C:\\path\\to\\x96dbg.exe"
}
}
}
}See the MCP Server documentation for the full tool reference and usage walkthrough.
The client's environment is managed with poetry.
Update tests/conftest.py or provide the requisite environment to allow tests to pass.
poetry install --extras mcp --with dev
poetry env activate
python -m pytest # Test
python .\examples\assemble_and_disassemble.py C:\<you>\x64dbg\release\x64\x64dbg.exe # Run an exampleDocumentation is built using mkdocs
python -m mkdocs serve # dev
python -m mkdocs build # publishIssues, feature-requests, and pull-requests are welcome on this project ❤️🐛
My commitment to the community will be to be a responsive maintainer. Discuss with me before implementing major breaking changes or feature additions.