pkgxray es una herramienta de línea de comandos, escrita en Node sin dependencias, que analiza paquetes de npm y servidores del Model Context Protocol (MCP) antes de su instalación o conexión, sin ejecutar el código del paquete. Su comando principal, pkgxray guard, descarga el tarball, lo aísla en una cuarentena y emite un veredicto SAFE, REVIEW o BLOCK, acompañado de la evidencia citada y un código de salida estable (0, 2 o 3) apto para integración en CI.
La herramienta responde a un problema concreto: asistentes de código basados en IA instalan paquetes y se conectan a servidores MCP a gran velocidad, a menudo sin supervisión humana. Según Sonatype, en 2025 se identificaron 454.648 paquetes maliciosos de código abierto en ecosistemas monitorizados, y solo en el cuarto trimestre se contabilizaron 394.877, con el 99,8% del malware procedente de npm. Mientras los antivirus tradicionales inspeccionan lo que se ejecuta, pkgxray examina lo que se va a instalar.
A diferencia de npm audit u OSV-Scanner, que consultan CVEs conocidos, pkgxray incorpora análisis de confianza: compara el tarball publicado con el repositorio de GitHub etiquetado, verifica la atestación de procedencia, detecta inyección de instrucciones en documentación y comentarios dirigida a agentes, y evalúa la superficie de capacidades del manifiesto MCP. La ruta de veredicto usa heurísticas deterministas, sin LLM, para evitar que un texto inyectado pueda manipular la decisión.
Entre sus funciones adicionales figuran un servidor MCP (pkgxray-mcp), un proxy en tiempo de ejecución (pkgxray mcp-proxy) que reaudita los cambios en tools/list, un hook de instalación integrable con Claude Code, Cursor, Windsurf, Factory Droid y Codex, y un motor de políticas centralizado en .pkgxray.json. La herramienta es deliberadamente conservadora: la calibración de cero falsos positivos por bloqueo se aplica a los 1.000 paquetes más descargados y se valida en CI, pero el ecosistema MCP más reciente se trata caso por caso. Su limitación explícita: razona sobre los bytes del tarball, por lo que un payload descargado tras la instalación puede esquivarla, lo que recomienda combinarla con sandboxing en tiempo de ejecución.
