Unified x64dbg MCP Server - 181+ tools merged from 5 implementations
35 tools with consistent naming (verb_noun pattern) and basic schemas, but critical gaps in parameter descriptions and output documentation. All tools have descriptions (10-50 chars, below 194-char baseline), but 60% lack parameter-level descriptions. No output schemas documented. Error handling absent. Schemas present but minimal, most parameters lack type constraints beyond basic string/number. No tool annotations (readOnlyHint, destructiveHint). Composition is reasonable (single responsibility per tool), but chaining support unclear due to missing output specs.
Analyze module for functions
Attach to running process by PID
Attach to process by name
Bypass NtQueryInformationProcess check
Bypass OutputDebugStringA trap
Bypass PEB.BeingDebugged check
Delete a breakpoint by address
No output schemas documented. LLMs cannot infer what fields to expect from tool responses, breaking downstream tool chaining and forcing wasteful discovery calls.
Descriptions are 40 - 60 characters (below 194-char baseline). Too terse to guide LLM selection. E.g., 'Pause execution' lacks context on when to use it vs. step_into/step_over.
Many parameters lack descriptions. E.g., 'condition' in set_breakpoint has a description, but 'size' in protect_memory lacks guidance on valid range or units.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 54 | 2026-07-28+ | v2 |
Detach from process
Disable breakpoint without deleting
Disassemble instructions at address
Dump memory region to file
Dump PE file to disk
Enable a disabled breakpoint
Find code references to address
Get module export table
Get function boundaries
Get module details
Get all CPU registers
List all active breakpoints
List all loaded modules
Pause execution
Change memory protection
Read memory at specified address
Restart debuggee
Run to specified address
Search for byte pattern in memory
Set a hardware or software breakpoint
Set a memory access breakpoint
Set register value
Start debugging an executable
Step into next instruction
Step over next instruction
Stop current debug session
Execute with trace logging
Write data to memory
No error handling guidance. Tools do not document what errors can occur, whether they are retryable, or what the LLM should do next (e.g., 'Address not found, try search_memory first').
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). LLMs cannot distinguish safe read-only tools from destructive ones, risking accidental data loss.