Skip to content

Backup & Migrate

The Backup & Migrate module packages a whole WordPress site (database and files) into a portable, single-file .emcp archive, and gives you four ways to move that data around:

  • Backup & Restore: create a full (or database-only / files-only) .emcp archive, by hand or on a schedule, and restore it from an upload.
  • Migrate local to live: push this whole site to a live server through a lightweight connector plugin, with no manual upload.
  • Sync: push a full or selective scope (chosen tables and/or file areas) to a paired live site.
  • Content Sync: push individual changed pages, posts, or CPTs to a paired live site. Content, custom fields, terms, and attached media only, with no full database import and no downtime.

It is a Pro module, on by default, with a switch on EMCP Tools → Modules (group “Site & safety”). All of it is also driveable by a connected AI agent through seven MCP tools.

Open EMCP Tools → Safety → Backup & Migrate. In 3.18.0 everything lives on one screen with five sections, switched with the tabs at the top right. Each section has its own URL (admin.php?page=emcp-tools-migrate&view=<section>), so you can bookmark it:

Sectionview=What it does
Backupbackup (default)Create a backup, see Backup health, set up scheduled backups, and list your recent backups
RestorerestoreUpload an .emcp (or drop one in by FTP) and restore it
MigratemigrateDownload the connector, pair a live site, and push a backup to it
SyncsyncPush individual content changes, or a full or selective scope, to a paired site
HistoryhistoryEvery backup this site has created, with Download and delete

A running job keeps going when you switch sections, so you can start a backup and check the History section while it runs. On a free build, or without an active licence, the screen shows the Pro locked screen instead.

Everything is built on one portable format: the .emcp archive, a single file that streams the database and files with a manifest, so it can be created, moved, and restored in resumable slices instead of loaded whole. Manual backups and restores are driven from your browser in short, time-bounded chunks, so large sites finish reliably even on modest and shared hosts. Scheduled backups run the same chunks from WP-Cron instead. A restore rewrites the site address and Elementor page-data URLs to the destination with a serialization-safe search-replace, preserves your current login, and never touches wp-config.php or your salts.

You want to…Use
Take a safety copy before a big changeBackup
Move a local/staging build to its live server for the first timeMigrate
Push a full or partial refresh to an existing live siteSync
Publish one page you just edited, without touching the rest of the live siteContent Sync

A connected AI agent can drive the whole feature through seven tools. The four non-destructive tools are enabled by default; the three destructive tools are disabled by default and require an explicit confirm: true. Enable them on EMCP Tools → Tools, platform tab EMCP Modules, category Backup & Migrate first.

ToolPurposeDefault
create-backupBuild a full / database / files .emcp on this server and return its id, size, and download URLOn
list-backupsList existing backupsOn
list-syncable-changesList the local content changes not yet synced to a paired siteOn
migrate-sitePush the whole site to a paired target and trigger the remote restoreOff, confirm
sync-to-livePush a full or selective scope to a paired targetOff, confirm
sync-content-itemPush one changed page/post/CPT to a paired targetOff, confirm
discard-sync-changeMark a local change as not-to-syncOn
  • The connector on a destination is a separate, unlicensed, single-file plugin gated only by a single-use pairing code and HMAC-signed requests. The source side is Pro.
  • Destructive operations (migrate, sync, content sync) are disabled by default and require confirmation.
  • A restore never modifies wp-config.php or your salts, and preserves your current session.
  • You can remove the connector automatically when a migration completes. It unpairs, purges staged data, deactivates, and deletes its own files.