MCP Backup Server
hexitex/MCP-Backup-Server · 12 stars · JavaScript · MIT
MCP server A Model Context Protocol (MCP) server implementation that provides file backup and restoration capabilities
Install
The repo has no one-line install. Follow its README.
Files
MCP Backup Server
A specialized MCP server that provides backup and restoration capabilities for AI agents and code editing tools. Tested in both Cursor and Windsurf editors.
Repository: https://github.com/hexitex/MCP-Backup-Server
Why Use This (Not Git)
This system serves a different purpose than Git:
Pros:
- Creates instant, targeted backups with agent context
- Simpler than Git for single-operation safety
- Preserves thought process and intent in backups
- No commit messages or branching required
- Better for AI agents making critical changes
- Works without repository initialization
- Faster for emergency "save points" during edits
Cons:
- Not for long-term version tracking
- Limited collaboration features
- No merging or conflict resolution
- No distributed backup capabilities
- Not a replacement for proper version control
- Stores complete file copies rather than diffs
When to use: Before risky edits, folder restructuring, or when you need quick safety backups with context.
When to use Git instead: For proper version history, collaboration, and project management.
Features
- Preserves agent context and reasoning
- Creates targeted, minimal backups
- Supports file and folder operations
- Maintains version history
- Provides restore safety
- Uses pattern filtering
- Tracks operations
- Allows cancellation
Setup
Installing via Smithery
To install Backup Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @hexitex/MCP-Backup-Server --client claude
Installing Manually
# Install dependencies npm install # Build TypeScript files npm run build # Start the backup server npm start
Config
Env:
BACKUP_DIR: Backup directory (./.code_backups)EMERGENCY_BACKUP_DIR: Emergency backups (./.code_emergency_backups)MAX_VERSIONS: Version limit (10)
Configure in 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: Create .cursor/mcp.json with similar config.
Tools
File Operations
backup_create: Create backup with contextbackup_list: List available backupsbackup_restore: Restore with safety backup
Folder Operations
backup_folder_create: Backup with pattern filteringbackup_folder_list: List folder backupsbackup_folder_restore: Restore folder structure
Management
backup_list_all: List all backupsmcp_cancel: Cancel operations
When to Use Backups
Only create backups when truly needed:
- Before Refactoring: When changing important code
- Before Removing Folders: When reorganizing project structure
- Multiple Related Changes: When updating several connected files
- Resuming Major Work: When continuing significant changes
- Before Restores: Create safety backup before restoring
Keep backups minimal and purposeful. Document why each backup is needed.
Rules for Copy-Paste
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.
For Human Users
Simple commands like these at the start you may have to mention MCP tool
# 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"
Agent Examples
Quick Backups
// 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"
}
}
Resume Session
// 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
}
}
Core Changes
// 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"
}
}
Restore Points
// 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
}
}
Manage
// List recent
{
"name": "mcp0_backup_list_all",
"parameters": {
"include_pattern": "src/**/*.js"
}
}
// Stop backup
{
"name": "mcp0_mcp_cancel",
"parameters": {
"operationId": "backup_1234"
}
}
License
MIT
Facts
- Kind
- MCP server
- Group
- Uncategorized
- Stars
- 12
- License
- MIT
- Language
- JavaScript
- Last push
- 2025-08-08
- Forks
- 6
- 1REAio.github.morluto/reaReverse engineer anything from your terminal or agent with one CLI and MCP server.125.3k
- 2com.browser-use/browser-usecom.browser-use/browser-useControl a real Chrome browser to complete any task: fill forms, extract data, book flights.117.7k
- 3World Monitorapp.worldmonitor/mcpLive markets, conflicts, country risk, chokepoints, energy, and China decision signals. 93 tools.88.3k
- 4Scrapling MCP Serverd4vinci/scrapling🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl! Don't be shy, join here: https://discord.gg/EMgGbDceNQ and follow here for daily tips and tricks: https://x.com/Scraplingdev86.9k
- 5Everythingmodelcontextprotocol/serversThis MCP server attempts to exercise all the features of the MCP protocol. It is not intended to be a useful server, but rather a test server for builders of MCP clients. It implements prompts, tools, resources, sampling, and more to showcase MCP capabilities.85.8k
- 6Fetchmodelcontextprotocol/serversA Model Context Protocol server that provides web content fetching capabilities. This server enables LLMs to retrieve and process content from web pages, converting HTML to markdown for easier consumption.85.8k