Duplicacy MCP

io.github.GeiserX由 GitHub 帳號 GeiserX 發布v0.2.1更新於 Oct 29, 2026

MCP server for Duplicacy: backup health, status and Prometheus metrics from duplicacy-exporter

已驗證STDIO僅桌面檔案與儲存安全與監控

概覽

AI 產生的概覽

唯讀的 MCP 橋接服務,把 Prometheus 匯出器中的 Duplicacy 備份指標轉成備份健康、狀態與儲存資訊供助理查詢。

可以做什麼
  • 一次呼叫查看所有備份的健康狀況,含判定、原因與上次成功距今時間
  • 列出快照 ID、儲存目標與機器,作為篩選值
  • 讀取單一快照的狀態與最近執行詳情,以及最近一次完成的執行
  • 查看是否正在執行 prune 以及上次成功時間
  • 讀取儲存容量、區塊數量與各快照的修訂數
  • 以 MCP 資源形式提供狀態、進度與健康資訊
適用情境
適合已用 Duplicacy 備份並執行 duplicacy-exporter 的使用者,讓助理直接回答備份是否正常、哪個快照過期或失敗、佔用多少儲存空間等問題,不必開啟監控儀表板。
執行需求
需要可透過 DUPLICACY_EXPORTER_URL 存取的 duplicacy-exporter。npm 套件以 stdio 執行,需要 Node.js 與 npx。Docker 映像提供 Streamable HTTP,必須設定 MCP_AUTH_TOKEN(至少 16 個字元),除非在會進行驗證的反向代理後以未驗證方式執行;MCP_ALLOWED_ORIGINS 用於限制跨來源瀏覽器請求。
安裝前請注意
Docker 映像缺少 MCP_AUTH_TOKEN 時會拒絕啟動,用戶端需以 Authorization bearer 權杖送出該密鑰,請妥善保管。服務對匯出器為唯讀,但會從匯出器端點讀取備份狀態與儲存資料,應只指向可信任位址。匯出器僅保留最近一次執行,歷史資訊有限。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Duplicacy MCP,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

[Duplicacy MCP]

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_overview gives 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 (the initialize handshake) 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:8080 by 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

ToolWhat it answers
get_backup_overviewHealth of every backup in one call: verdict, reason, age of the last success. max_age_hours (default 26) sets when a backup is stale.
list_snapshotsEvery snapshot ID, storage target and machine, for use as filter values.
get_backup_statusState and last-run details of one snapshot, per storage target and machine.
get_backup_historyThe last completed run of one snapshot. The exporter keeps only the last run.
get_prune_statusWhether a prune is running and when the last one succeeded, per storage target.
get_storage_usageStorage size and chunks, and revisions per snapshot, from the exporter's storage poller.

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

bash
claude mcp add --transport stdio --env DUPLICACY_EXPORTER_URL=http://localhost:9750 duplicacy -- npx -y duplicacy-mcp

Claude Desktop (claude_desktop_config.json) and Cursor (~/.cursor/mcp.json)

json
{  "mcpServers": {    "duplicacy": {      "command": "npx",      "args": ["-y", "duplicacy-mcp"],      "env": { "DUPLICACY_EXPORTER_URL": "http://localhost:9750" }    }  }}

VS Code (.vscode/mcp.json)

json
{  "servers": {    "duplicacy": {      "type": "stdio",      "command": "npx",      "args": ["-y", "duplicacy-mcp"],      "env": { "DUPLICACY_EXPORTER_URL": "http://localhost:9750" }    }  }}

Codex (~/.codex/config.toml)

toml
[mcp_servers.duplicacy]command = "npx"args = ["-y", "duplicacy-mcp"]env = { DUPLICACY_EXPORTER_URL = "http://localhost:9750" }

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)

bash
export MCP_AUTH_TOKEN=$(openssl rand -hex 32)docker run -d -p 127.0.0.1:8080:8080 -e MCP_AUTH_TOKEN \  -e DUPLICACY_EXPORTER_URL=http://duplicacy-exporter:9750 drumsergio/duplicacy-mcp:v0.2.0claude mcp add --transport http duplicacy http://127.0.0.1:8080/mcp --header "Authorization: Bearer $MCP_AUTH_TOKEN"

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

GPL-3.0-or-later

來源:README.md,提交 0502468

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

4
  1. v0.2.1最新Oct 29, 2026
  2. v0.1.2Oct 21, 2026
  3. v0.1.1Oct 5, 2026
  4. v0.0.2Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分