{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_hpwr4fmkaw2b","handle":"snapper-mcp","url":"https://wellknown.network/agents/snapper-mcp","links":{"self":"https://wellknown.network/agents/snapper-mcp/record.json","html":"https://wellknown.network/agents/snapper-mcp","markdown":"https://wellknown.network/agents/snapper-mcp/record.md","api":"https://wellknown.network/api/v1/agents/snapper-mcp","status":"https://wellknown.network/api/v1/agents/snapper-mcp/status","claim":"https://wellknown.network/agents/snapper-mcp/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/snapper-mcp/claim.json","badge":"https://wellknown.network/agents/snapper-mcp/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/snapper-mcp/history","tools":"https://wellknown.network/api/v1/agents/snapper-mcp/tools"},"ard":{"identifier":"urn:air::server:snapper-mcp","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"snapper-mcp","summary":"MCP server for managing BTRFS snapshots via Snapper","description":"# BTRFS Snapper MCP\n\n[![PyPI](https://img.shields.io/pypi/v/snapper-mcp)](https://pypi.org/project/snapper-mcp/)\n[![Built with Claude Code](https://img.shields.io/badge/Built%20with-Claude%20Code-blueviolet?logo=anthropic)](https://claude.ai/code)\n\nAn MCP (Model Context Protocol) server for managing BTRFS snapshots via [Snapper](http://snapper.io/) and monitoring BTRFS filesystem health. Exposes two unified tools with action-based dispatch to minimize tool proliferation while providing full snapshot management and disk health monitoring.\n\n## Features\n\n- **Two-tool design**: `snapper` for snapshots, `btrfs_health` for filesystem monitoring\n- **Full Snapper support**: list, create, delete, rollback, cleanup, diff, status\n- **BTRFS health monitoring**: usage, device stats, scrub status, balance status\n- **Flexible configuration**: Environment variables for cross-system portability\n- **No hardcoded paths**: Works with any Snapper configuration and mount points\n\n## Installation\n\n### From PyPI (recommended)\n\n```bash\npip install snapper-mcp\n```\n\n### Using uvx (no install required)\n\n```bash\nuvx snapper-mcp\n```\n\n### From source\n\n```bash\ngit clone https://github.com/danielrosehill/BTRFS-Snapper-MCP.git\ncd BTRFS-Snapper-MCP\npip install -e .\n```\n\n## Configuration\n\nThe server is configured via environment variables, making it portable across systems:\n\n| Variable | Default | Description |\n|----------|---------|-------------|\n| `SNAPPER_MCP_USE_SUDO` | `true` | Set to `false` if user has direct permissions |\n| `SNAPPER_MCP_SNAPPER_PATH` | `snapper` | Path to snapper binary |\n| `SNAPPER_MCP_BTRFS_PATH` | `btrfs` | Path to btrfs binary |\n| `SNAPPER_MCP_SUDO_PATH` | `sudo` | Path to sudo binary |\n| `SNAPPER_MCP_DEFAULT_CONFIG` | `root` | Default snapper config name |\n| `SNAPPER_MCP_DEFAULT_MOUNT` | `/` | Default BTRFS mount point |\n| `SNAPPER_MCP_TIMEOUT` | `60` | Command timeout in seconds |\n\n## MCP Client Configuration\n\n### Claude Code / Claude Desktop\n\nAdd to your MCP settings (e…","publisher":null,"homepage":"https://github.com/danielrosehill/BTRFS-Snapper-MCP","repository":"https://github.com/danielrosehill/BTRFS-Snapper-MCP","version":"0.1.1","license":null,"protocols":["mcp"],"tags":["btrfs","filesystem","mcp","snapper","snapshots"],"pricing":null,"endpoints":[{"url":"pypi:snapper-mcp","type":"package_pypi","auth":null,"probeable":false}],"skills":null,"tools":null,"extra":null,"attribution":{"kind":"pypi","name":"pypi","repoUrl":"pypi","summary":"pypi","version":"pypi","description":"pypi","homepageUrl":"pypi"}},"derived":{"capabilities":[{"slug":"dev.filesystem","name":"Filesystem","confidence":1,"provenance":"declared"},{"slug":"dev.version-control","name":"Version Control","confidence":0.745,"provenance":"derived"}],"categories":["dev"],"language":"en"},"observed":{"status":"unknown","statusReason":"Distributed as a package to run locally; no network endpoint to check.","lastOkAt":null,"lastProbedAt":null,"statusComputedAt":null,"reliability30d":null,"latestObservations":[],"tools":null,"package":{"name":"snapper-mcp","registry":"pypi","observedAt":"2026-11-04T01:24:44.986Z","publishedAt":"2025-12-30T18:19:21.918930Z","latestVersion":"0.1.1"},"toolSurface":null,"endpointFacts":[]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"pypi","key":"snapper-mcp","url":"https://pypi.org/project/snapper-mcp/","firstSeenAt":"2026-09-10T12:22:43.866Z","fetchedAt":"2026-11-04T01:22:42.781Z","normalizedAt":"2026-11-04T01:22:42.781Z"}]},"firstSeenAt":"2026-09-10T12:22:43.866Z","updatedAt":"2026-11-04T01:24:44.986Z"}