
Um Servidor de Debugger MCP para executáveis Windows (x86 e x64). Expõe funcionalidades de depuração como MCP Tools para análise estática/dinâmica do depurado e inspeção de memória através de uma interface limpa.
Este projeto é um Servidor Debugger MCP autoral e leve, desenvolvido para aprendizado e experimentação. O Servidor Debugger MCP expõe funcionalidades de depuração como ferramentas MCP, permitindo que clientes MCP externos controlem a execução, inspecionem a memória e analisem o depurado através de uma interface limpa.
O depurador é escrito em C++ e implementa funcionalidades principais de depuração do zero, sem depender de frameworks de depuração existentes. Para decodificação de instruções, é utilizado o desmontador Zydis. O depurador é integrado a um servidor MCP escrito em C#, construído usando o SDK oficial MCP C#.
Palavras-chave:
servidor MCP, depurador, desmontador, análise estática, análise dinâmica, depuração, IA, EXE, executável, Windows

Gemini CLI foi usado como Cliente MCP na Demonstração
Este guia fornece um processo passo a passo para compilar e integrar o MCP.Server.exe no Visual Studio Code no Windows.
Antes de configurar o VS Code, você deve compilar o servidor MCP:
MCPDebugger.sln no Visual Studio.MCP.Server.exe existe na sua subpasta \build\Release\x86 ou \build\Release\x64.Certifique-se de que as seguintes extensões estão instaladas e ativas no VS Code:
Ctrl + Shift + P para abrir a Paleta de Comandos.> e selecione "Add MCP Server".command (stdio) como o tipo de servidor.Insira o caminho completo para o MCP.Server.exe que você compilou no Passo 1.
[!ATENÇÃO] Apenas uma arquitetura (x86 ou x64) deve estar ativa como servidor MCP por vez. Se você trocar de arquitetura, remova a entrada do servidor anterior primeiro.
| Arquitetura | Exemplo de Caminho a Inserir |
|---|---|
| Windows x64 | C:\YourProject\bin\x64\MCP.Server.exe |
| Windows x86 | C:\YourProject\bin\x86\MCP.Server.exe |
Ctrl + Alt + I), mude para o Modo Agente e clique no ícone Ferramentas. Suas ferramentas MCP devem agora estar listadas e prontas para uso. As ferramentas MCP podem ser ativadas / desativadas aqui.

Para tarefas complexas de depuração e engenharia reversa usando este depurador MCP, o Claude Opus 4.5 apresentou de longe os melhores resultados a partir de novembro de 2025. Ele lidou consistentemente com rastreamentos de execução extensos, desmontagem detalhada e raciocínio em várias etapas de forma mais confiável do que outros modelos testados.
ChatGPT 4.1 e Gemini 2.5 Pro foram suficientes para cenários de análise mais simples, como execução passo a passo básica, inspeção de instruções e raciocínio direto de fluxo de controle. Esses modelos tiveram bom desempenho para os exemplos fornecidos nas pastas Example_x64 e Example_x86, mas mostraram limitações ao lidar com sessões de depuração mais complexas ou de longa duração.
O desempenho dos modelos pode mudar ao longo do tempo, mas o acima reflete o comportamento observado no momento do teste.
A depuração via MCP pode resultar em alto uso de tokens e custos elevados. As interações de IA são sem estado, o que significa que todo o contexto relevante de depuração (registradores, memória, desmontagem, módulos, etc.) deve ser transferido repetidamente a cada requisição.
Operações que frequentemente param a execução e retornam estado detalhado—como avanço passo a passo e breakpoints temporários—podem amplificar significativamente o consumo de tokens.
Se for necessária operação de baixo custo, é fortemente recomendado focar em análise estática e desabilitar as seguintes ferramentas MCP:
Desabilitar essas ferramentas reduz a quantidade de transferência repetida de estado e ajuda a manter o uso de tokens sob controle.
O repositório inclui projetos de exemplo para ajudar a começar com análise estática e depuração, localizados nas seguintes pastas:
Example_x64 e Example_x86
Os projetos Example_x64 e Example_x86 fornecem um aplicativo de console simples usado como alvo introdutório de depuração. O aplicativo solicita que o usuário insira uma senha em tempo de execução. A senha correta para ambos os exemplos é secret.
MCP_Debugging_Sessions
Uma pasta contendo sessões de depuração mais complexas que utilizam análise dinâmica e depuração. Nessas sessões, o Claude Opus 4.5 foi utilizado. Os alvos podem ser baixados aqui. Observe que os alvos foram desempacotados usando UPX -d antes de usar o Depurador MCP.
O servidor MCP expõe as seguintes ferramentas para interagir com o depurador:
Debugger_Start
Inicia o depurador para o executável especificado e para no breakpoint inicial do sistema.
Debugger_Stop
Para o depurador e encerra o processo do depurado.
Debugger_Continue
Continua a execução quando o depurado está parado em um breakpoint.
Debugger_ContinueToEntryPoint
Continua a execução do breakpoint do sistema até o ponto de entrada do programa.
Debugger_ContinueToBreakpoint
Continua a execução até que um breakpoint temporário em um endereço virtual especificado seja atingido.
Debugger_ContinueToApiBreakpoint
Continua a execução até que um breakpoint temporário em uma função de API especificada seja atingido.
Debugger_StepInto
Avança para a próxima instrução, entrando em chamadas de função.
Debugger_StepOver
Pula chamadas de função e continua para a próxima instrução.
Debugger_Disassemble
Desmonta a memória em um determinado endereço virtual e retorna instruções incluindo informações de símbolo.
Debugger_TryResolveString
Tenta resolver e ler uma string da memória do depurado.
Debugger_ReadMemory
Lê bytes brutos da memória do processo depurado.
Debugger_WriteMemory
Escreve bytes arbitrários na memória do depurado.
Debugger_GetModules
Retorna uma lista dos módulos atualmente carregados para o processo depurado.
Debugger_GetModuleImports
Retorna as funções importadas de um módulo especificado.
Debugger_GetModuleExports
Retorna as funções exportadas de um módulo especificado.
Debugger_GetModuleSections
Retorna informações de seção de um módulo especificado.
A solução do Visual Studio está organizada nos seguintes projetos:
MCP.Debugger
O depurador principal implementado em C++. Inclui uma ponte C++/CLI para expor uma interface gerenciada para clientes .NET.
MCP.Debugger.Tester
Um aplicativo WinForms simples usado para testar o depurador através da interface gerenciada .NET.
MCP.Debugger.Types
Um assembly de tipos que define estruturas e tipos de dados compartilhados para transições gerenciadas-nativas entre o depurador e clientes .NET.
MCP.Server
O servidor MCP em C# que expõe funcionalidades do depurador como ferramentas MCP para clientes externos.