Duplicacy MCP
io.github.GeiserXPublished by GitHub account GeiserXv0.2.1Updated Oct 29, 2026
MCP server for Duplicacy: backup health, status and Prometheus metrics from duplicacy-exporter
Overview
Read-only MCP bridge that turns Duplicacy backup metrics from a Prometheus exporter into backup health, status and storage answers for an assistant.
- What you can do
- Check backup health across all backups with a verdict, reason and age of last success
- List snapshot IDs, storage targets and machines to use as filters
- Read state and last-run details of one snapshot, plus its last completed run
- Check whether a prune is running and when the last one succeeded
- Read storage size, chunk counts and revisions per snapshot
- Expose status, progress and health as MCP resources
- When to use it
- Useful when you already run Duplicacy backups with duplicacy-exporter and want an assistant to answer questions like whether backups are OK, which snapshot is stale or failed, or how much storage is in use, without opening dashboards.
- Requirements
- A running duplicacy-exporter reachable via DUPLICACY_EXPORTER_URL. The npm package runs over stdio and needs Node.js with npx. The Docker image serves Streamable HTTP and requires MCP_AUTH_TOKEN (at least 16 characters) unless running unauthenticated behind an authenticating proxy; MCP_ALLOWED_ORIGINS restricts cross-origin browser calls.
Installation
In SourceWeft
- Open Duplicacy MCP in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
Duplicacy MCP
[npm] [CI] [License] [Docker Pulls] [GitHub Stars]
A tiny bridge that reads Duplicacy backup metrics from a Prometheus exporter and exposes them as an MCP server, enabling LLMs to monitor backup status, progress, and health.
Features
- Reads the metrics of duplicacy-exporter and serves them over MCP.
- One call answers "are my backups OK?":
get_backup_overviewgives every backup a verdict (ok, running, stale, never, failed) with a reason. - Speaks MCP 2026-07-28 (
server/discover, stateless requests) and every earlier revision down to 2024-11-05 (theinitializehandshake) from the same binary, over stdio and Streamable HTTP. Clients that still use the old handshake keep working. - Read-only by design: every tool and resource only reads the exporter, so there is no read-only flag to set. Every tool carries
readOnlyHint, a title, an output schema and structured results. - HTTP listens on
127.0.0.1:8080by default. On any other address it refuses to start without a bearer token, rejects cross-origin browser requests and caps request bodies. - Ships as Go binaries for several platforms (GoReleaser), a Docker image and an npm wrapper.
Tools and resources
Resources: duplicacy://status, duplicacy://progress and duplicacy://health. Parameters and output fields are on Usage.
Install
The npm package runs the server over stdio; set DUPLICACY_EXPORTER_URL to your exporter.
Claude Code
Claude Desktop (claude_desktop_config.json) and Cursor (~/.cursor/mcp.json)
VS Code (.vscode/mcp.json)
Codex (~/.codex/config.toml)
npm 12, pnpm and Bun skip install scripts, so the wrapper downloads and verifies the binary on first start. Versions up to 0.1.2 relied on the install script alone; with npm 12 run them as npx -y --allow-scripts=duplicacy-mcp duplicacy-mcp.
Docker (Streamable HTTP)
The image listens on 0.0.0.0:8080 inside the container, so it will not start without MCP_AUTH_TOKEN (or MCP_ALLOW_UNAUTHENTICATED=true behind a reverse proxy that authenticates). Compose, a global npm install and a local build are in Getting started; every variable is in Configuration.
Documentation
- Getting started: Docker Compose, npm, local build, first run
- Configuration: environment variables, HTTP security, client config for stdio and HTTP
- Usage: tools, parameters, output fields and resources
- Development: testing with Inspector, credits, contributing
- Related projects: the Duplicacy family, other MCP servers, registry listings
Related projects
Part of the Duplicacy family: duplicacy-exporter, duplicacy-cli-cron, duplicacy-ha, duplicacy-container.
License
Source: README.md at commit 0502468
Tools
0Version history
4- v0.2.1LatestOct 29, 2026
- v0.1.2Oct 21, 2026
- v0.1.1Oct 5, 2026
- v0.0.2Sep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts