Skip to content
Tools Cross-server one-shot utilities — renew certs, purge caches, reclaim disk and rewrite URLs across your whole fleet from one place.

Tools

Tools (/tools) is a launcher for cross-server one-shot jobs — the tasks you fire once and forget, as opposed to the always-on management pages (Servers, Sites, Backups). Each tool opens a dock drawer, lets you pick targets across your fleet, and runs the action live with a per-target result list. It’s available on all plans.

Every one-shot tool follows the same shape:

  1. Open Tools from the account sidebar and click Run (or Open) on the tool you want. A dock drawer slides in beside the page.
  2. MZPanel loads your live fleet — servers, or the eligible sites across every online server — into a multi-select. Tick the targets you want.
  3. For destructive tools, leave the dry-run / measure-only default on to preview the blast radius first (match counts, reclaimable MB) without changing anything.
  4. Click the primary button (e.g. Renew 4 sites, Measure 2 servers). Each target streams pending → running → done/failed in a live result list, with a check or cross and a short detail (renewed, purged, ~1.4 GB, 12 matches).
  5. When every target has finished, the drawer shows the totals. Close it — there’s no “done” toast; the result rows are the receipt.

The page is one flat grid of tool cards. Each opens its own drawer:

  • Server transfer — hand a whole server (every site, database, file and backup, plus its billing) to another MZPanel account by email, or accept one sent to you. Type the server name to arm the transfer. See the caution below — this flow is preview-only today.
  • Migrate to MZPanel — pull a WordPress site from another host or control panel into your fleet (scan a directory, or discover and pull over SSH from a remote box).
  • Fleet SSL renew — force-renew Let’s Encrypt certificates on the sites you pick. Only sites that already have SSL are listed.
  • Fleet cache purge — purge page + object cache across the WordPress sites you pick.
  • Fleet disk cleanup — measure and optionally reclaim APT cache, old logs, temp files, orphan packages, Nginx cache and (with caution) old local backups across the servers you pick. Measure-only by default.
  • Global search-replace (WP) — search-replace a string or URL across all (or a subset of) WordPress databases, with a dry-run that counts matches before you write.

Tools is pure client-side fan-out: the page aggregates your real fleet, then dispatches an existing per-target job to each server’s agent and streams the result back. There is no new fleet-wide backend — each tick maps to one ordinary job with a bounded concurrency of four at a time.

ToolPer-target jobAgent runs (native)
Fleet SSL renewssl.renew (per site)ssl renew <domain>
Fleet cache purgewp.cache (per site)wp <domain> cache purge
Fleet disk cleanupstorage.clean (per server)storage clean --targets … --dry-run|--apply
Global search-replacewp.tool (per site)wp <domain> tool search-replace <from> <to>

The fleet list is read from the agent-pushed inventory cache (servers.listservers.sites), so only online servers contribute targets. Disk cleanup and search-replace default to dry-run; the numbers (reclaimable MB, match count) come straight from the box’s own du/journal and WP-CLI. Dispatch runs through the normal job pipeline, so plan and RBAC checks apply per target — nothing special is bypassed here.

Tools is a convenience layer over per-box jobs — there is no single fleet-wide mz command. To script the same work yourself, loop the per-box mz commands over SSH (or let an on-box AI like ClaudeCode run them). These are the exact commands each fan-out fires:

Terminal window
mz ssl renew example.com --json # Fleet SSL renew (per site)
mz wp example.com cache purge --json # Fleet cache purge (per site)
mz storage clean --targets apt,logs,tmp,orphans,caches --dry-run --json # Fleet disk cleanup (per server)
mz wp example.com tool search-replace https://old.example.com https://new.example.com --dry-run --json

Drop --dry-run (and add --apply for storage clean) to write for real. See The mz CLI and the command catalog.

  • Server transfer is preview-only. The server picker reads your real fleet, but the outgoing/incoming transfer lifecycle is currently client-side only — there is no per-server transfer API yet, so pending transfers don’t persist or reach the other account. Treat this card as a design preview; every other tool on the page is fully live. (Every card shows a green “Live” badge — ignore it on this one.)
  • Offline servers are skipped. The fleet lists are built only from servers whose agent is currently connected. A server that’s offline simply won’t appear as a target — bring it online and reopen the drawer.
  • Dry-run vs. apply. Disk cleanup and search-replace measure by default and write nothing. Disk cleanup needs Delete now ticked to reclaim; search-replace opens a confirm modal before any live write. A database rewrite can’t be undone without a backup — dry-run first, and take a backup before a large replace.
  • Cache purge is WordPress-only. The picker lists WordPress sites; other site types clear cache at the server level, not here.
  • One slow target won’t block the rest. Each target runs independently with a small concurrency pool; a failure shows a red cross with its message and the run continues.
  • Fleet: Sites — the always-on view of every site across your servers.
  • Fleet: Servers — connect and manage the boxes these tools fan out to.
  • Fleet: Backups — take a snapshot before a destructive fleet action.
  • The mz CLI — driving a box from the command line.