Servidor MCP determinista y local-first para IDA Pro/Home: 109 operaciones de ingeniería inversa con esquema estricto, hallazgos respaldados por evidencia y ediciones de IDB controladas por políticas.
⚠️ Archivado — reemplazado por el servidor oficial IDA MCP de Hex-Rays
Este proyecto ya no se mantiene. El 2026-09-27 Hex-Rays SA publicó el Servidor Oficial IDA MCP e IDA Nexus. El desarrollo se detuvo el mismo día en
1.0.0a4.Para el uso actual, instale el suyo:
uvx ida-hcli mcp install. Requiere IDA 9.4+ conidaliby funciona completamente sin interfaz gráfica; el plugin de GUI es opcional.Este repositorio se conserva por su suite de pruebas, documentación y registro arquitectónico. Consulte ARCHIVE.md para el relato completo del cierre: qué era el proyecto, por qué perdió, qué partes eran andamiaje y qué partes todavía tienen valor. El resto de este README describe un sistema que ya no se recomienda para su uso.

IDA Pro MCP es un servidor local de Model Context Protocol para IDA Pro. Permite que un cliente MCP inspeccione un IDB, solicite a IDA resultados de análisis deterministas y, cuando se permita explícitamente, escriba anotaciones u otros cambios de vuelta en el IDB. El proceso anfitrión se ejecuta fuera de IDA e inicia un proceso IDA headless separado para cada sesión de forma predeterminada.
ida_* con esquema estricto y
descubrimiento en vivo mediante tools/list e ida_help.La versión actual es 1.0.0a4. Este es software alfa. Los nombres públicos de las
operaciones ida_*, los esquemas y el formato del espacio de trabajo pueden cambiar antes de una
versión estable 1.0.0. La superficie de cliente predeterminada contiene 102 operaciones con esquema exacto.
Utilice el descubrimiento en vivo para obtener el contrato completo: tools/list enumera cada
operación con su esquema, e ida_help(topic="...") devuelve los argumentos exactos
y un ejemplo para una operación.
Necesita:
idat/idat64 utilizable.
La evidencia de pruebas en vivo del repositorio cubre IDA 9.3 y 9.4; 9.2 es el
mínimo de compatibilidad declarado.El análisis normal no requiere un proveedor de inteligencia. Los modos de
inteligencia explícitos son jev, custom y disabled; el modo disabled mantiene
disponible la búsqueda léxica determinista y no hay fallback local, de Gemini ni de
modelo nativo.
El runtime predeterminado es idat: un proceso IDA headless por sesión. El
backend idalib es experimental, requiere una instalación de IDA 9.3 o superior
con el paquete idapro activado, y no es necesario para una primera instalación.
El instalador crea un entorno gestionado bajo la raíz de instalación, instala una copia congelada del checkout en él y escribe la configuración del cliente para las ubicaciones de cliente compatibles. Desde la raíz del repositorio, ejecute:
python3 install.py
Para una instalación de IDA conocida, pásala explícitamente:
python3 install.py --ida-dir /path/to/ida-pro-9.3
Para una ejecución no interactiva:
python3 install.py --yes --no-ida-prompt --ida-dir /path/to/ida-pro-9.3
El instalador también puede encontrar IDA a través de IDADIR, IDA_DIR, los ejecutables de IDA en PATH y los directorios de instalación comunes. --ida-version selecciona una versión cuando hay más de una instalación presente. Use --dry-run para inspeccionar primero los cambios planificados.
El instalador nunca descarga un modelo de proveedor ni un runtime. Puede crear o actualizar archivos de configuración para cada ubicación de cliente en su mapa de clientes integrado, incluidos los clientes que no están instalados en su máquina. Revise install-report.json en la raíz de instalación y elimine las entradas no utilizadas si es necesario. Los archivos de configuración regulares existentes se respaldan antes de modificarse; los archivos malformados, enlazados simbólicamente o no regulares se rechazan en lugar de sobrescribirse.
Reinicie el cliente MCP después de la instalación para que recargue su configuración.
Los arneses de agentes descubren la superficie de herramientas en vivo: tools/list enumera cada operación con su esquema, y ida_help(topic="...") devuelve los argumentos exactos y un ejemplo. No se instalan archivos de habilidades estáticos.
La raíz de instalación predeterminada es:
~/.local/share/ida-pro-mcp%LOCALAPPDATA%/ida-pro-mcpEstablezca IDA_PRO_MCP_HOME o pase --install-root para elegir otra ubicación.
Las versiones alfa son compiladas por GitHub Actions y publicadas manualmente como prereleases. Cuando haya una versión disponible, descargue el recurso bundle.zip o bundle.tar.gz y su archivo SHA256SUMS desde la
página de releases. Verifique la
suma de comprobación, extraiga el paquete y ejecute el instalador desde su directorio de nivel superior:
python3 install.py --yes --no-ida-prompt --ida-dir /path/to/ida-pro-9.3
El lanzamiento también contiene una wheel y una distribución de código fuente para instalaciones de Python mediante scripts. El paquete es la ruta más sencilla porque incluye el instalador y todos los archivos del proyecto necesarios para configurar un cliente MCP. Los lanzamientos son de calidad alfa; conserve el binario original y el IDB y lea las notas del lanzamiento antes de actualizar.
El instalador escribe la entrada del servidor para las rutas de configuración de cliente que conoce. Es compatible con Gemini CLI, Antigravity, Antigravity IDE, Antigravity CLI, Claude Code, Codex, Copilot CLI, OpenCode, Claude Desktop, Cursor, VS Code, Windsurf, Cline y Roo Code. OpenCode y los clientes de la familia Copilot usan formatos de configuración diferentes; deje que el instalador escriba esos archivos o siga la guía de configuración de OpenCode.
Para un cliente que usa el formato JSON común, la entrada es equivalente a:
{
"mcpServers": {
"ida-pro-mcp": {
"command": "/path/to/ida-pro-mcp/.venv/bin/python",
"args": ["-u", "-m", "ida_pro_mcp.host.server"],
"env": {
"IDA_PRO_MCP_HOME": "/path/to/ida-pro-mcp",
"IDADIR": "/path/to/ida-pro-9.3",
"IDA_MCP_TOOL_SURFACE": "agent"
}
}
}
}