Skip to main content
Glama

ghidraMCP

by LaurieWired

logotipo de ghidra\_MCP

ghidraMCP

ghidraMCP es un servidor de Protocolo de Contexto de Modelo que permite a los LLM realizar ingeniería inversa de aplicaciones de forma autónoma. Expone numerosas herramientas de la funcionalidad principal de Ghidra a los clientes MCP.

https://github.com/user-attachments/assets/36080514-f227-44bd-af84-78e29ee1d7f9

Características

Servidor MCP + complemento Ghidra

  • Descompilar y analizar binarios en Ghidra
  • Renombrar automáticamente métodos y datos
  • Enumere métodos, clases, importaciones y exportaciones

Instalación

Prerrequisitos

Ghidra

Primero, descarga la última versión de este repositorio. Esta contiene el plugin de Ghidra y el cliente MCP de Python. Después, puedes importar el plugin directamente a Ghidra.

  1. Ejecutar Ghidra
  2. Seleccione File -> Install Extensions
  3. Haga clic en el botón +
  4. Seleccione GhidraMCP-1-2.zip (o la versión que elija) de la versión descargada
  5. Reiniciar Ghidra
  6. Asegúrese de que GhidraMCPPlugin esté habilitado en File -> Configure -> Developer
  7. Opcional : Configure el puerto en Ghidra con Edit -> Tool Options -> GhidraMCP HTTP Server

Guía de instalación en vídeo:

https://github.com/user-attachments/assets/75f0c176-6da1-48dc-ad96-c182eb4648c3

Clientes de MCP

En teoría, cualquier cliente MCP debería funcionar con ghidraMCP. A continuación se muestran tres ejemplos.

Ejemplo 1: Claude Desktop

Para configurar Claude Desktop como un cliente Ghidra MCP, vaya a Claude -> Settings -> Developer -> Edit Config -> claude_desktop_config.json y agregue lo siguiente:

{ "mcpServers": { "ghidra": { "command": "python", "args": [ "/ABSOLUTE_PATH_TO/bridge_mcp_ghidra.py", "--ghidra-server", "http://127.0.0.1:8080/" ] } } }

Alternativamente, edite este archivo directamente:

/Users/YOUR_USER/Library/Application Support/Claude/claude_desktop_config.json

La IP y el puerto del servidor son configurables y deben apuntar a la instancia de Ghidra de destino. Si no se configuran, ambos se establecerán como localhost:8080.

Ejemplo 2: Cline

Para usar GhidraMCP con Cline , también es necesario ejecutar manualmente el servidor MCP. Primero, ejecute el siguiente 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/

El único argumento obligatorio es el transporte. Si no se especifican los demás argumentos, se usarán los anteriores por defecto. Una vez que el servidor MCP esté en ejecución, abra Cline y seleccione MCP Servers en la parte superior.

Selección de Cline

Luego, seleccione Remote Servers y agregue lo siguiente, asegurándose de que la URL coincida con el host y el puerto de MCP:

  1. Nombre del servidor: GhidraMCP
  2. URL del servidor: http://127.0.0.1:8081/sse

Ejemplo 3: 5ire

Otro cliente MCP compatible con múltiples modelos en el backend es 5ire . Para configurar GhidraMCP, abra 5ire y vaya a Tools -> New y configure lo siguiente:

  1. Clave de herramienta: ghidra
  2. Nombre: GhidraMCP
  3. Comando: python /ABSOLUTE_PATH_TO/bridge_mcp_ghidra.py

Construyendo desde la fuente

  1. Copie los siguientes archivos desde su directorio Ghidra al directorio lib/ de este proyecto:
  • Ghidra/Features/Base/lib/Base.jar
  • Ghidra/Features/Decompiler/lib/Decompiler.jar
  • Ghidra/Framework/Docking/lib/Docking.jar
  • Ghidra/Framework/Generic/lib/Generic.jar
  • Ghidra/Framework/Project/lib/Project.jar
  • Ghidra/Framework/SoftwareModeling/lib/SoftwareModeling.jar
  • Ghidra/Framework/Utility/lib/Utility.jar
  • Ghidra/Framework/Gui/lib/Gui.jar
  1. Construya con Maven ejecutando:

mvn clean package assembly:single

El archivo zip generado incluye el plugin de Ghidra compilado y sus recursos. Estos archivos son necesarios para que Ghidra reconozca la nueva extensión.

  • lib/GhidraMCP.jar
  • extensiones.propiedades
  • Módulo.manifiesto
-
security - not tested
A
license - permissive license
-
quality - not tested

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Un servidor MCP que permite a los LLM realizar ingeniería inversa de aplicaciones de forma autónoma al exponer la funcionalidad de Ghidra, lo que permite la descompilación, el análisis y el cambio de nombre automático de métodos y datos.

  1. Características
    1. Instalación
      1. Prerrequisitos
      2. Ghidra
      3. Clientes de MCP
      4. Ejemplo 1: Claude Desktop
      5. Ejemplo 2: Cline
      6. Ejemplo 3: 5ire
    2. Construyendo desde la fuente

      Related MCP Servers

      • -
        security
        A
        license
        -
        quality
        A MCP server that transforms code repositories from GitHub, GitLab, or local directories into LLM-friendly formats, preserving context and structure for better AI processing.
        Last updated 4 months ago
        9
        Python
        Apache 2.0
      • A
        security
        F
        license
        A
        quality
        An MCP server that implements a structured workflow for LLM-based coding, guiding development through feature clarification, documentation generation, phased implementation, and progress tracking.
        Last updated 3 months ago
        10
        14
        TypeScript
        • Apple
      • A
        security
        A
        license
        A
        quality
        MCP Server for automated reverse engineering with IDA Pro.
        Last updated 21 days ago
        22
        2,743
        Python
        MIT License
        • Linux
        • Apple
      • A
        security
        A
        license
        A
        quality
        MCP server for reverse engineering that enables interaction with IDA Pro for analysis tasks such as decompilation, disassembly, and memory engagement reports.
        Last updated 4 months ago
        24
        41
        Python
        MIT License

      View all related MCP servers

      MCP directory API

      We provide all the information about MCP servers via our MCP API.

      curl -X GET 'https://glama.ai/api/mcp/v1/servers/LaurieWired/GhidraMCP'

      If you have feedback or need assistance with the MCP directory API, please join our Discord server