Servidor de copia de seguridad MCP
Un servidor MCP especializado que proporciona capacidades de copia de seguridad y restauración para agentes AI 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:
Pros:
- Crea copias de seguridad instantáneas y específicas con el contexto del agente
- Más simple que Git para la seguridad de una sola operación
- Preserva el proceso de pensamiento y la intención en las copias de seguridad
- No requiere mensajes de confirmación ni ramificación
- Mejor para agentes de IA que realizan cambios críticos
- Funciona sin inicialización del repositorio
- Más rápido para "puntos de guardado" de emergencia durante las ediciones
Contras:
- No es adecuado para el seguimiento de versiones a largo plazo
- Funciones de colaboración limitadas
- Sin fusión ni resolución de conflictos
- No tiene funciones de copia de seguridad distribuida
- No sustituye a un control de versiones adecuado
- Almacena copias completas de archivos en lugar de diferencias
Cuándo utilizarlo: Antes de ediciones arriesgadas, reestructuración de carpetas, o cuando necesites copias de seguridad rápidas con contexto.
Cuándo utilizar Git: Para un correcto historial de versiones, colaboración y gestión de proyectos.
Características
- Conserva el contexto y el razonamiento del agente
- Crea copias de seguridad mínimas y específicas
- Admite operaciones con archivos y carpetas
- Mantiene el historial de versiones
- Proporciona seguridad de restauración
- Utiliza el filtrado de patrones
- Realiza un seguimiento de las operaciones
- Permite la cancelación
Instalación
Instalación a través de Smithery
Para instalar Backup Server para Claude Desktop automáticamente a través de Smithery:
npx -y @smithery/cli install @hexitex/MCP-Backup-Server --client claude
Instalación manual
# Instalar dependencias npm install # Construir archivos TypeScript npm run build # Iniciar el servidor de copia de seguridad npm start
Configurar
Env:
BACKUP_DIR
: Directorio de copias de seguridad (./.code_backups)EMERGENCY_BACKUP_DIR
: Copias de seguridad de emergencia (./.code_emergency_backups)MAX_VERSIONS
: Límite de versiones (10)
Configurar en editor:
Windsurf MCP config:
{ "mcpServers": { "backup": { "command": "node", "args": ["./dist/index.js"], "env": {"BACKUP_DIR": "./.code_backups", "EMERGENCY_BACKUP_DIR": "./.code_emergency_backups", "MAX_VERSIONS": "20" } } } }
Cursor: Crear .cursor/mcp.json
con una configuración similar.
Herramientas
Operaciones de archivo
backup_create
: Crear copia de seguridad con contextobackup_list
: Listar copias de seguridad disponiblesbackup_restore
: Restaurar con copia de seguridad
Operaciones con carpetas
backup_folder_create
: Copia de seguridad con filtrado de patronesbackup_folder_list
: Listar copias de seguridad de carpetasbackup_folder_restore
: Restaurar estructura de carpetas
Gestión
backup_list_all
: Listar todas las copias de seguridadmcp_cancel
: Cancelar operaciones
Cuándo utilizar copias de seguridad
Cree copias de seguridad sólo cuando sea realmente necesario:
- Antes de refactorizar: Al cambiar código importante
- Antes de eliminar carpetas: Al reorganizar la estructura del proyecto
- Múltiples cambios relacionados: Al actualizar varios archivos relacionados
- Reanudar un trabajo importante: Al continuar cambios importantes
- Antes de restaurar: Crear una copia de seguridad antes de restaurar
Mantenga las copias de seguridad al mínimo y con un propósito. Documente por qué es necesaria cada copia de seguridad.
Reglas para copiar y pegar
Realice copias de seguridad sólo antes de cambios críticos de código, eliminación de carpetas, cambios en varios archivos relacionados, reanudación de trabajos importantes o restauración de archivos. Mantenga las copias de seguridad mínimas y centradas sólo en los archivos que se están cambiando. Proporcione siempre un contexto claro de por qué se está creando una copia de seguridad.
Utilizar filtros de patrones para excluir archivos irrelevantes de las copias de seguridad de carpetas. Utilizar rutas de archivos relativas al crear copias de seguridad. Crear copias de seguridad de emergencia antes de las operaciones de restauración. Limpiar las copias de seguridad antiguas para mantener la eficiencia del sistema. Herramientas de copia de seguridad: backup_create, backup_list, backup_restore, backup_folder_create, backup_folder_list, backup_folder_restore, backup_list_all, mcp_cancel
Para usuarios humanos
Comandos sencillos como estos al principio puede que tengas que mencionar la herramienta MCP
# Hacer copia de seguridad de un fichero importante "Hacer copia de seguridad de mi fichero core antes de la refactorización" # Hacer copia de seguridad de una carpeta antes de los cambios "Crear copia de seguridad de la carpeta API antes de la reestructuración" # Buscar copias de seguridad anteriores "Mostrar mis copias de seguridad recientes" # Restaurar una versión anterior "Restaurar mi fichero core de esta mañana"
Ejemplos de agentes
Copias de seguridad rápidas
// Antes de cambios en el proyecto { "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
// Ver trabajo reciente { "name": "mcp0_backup_list_all", "parameters": { "include_pattern": "src/**/*.js" } } // Obtener última versión { "name": "mcp0_backup_restore", "parameters": { "file_path": "./src/core.js", "timestamp": "20250310-055950-000", "create_emergency_backup": true }
Core Changes
// Actualización crítica { "name": "mcp0_backup_create", "parameters": { "file_path": "./src/core.js", "agent_context": "Add validation" } } // Actualización del módulo { "name": "mcp0_backup_folder_create", "parameters": { "folder_path": "./src/api", "include_pattern": "*.js", "exclude_pattern": "test/**", "agent_context": "Refactor modules" } }
Puntos de restauración
// Comprobar versiones { "name": "mcp0_backup_list", "parameters": { "file_path": "./src/core.js" } } { "name": "mcp0_backup_folder_list", "parameters": { "folder_path": "./src/api" } } // Restauración de archivos { "name": "mcp0_backup_restore", "parameters": { "file_path": "./src/core.js", "timestamp": "20250310-055950-000", "create_emergency_backup": true } } // Restauración de carpetas { "name": "mcp0_backup_folder_restore", "parameters": { "folder_path": "./src/api", "timestamp": "20250310-055950-000", "create_emergency_backup": true }
Gestionar
// Lista reciente { "name": "mcp0_backup_list_all", "parameters": { "include_pattern": "src/**/*.js" } } // Detener copia de seguridad { "name": "mcp0_mcp_cancel", "parameters": { "operationId": "backup_1234" } }
Licencia
MIT