Labsco
MCP SERVER

Duplicacy MCP

by GeiserX

Read the state of Duplicacy backups from chat — files, bytes, duration and exit code for a snapshot's last run, where it stands now, and how far prune has got.

Observability, Monitoring & Incident ResponseVerified
Summary
It reports on backups; it does not run them.

Every tool here reads — nothing starts a backup, prunes, or restores — so this is a monitoring surface for a Duplicacy install that something else drives, and the useful part is get_backup_history returning an exit code alongside files, bytes and duration rather than a pass mark. The bound to know before installing is that list_snapshots returns what the exporter holds, so a snapshot the exporter is not tracking is invisible here regardless of what the backup host has on disk.

What it is

A read-only window onto Duplicacy backup state, with 4 tools covering the snapshot IDs the exporter knows about, the last run of one of them, its current status, and the state of the prune operation.

What you get
  • Last-run detail instead of a health light: get_backup_history takes a snapshot_id and returns the files, bytes, duration and exit code of that snapshot's most recent backup.
  • Now kept apart from then: get_backup_status reports where a snapshot_id stands at this moment, so a run in progress is not read off the previous result.
  • Prune tracked on its own axis: get_prune_status reports the prune operation and accepts a storage_target to narrow it to one destination.
  • A way in when you do not know the identifiers: list_snapshots returns the unique Duplicacy snapshot IDs the exporter holds, which is exactly what get_backup_history and get_backup_status take as input.
Requirements

No account and no key. The reach is whatever the Duplicacy exporter already tracks: list_snapshots returns the snapshot IDs it holds, get_backup_history and get_backup_status address one of those by snapshot_id, and get_prune_status is narrowed by storage_target. Distributed under GPL-3.0, so a modified copy handed to anyone else carries the same terms.

Setup effort

One command — npx -y duplicacy-mcp