Backup

Añade capacidad de Backup inteligente a agentes de codificación como Windsurf, Cursor, Claude Coder, etc.

Documentación

MseeP.ai Security Assessment Badge

Servidor MCP Backup

smithery badge

Un servidor MCP especializado que proporciona capacidades de respaldo y restauración para agentes de IA y herramientas de edición de código. Probado en los editores Cursor y Windsurf.

Repositorio: https://github.com/hexitex/MCP-Backup-Server

Por qué usar esto (no Git)

Este sistema tiene un propósito diferente al de Git:

Ventajas:

  • Crea respaldos instantáneos y específicos con contexto del agente
  • Más simple que Git para seguridad en operaciones individuales
  • Preserva el proceso de pensamiento y la intención en los respaldos
  • No requiere mensajes de commit ni ramas
  • Mejor para agentes de IA que realizan cambios críticos
  • Funciona sin inicialización de repositorio
  • Más rápido para 'puntos de guardado' de emergencia durante ediciones

Desventajas:

  • No es para seguimiento de versiones a largo plazo
  • Funciones de colaboración limitadas
  • Sin fusión ni resolución de conflictos
  • Sin capacidades de respaldo distribuido
  • No es un reemplazo para el control de versiones adecuado
  • Almacena copias completas de archivos en lugar de diferencias

Cuándo usar: Antes de ediciones arriesgadas, reestructuración de carpetas, o cuando necesites respaldos de seguridad rápidos con contexto.

Cuándo usar Git en su lugar: Para historial de versiones adecuado, colaboración y gestión de proyectos.

Características

  • Preserva el contexto y razonamiento del agente
  • Crea respaldos específicos y mínimos
  • Admite operaciones de archivos y carpetas
  • Mantiene historial de versiones
  • Proporciona seguridad de restauración
  • Utiliza filtrado por patrones
  • Realiza seguimiento de operaciones
  • Permite cancelación

Instalación

Instalación mediante Smithery

Para instalar Backup Server para Claude Desktop automáticamente mediante Smithery:

npx -y @smithery/cli install @hexitex/MCP-Backup-Server --client claude

Instalación manual

# Install dependencies
npm install

# Build TypeScript files
npm run build

# Start the backup server
npm start

Configuración

Variables de entorno:

  • BACKUP_DIR: Directorio de respaldo (./.code_backups)
  • EMERGENCY_BACKUP_DIR: Respaldos de emergencia (./.code_emergency_backups)
  • MAX_VERSIONS: Límite de versiones (10)

Configurar en el editor:

Configuración MCP de Windsurf:

{
  "mcpServers": {
    "backup": {
      "command": "node",
      "args": ["./dist/index.js"],
      "env": {
        "BACKUP_DIR": "./.code_backups",
        "EMERGENCY_BACKUP_DIR": "./.code_emergency_backups",
        "MAX_VERSIONS": "20"
      }
    }
  }
}

Cursor: Crea .cursor/mcp.json con configuración similar.

Herramientas

Operaciones de archivo

  • backup_create: Crear respaldo con contexto
  • backup_list: Listar respaldos disponibles
  • backup_restore: Restaurar con respaldo de seguridad

Operaciones de carpeta

  • backup_folder_create: Respaldo con filtrado por patrones
  • backup_folder_list: Listar respaldos de carpeta
  • backup_folder_restore: Restaurar estructura de carpeta

Gestión

  • backup_list_all: Listar todos los respaldos
  • mcp_cancel: Cancelar operaciones

Cuándo usar respaldos

Solo crea respaldos cuando sea realmente necesario:

  1. Antes de refactorizar: Cuando cambias código importante
  2. Antes de eliminar carpetas: Cuando reorganizas la estructura del proyecto
  3. Cambios relacionados múltiples: Cuando actualizas varios archivos conectados
  4. Reanudar trabajo importante: Cuando continúas cambios significativos
  5. Antes de restauraciones: Crea un respaldo de seguridad antes de restaurar

Mantén los respaldos mínimos y con propósito. Documenta por qué se necesita cada respaldo.

Reglas para copiar y pegar

Always try to use the backup MCP server for operations that require a backup, listing backups and restoring backups.
Only backup before critical code changes, folder removal, changes to multiple related files, resuming major work, or restoring files.
Keep backups minimal and focused only on files being changed.
Always provide clear context for why a backup is being created.
Use pattern filters to exclude irrelevant files from folder backups.
Use relative file paths when creating backups.
Create emergency backups before restore operations.
Clean up old backups to maintain system efficiency.
Backup tools: backup_create, backup_list, backup_restore, backup_folder_create, backup_folder_list, backup_folder_restore, backup_list_all, mcp_cancel.

Para usuarios humanos

Comandos simples como estos al inicio, es posible que debas mencionar la herramienta MCP

# Back up an important file
"Back up my core file before refactoring"

# Back up a folder before changes
"Create backup of the API folder before restructuring"

# Find previous backups
"Show me my recent backups"

# Restore a previous version
"Restore my core file from this morning"

Ejemplos de agentes

Respaldos rápidos

// Before project changes
{
  "name": "mcp0_backup_folder_create",
  "parameters": {
    "folder_path": "./src",
    "include_pattern": "*.{js,ts}",
    "exclude_pattern": "{node_modules,dist,test}/**",
    "agent_context": "Start auth changes"
  }
}

// Before core fix
{
  "name": "mcp0_backup_create",
  "parameters": {
    "file_path": "./src/core.js",
    "agent_context": "Fix validation"
  }
}

Reanudar sesión

// View recent work
{
  "name": "mcp0_backup_list_all",
  "parameters": {
    "include_pattern": "src/**/*.js"
  }
}

// Get last version
{
  "name": "mcp0_backup_restore",
  "parameters": {
    "file_path": "./src/core.js",
    "timestamp": "20250310-055950-000",
    "create_emergency_backup": true
  }
}

Cambios principales

// Critical update
{
  "name": "mcp0_backup_create",
  "parameters": {
    "file_path": "./src/core.js",
    "agent_context": "Add validation"
  }
}

// Module update
{
  "name": "mcp0_backup_folder_create",
  "parameters": {
    "folder_path": "./src/api",
    "include_pattern": "*.js",
    "exclude_pattern": "test/**",
    "agent_context": "Refactor modules"
  }
}

Puntos de restauración

// Check versions
{
  "name": "mcp0_backup_list",
  "parameters": {
    "file_path": "./src/core.js"
  }
}

{
  "name": "mcp0_backup_folder_list",
  "parameters": {
    "folder_path": "./src/api"
  }
}

// File restore
{
  "name": "mcp0_backup_restore",
  "parameters": {
    "file_path": "./src/core.js",
    "timestamp": "20250310-055950-000",
    "create_emergency_backup": true
  }
}

// Folder restore
{
  "name": "mcp0_backup_folder_restore",
  "parameters": {
    "folder_path": "./src/api",
    "timestamp": "20250310-055950-000",
    "create_emergency_backup": true
  }
}

Gestionar

// List recent
{
  "name": "mcp0_backup_list_all",
  "parameters": {
    "include_pattern": "src/**/*.js"
  }
}

// Stop backup
{
  "name": "mcp0_mcp_cancel",
  "parameters": {
    "operationId": "backup_1234"
  }
}

Licencia

MIT