mcpField
M
MCP Backup Server

MCP Backup Server

本地服务
github.com/hexitex文件与存储1264 周前更新

关于 MCP Backup Server

这是面向 AI Agent 和代码编辑工具的 MCP 服务,可创建带有 Agent 上下文的定向文件与文件夹备份。它提供恢复和版本历史,适用于短期安全保存点,而非长期版本管理或协作。

主要功能

  1. 01创建带上下文的文件和文件夹备份
  2. 02查看备份及操作历史
  3. 03恢复文件前创建安全备份
  4. 04按模式筛选文件夹内容
  5. 05取消进行中的操作

适用场景

  1. 01重构前备份重要代码
  2. 02调整目录结构前保存指定文件夹
  3. 03保留安全副本后恢复文件

MCP 相关

向 MCP 客户端提供创建、查看和恢复文件或文件夹备份、检查备份及取消操作的工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"MCP-Backup-Server": {
"command": "npx",
"args": [
"-y",
"@smithery/cli"
]
}
}
}
启动命令npx -y @smithery/cli

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@smithery/cli

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

MseeP.ai Security Assessment Badge

MCP Backup Server

smithery badge

专用 MCP 服务,为 AI Agent 和代码编辑工具提供备份与恢复功能。已在 Cursor 和 Windsurf 编辑器中进行测试。

仓库:https://github.com/hexitex/MCP-Backup-Server

为什么使用它(而不是 Git)

此系统与 Git 用途不同:

优点:

  • 根据 Agent 上下文即时创建有针对性的备份
  • 对于单次操作的安全保障,比 Git 更简单
  • 在备份中保留思考过程和意图
  • 无需提交信息或分支
  • 更适合进行关键更改的 AI Agent
  • 无需初始化仓库即可使用
  • 编辑期间创建紧急“保存点”更快捷

缺点:

  • 不适合长期跟踪版本
  • 协作功能有限
  • 不支持合并或冲突解决
  • 不支持分布式备份
  • 不能替代正规的版本控制
  • 存储完整的文件副本,而不是差异

适用场景: 进行高风险编辑、重组文件夹,或需要带有上下文的快速安全备份时。

适合改用 Git 的场景: 需要规范的版本历史、协作和项目管理时。

功能

  • 保留 Agent 上下文和推理过程
  • 创建有针对性的最小化备份
  • 支持文件和文件夹操作
  • 保留版本历史
  • 提供恢复安全保障
  • 使用模式过滤
  • 跟踪操作
  • 支持取消操作

设置

通过 Smithery 安装

通过 Smithery 自动为 Claude Desktop 安装 Backup Server:

npx -y @smithery/cli install @hexitex/MCP-Backup-Server --client claude
手动安装
# Install dependencies
npm install

# Build TypeScript files
npm run build

# Start the backup server
npm start

配置

环境变量:

  • BACKUP_DIR:备份目录(./.code_backups)
  • EMERGENCY_BACKUP_DIR:紧急备份目录(./.code_emergency_backups)
  • MAX_VERSIONS:版本数量上限(10)

在编辑器中配置:

Windsurf MCP 配置:

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

Cursor:创建 .cursor/mcp.json 并添加类似配置。

工具

文件操作
  • backup_create:创建带有上下文的备份
  • backup_list:列出可用备份
  • backup_restore:恢复并创建安全备份
文件夹操作
  • backup_folder_create:使用模式过滤创建备份
  • backup_folder_list:列出文件夹备份
  • backup_folder_restore:恢复文件夹结构
管理
  • backup_list_all:列出所有备份
  • mcp_cancel:取消操作

何时使用备份

仅在确有需要时创建备份:

  1. 重构之前:更改重要代码时
  2. 移除文件夹之前:重组项目结构时
  3. 进行多项相关更改时:更新多个关联文件时
  4. 继续重要工作时:接着进行重大更改时
  5. 恢复之前:恢复前创建安全备份

备份应尽量精简且有明确用途。记录每个备份的必要原因。

复制粘贴规则

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.

面向人工用户

对于这类简单命令,开头可能需要提及 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"

Agent 示例

快速备份
// 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"
  }
}
恢复会话
// 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
  }
}
核心更改
// 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"
  }
}
恢复点
// 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
  }
}
管理
// List recent
{
  "name": "mcp0_backup_list_all",
  "parameters": {
    "include_pattern": "src/**/*.js"
  }
}

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

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。