• Applicable Software: MokoGIT
  • Min Version Number: 02.09.00
  • Max Version Number: Not Applicable

MokoBackup is a Model Context Protocol (MCP) server that gives AI assistants and automation agents a single, consistent way to run and manage backups across your Dolibarr and Joomla environments. It ties together SSH-driven database and file backups, native Akeeba Backup control on Joomla sites, and MokoSuiteBackup — so one server can dump a MySQL database, archive site files, or trigger a full-site backup on demand. Every workspace scopes its own targets through a simple JSON config, keeping credentials and destinations tidy and per-project.

What it is

MokoBackup (@mokoconsulting/mcp-mokobackup) is an MCP server that exposes backup operations as callable tools for any MCP-aware client, such as Claude Code. Instead of memorizing shell commands or juggling site-specific procedures, an agent connects to the server and calls a small set of well-named tools to create, list, download, prune, and delete backups.

It supports several backup strategies through one server:

  • SSH backups — MySQL/PostgreSQL database dumps and tar.gz file archives created over SSH, pulled down to a local backup directory.
  • Akeeba Backup — drives Akeeba Backup on Joomla sites through the Joomla Web Services API (start, list, download, delete backups, and list profiles).
  • MokoSuiteBackup — the same lifecycle (start, list, download, delete, profiles, status) for MokoSuiteBackup on Joomla sites.
  • Dolibarr — reads a Dolibarr instance's conf.php over SSH and backs up the database, documents, and custom files.

Each workspace has its own configuration file listing the backup targets (sites/databases), so a single installed server can serve many projects without cross-contamination.

Install (npm)

MokoBackup is published to public npm under the @mokoconsulting scope. Install it globally:

npm install -g @mokoconsulting/mcp-mokobackup

Or run it on demand with npx (no global install required):

npx -y @mokoconsulting/mcp-mokobackup

Requirements: Node.js 20 or newer. Optionally, you can pull the package from the MokoGIT registry mirror by adding this scope-to-registry mapping to your .npmrc:

@mokoconsulting:registry=https://git.mokoconsulting.tech/api/packages/MokoConsulting/npm/

Configure

Register the server with your MCP client (for example, in a project or global .mcp.json). Point the BACKUP_MCP_CONFIG environment variable at the workspace's backup config file:

{
  "mcpServers": {
    "backup": {
      "command": "npx",
      "args": ["@mokoconsulting/mcp-mokobackup"],
      "env": {
        "BACKUP_MCP_CONFIG": ".backup-mcp.json"
      }
    }
  }
}

The config file defines a defaultTarget and a map of named targets. Each target specifies its type (mysql, akeeba, mokobackup, etc.), SSH connection details for SSH-based backups (sshHost, sshUser, sshKeyPath), database credentials, remote paths to archive, and a localBackupDir for downloaded backups. See config.example.json in the repository for a complete, working example.

Tooling

MokoBackup exposes its capabilities as discrete tools, grouped by backup strategy. Most tools accept an optional target argument to select which configured target to act on (defaulting to defaultTarget).

  • SSH backupsbackup_database (dump a MySQL/PostgreSQL database over SSH), backup_files (archive remote directories to a local tar.gz), backup_list (list local backups with sizes and dates), backup_prune (delete local backups older than N days), backup_status (disk usage and last-backup summary), and backup_list_targets (list all configured targets).
  • Akeeba Backup (Joomla)akeeba_backup (start a backup), akeeba_list (list backup records), akeeba_download (download an archive locally), akeeba_delete (delete a backup record), and akeeba_profiles (list backup profiles).
  • MokoSuiteBackup (Joomla)mokobackup_start, mokobackup_list, mokobackup_download, mokobackup_delete, mokobackup_profiles, and mokobackup_status (latest backup status).
  • Dolibarrdolibarr_backup (back up the database, documents, and custom files by reading conf.php over SSH) and dolibarr_conf (display Dolibarr database settings from conf.php, with passwords omitted).

Get help

Need a hand configuring targets or scheduling backups? Open a support ticket with MokoConsulting, or call us at (931) 279-6313.