zsnoop-mcp MCP Server

An MCP server for ZFS snapshot exploration and recovery on remote hosts — read-only by default, with opt-in restore_ tools (v0.4.0+) gated per host.

Local serverstdio

What is the zsnoop-mcp Server?

zsnoop-mcp is an MCP project maintained in the hamsolodev/zsnoop-mcp repository. The maintainer describes its purpose as “An MCP server for ZFS snapshot exploration and recovery on remote hosts — read-only by default, with opt-in restore_ tools (v0.4.0+) gated per host”. Read the project documentation for the complete scope.

Local setup

The project provides a local client configuration using zsnoop-mcp. Follow the repository’s build and installation steps before copying it, and replace example paths with the paths on your own computer.

Source

Project documentation · Repository · Discovery listing. This profile records the public documentation checked on 2026-10-08.

Recorded tools

Check the linked publisher documentation and your connected client's tool list. Names and availability can vary with the server version and account permissions.

ToolWhat it does
list_hostsConfigured hosts
agent_infoAgent version, methods, limits
list_poolsZFS pools visible to the agent (live discovery)
pool_statusParsed zpool status: vdev tree, scrub, errors
list_datasetsFilesystems and volumes
dataset_propertieszfs get (all or filtered) with values + sources
list_snapshotsSnapshots (optional dataset/time/cap filters)
snapshot_cadenceSummary: counts by class, gap (per-dataset), span
stale_snapshotsSnapshots older than a time phrase, sorted by uniqueness
size_deltaBytes written between two snapshots of one dataset
list_dirBounded directory listing within a snapshot
size_breakdownRecursive bytes for a snapshot dir + per-child sizes
top_consumersTop-N largest files/dirs under a snapshot subtree
read_fileBounded read; UTF-8 or base64 for binary
find_filesfnmatch name search inside a snapshot
content_grepRegex content search inside a snapshot
checksum_fileFull-file SHA-256 (256 MiB cap) for integrity checks
diff_snapshotsPath-level diff between two snapshots
file_diffUnified diff of one file across two snapshots
file_historyEvery snapshot's version of a given file in a dataset
versions_offile_history deduped by hash (distinct versions only)
snapshots_containingSnapshots in which a path currently exists (time-ranged)
first_appearanceEarliest snapshot containing a path
last_appearanceLatest snapshot containing a path; reveals when deleted
find_deletedPaths deleted between two snapshots in a time window
bisect_changeBinary-search for the snapshot where a predicate flips
fetch_fileCopy a snapshot file to a local path via SFTP
fetch_dirCopy a snapshot directory tree to a local path via SFTP
restore_fileRestore a snapshot file to a server path (opt-in)
restore_dirRestore a snapshot directory tree to a server path

How to install the zsnoop-mcp Server

{
  "mcpServers": {
    "zsnoop": {
      "command": "zsnoop-mcp"
    }
  }
}

From the project documentation. Replace placeholders and example paths before connecting.