
Servidor MCP para Ghidra

O ghidraMCP é um servidor Model Context Protocol que permite que LLMs façam engenharia reversa de aplicações de forma autônoma. Ele expõe inúmeras ferramentas da funcionalidade principal do Ghidra para clientes MCP.
https://github.com/user-attachments/assets/36080514-f227-44bd-af84-78e29ee1d7f9
Servidor MCP + Plugin Ghidra
Primeiro, baixe a release mais recente deste repositório. Ela contém o plugin do Ghidra e o cliente MCP Python. Em seguida, você pode importar o plugin diretamente no Ghidra.
File -> Install Extensions+GhidraMCP-1-2.zip (ou a versão de sua escolha) na release baixadaFile -> Configure -> DeveloperEdit -> Tool Options -> GhidraMCP HTTP ServerGuia de Instalação em Vídeo:
Teoricamente, qualquer cliente MCP deve funcionar com o ghidraMCP. Três exemplos são fornecidos abaixo.
Para configurar o Claude Desktop como cliente MCP do Ghidra, vá para Claude -> Settings -> Developer -> Edit Config -> claude_desktop_config.json e adicione o seguinte:
{
"mcpServers": {
"ghidra": {
"command": "python",
"args": [
"/ABSOLUTE_PATH_TO/bridge_mcp_ghidra.py",
"--ghidra-server",
"http://127.0.0.1:8080/"
]
}
}
}
Como alternativa, edite este arquivo diretamente:
/Users/YOUR_USER/Library/Application Support/Claude/claude_desktop_config.json
O IP e a porta do servidor são configuráveis e devem ser definidos para apontar para a instância do Ghidra de destino. Se não forem definidos, ambos usarão o padrão localhost:8080.
Para usar o GhidraMCP com o Cline, é necessário também executar o servidor MCP manualmente. Primeiro, execute o seguinte comando:
python bridge_mcp_ghidra.py --transport sse --mcp-host 127.0.0.1 --mcp-port 8081 --ghidra-server http://127.0.0.1:8080/
O único argumento obrigatório é o transporte. Se todos os outros argumentos não forem especificados, eles usarão os valores padrão acima. Quando o servidor MCP estiver em execução, abra o Cline e selecione MCP Servers no topo.

Em seguida, selecione Remote Servers e adicione o seguinte, garantindo que a url corresponda ao host e à porta do MCP:
http://127.0.0.1:8081/sseOutro cliente MCP que suporta múltiplos modelos no backend é o 5ire. Para configurar o GhidraMCP, abra o 5ire e vá para Tools -> New e defina as seguintes configurações:
python /ABSOLUTE_PATH_TO/bridge_mcp_ghidra.pylib/ deste projeto:Ghidra/Features/Base/lib/Base.jarGhidra/Features/Decompiler/lib/Decompiler.jarGhidra/Framework/Docking/lib/Docking.jarGhidra/Framework/Generic/lib/Generic.jarGhidra/Framework/Project/lib/Project.jarGhidra/Framework/SoftwareModeling/lib/SoftwareModeling.jarGhidra/Framework/Utility/lib/Utility.jarGhidra/Framework/Gui/lib/Gui.jarmvn clean package assembly:single
O arquivo zip gerado inclui o plugin Ghidra compilado e seus recursos. Esses arquivos são necessários para que o Ghidra reconheça a nova extensão.