Edison Watch

MCP Dependency Pinning

Protección de la cadena de suministro para servidores MCP instalados mediante ejecutores de paquetes como npx y uvx.

Edison Watch previene ataques de cadena de suministro anclando automáticamente las dependencias del servidor MCP en la primera ejecución.

Propósito

Los servidores MCP instalados mediante ejecutores de paquetes (npx, uvx) pueden ser vulnerables a ataques de cadena de suministro si las dependencias se actualizan de forma maliciosa. El anclaje asegura:

  • Ejecución reproducible: El mismo código exacto se ejecuta cada vez
  • Resistencia a manipulación: Los lockfiles se almacenan de forma segura y no pueden modificarse sin una acción del admin
  • Control de versiones: Las versiones exactas de los paquetes están bloqueadas, evitando actualizaciones inesperadas

Cómo Funciona

  1. Resolución en la Primera Ejecución: Cuando un servidor que usa npx o uvx se monta por primera vez, Edison Watch:

    • Resuelve el grafo completo de dependencias transitivas
    • Genera un lockfile (npm: package-lock.json, Python: uv.lock)
    • Almacena el lockfile de forma segura en la base de datos local
  2. Tiempo de Ejecución Efímero: En cada montaje:

    • Crea un directorio temporal de ejecución
    • Instala las dependencias desde el lockfile almacenado (no desde los registros de paquetes)
    • Ejecuta el servidor desde el entorno de ejecución aislado
  3. Fail-Closed: Si el anclaje falla (problemas de red, lockfile corrupto), el servidor no arrancará. Esto asegura que no se ejecute código sin anclar.

Controles del Administrador

Toda la gestión del anclaje se realiza a través del panel del administrador:

  • Ver Estado: Consulta las versiones ancladas y las fechas en la vista general del servidor
  • Clear Pin: Elimina el lockfile en caché para forzar un nuevo anclaje (útil después de actualizaciones de paquetes)
  • Clear All Pins: Operación masiva para eliminar todos los anclajes de servidor

No se requiere configuración por línea de comandos o variables de entorno: todos los controles se realizan vía UI para mayor seguridad y auditabilidad.

On this page