MCP Backup Server について
AI エージェントやコード編集ツール向けに、エージェントのコンテキスト付きでファイルやフォルダーを選択してバックアップする MCP サーバーです。長期的なバージョン管理や共同作業ではなく、短期的な復旧ポイントの作成と履歴管理に対応します。
主な機能
- 01コンテキスト付きのファイル・フォルダーバックアップ
- 02バックアップと操作履歴の一覧表示
- 03安全用バックアップを伴うファイル復元
- 04パターンによるフォルダー内容の絞り込み
- 05実行中の操作のキャンセル
活用シーン
- 01リファクタリング前の重要コードのバックアップ
- 02構成変更前の対象フォルダーの保存
- 03安全用コピーを残してファイルを復元
MCP 対応
ファイルやフォルダーのバックアップ作成・一覧表示・復元、バックアップの確認、操作のキャンセルを行うツールを MCP クライアントに提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
MCP Backup Server
AI エージェントやコード編集ツール向けに、バックアップと復元機能を提供する専用の MCP サーバーです。Cursor エディターと Windsurf エディターの両方でテスト済みです。
リポジトリ:https://github.com/hexitex/MCP-Backup-Server
Git ではなく、これを使う理由
このシステムは Git とは異なる目的で使用します。
メリット:
- エージェントのコンテキストを含む、対象を絞ったバックアップを即座に作成できます
- 1 回の操作を安全に行うには、Git よりもシンプルです
- バックアップに思考プロセスと意図を保存できます
- コミットメッセージやブランチは不要です
- 重要な変更を行う AI エージェントに適しています
- リポジトリの初期化なしで動作します
- 編集中の緊急用「セーブポイント」を素早く作成できます
デメリット:
- 長期的なバージョン追跡には向いていません
- コラボレーション機能は限定的です
- マージや競合解決はできません
- 分散バックアップ機能はありません
- 適切なバージョン管理の代わりにはなりません
- 差分ではなく、ファイル全体のコピーを保存します
使用する場面: リスクの高い編集やフォルダーの再構成を行う前、またはコンテキストを含む簡易バックアップが必要な場合です。
代わりに Git を使う場面: 適切なバージョン履歴、コラボレーション、プロジェクト管理が必要な場合です。
機能
- エージェントのコンテキストと推論を保持します
- 対象を絞った最小限のバックアップを作成します
- ファイルとフォルダーの操作に対応します
- バージョン履歴を管理します
- 安全に復元できます
- パターンフィルタリングを使用します
- 操作を追跡します
- 操作をキャンセルできます
セットアップ
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:操作をキャンセルします
バックアップを使用する場面
本当に必要な場合にのみバックアップを作成してください:
- リファクタリングの前:重要なコードを変更するとき
- フォルダーを削除する前:プロジェクト構造を再編成するとき
- 関連する複数の変更:関連する複数のファイルを更新するとき
- 大規模な作業の再開時:重要な変更作業を続けるとき
- 復元の前:復元前に安全用バックアップを作成します
バックアップは最小限にとどめ、目的を明確にしてください。それぞれのバックアップが必要な理由を記録してください。
コピー&ペーストのルール
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"
エージェントの使用例
クイックバックアップ
// 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
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。
