Command Palette

Search for a command to run...

UnylyUnyly
Browse all

Duplicacy

FreeMaintained

Monitor Duplicacy backup status and Prometheus metrics via MCP.

GitHubEmbed

About

Monitor Duplicacy backup status and Prometheus metrics via MCP.

README

Duplicacy MCP banner

Duplicacy-MCP

codecov npm Go Docker Pulls GitHub Stars License

Official MCP Registry Glama MCP Server MCPServers.org mcp.so ToolSDK Registry listed on awesome-mcp-servers

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.


What you get

Type What for MCP URI / Tool id
Resources Browse backup status, progress, and health read-only duplicacy://status
duplicacy://progress
duplicacy://health
Tools Query backup history, list snapshots, and check prune status get_backup_status
get_backup_history
list_snapshots
get_prune_status

Everything is exposed over a single JSON-RPC endpoint (/mcp). LLMs / Agents can: initialize -> readResource -> listTools -> callTool ... and so on.


Quick-start (Docker Compose)

services:
  duplicacy-mcp:
    image: drumsergio/duplicacy-mcp:0.1.0
    ports:
      - "127.0.0.1:8080:8080"
    environment:
      - DUPLICACY_EXPORTER_URL=http://duplicacy-exporter:9750

Security note: The HTTP transport listens on 127.0.0.1:8080 by default. If you need to expose it on a network, place it behind a reverse proxy with authentication.

Install via npm (stdio transport)

npx duplicacy-mcp

Or install globally:

npm install -g duplicacy-mcp
duplicacy-mcp

This downloads the pre-built Go binary from GitHub Releases for your platform and runs it with stdio transport. Requires at least one published release.

Local build

git clone https://github.com/GeiserX/duplicacy-mcp
cd duplicacy-mcp

# (optional) create .env from the sample
cp .env.example .env && $EDITOR .env

go run ./cmd/server

Configuration

Variable Default Description
DUPLICACY_EXPORTER_URL http://localhost:9750 Duplicacy Prometheus exporter URL (without trailing /)
LISTEN_ADDR 127.0.0.1:8080 HTTP listen address (Docker sets 0.0.0.0:8080)
TRANSPORT (empty = HTTP) Set to stdio for stdio transport

Put them in a .env file (from .env.example) or set them in the environment.

Testing

Tested with Inspector and it is currently fully working. Before making a PR, make sure this MCP server behaves well via this medium.

Example configuration for client LLMs

{
  "schema_version": "v1",
  "name_for_human": "Duplicacy-MCP",
  "name_for_model": "duplicacy_mcp",
  "description_for_human": "Monitor Duplicacy backup status, progress, and health via Prometheus metrics.",
  "description_for_model": "Interact with a Duplicacy backup monitoring server that reads metrics from a Prometheus exporter. First call initialize, then reuse the returned session id in header \"Mcp-Session-Id\" for every other call. Use readResource to fetch URIs that begin with duplicacy://. Use listTools to discover available actions and callTool to execute them.",
  "auth": { "type": "none" },
  "api": {
    "type": "jsonrpc-mcp",
    "url":  "http://localhost:8080/mcp",
    "init_method": "initialize",
    "session_header": "Mcp-Session-Id"
  },
  "contact_email": "[email protected]",
  "legal_info_url": "https://github.com/GeiserX/duplicacy-mcp/blob/main/LICENSE"
}

Credits

Duplicacy -- lock-free deduplication cloud backup

duplicacy-exporter -- Prometheus exporter for Duplicacy

MCP-GO -- modern MCP implementation

GoReleaser -- painless multi-arch releases

Maintainers

@GeiserX.

Contributing

Feel free to dive in! Open an issue or submit PRs.

Duplicacy-MCP follows the Contributor Covenant Code of Conduct.

Other MCP Servers by GeiserX

Related Projects

Project Description
duplicacy-cli-cron Docker-based encrypted dual-storage backup automation using Duplicacy CLI
duplicacy-exporter Real-time Prometheus exporter for Duplicacy backups
duplicacy-ha Home Assistant custom integration for monitoring Duplicacy backups
duplicacy-container Container image and Helm chart for running Duplicacy on Kubernetes

from github.com/geiserx/duplicacy-mcp

Install Duplicacy in Claude Desktop, Claude Code & Cursor

Recommended · one command, every IDE
unyly install duplicacy

Installs into Claude Desktop, Claude Code, Cursor & VS Code — handles npx, uvx and build-from-source repos for you.

First time? Get the CLI: curl -fsSL https://unyly.org/install | sh

Or configure manually

Run in your terminal:

claude mcp add duplicacy -- npx -y duplicacy-mcp

Step-by-step: how to install Duplicacy

FAQ

Is Duplicacy MCP free?

Yes, Duplicacy MCP is free — one-click install via Unyly at no cost.

Does Duplicacy need an API key?

No, Duplicacy runs without API keys or environment variables.

Is Duplicacy hosted or self-hosted?

Self-hosted: the server runs locally on your machine via the install command above.

How do I install Duplicacy in Claude Desktop, Claude Code or Cursor?

Open Duplicacy on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.

Changes

Versions and requested access over time.

  • New version published
  • New version published

Related MCPs

Compare Duplicacy with

Not sure what to pick?

Find your stack in 60 seconds

Author?

Embed badge for your README

Browse similar

All development MCPs