
Hiberden
io.github.AgaveisPublished by GitHub account Agaveisv1.3.2Updated Oct 25, 2026
Read and verify your local media archive's 3-2-1 coverage across tape, disk, NAS, and cloud.
Overview
Read-only MCP connector to a local Hiberden media archive catalog, letting an assistant inspect archives, copies, tapes and 3-2-1 coverage and re-verify…
- What you can do
- List projects, collections and archives with size, SHA-256 and per-copy status
- Report library-wide 3-2-1 coverage and one-call inventory and capacity statistics
- Inspect destinations, tapes and cartridges, recent copy activity and background jobs
- Search files across archives and page through an archive's file manifest with checksums
- Re-read a disk, NAS or tape copy and re-hash it to stamp it Verified, Failed or Missing
- When to use it
- Useful when you keep a local Hiberden archive and want an assistant to answer questions about what is stored where, which archives are under-covered, or whether a specific copy still matches its recorded hashes.
- Requirements
- Runs as a local process on the user's machine (desktop only) and needs an existing Hiberden catalog. The catalog path is taken from the HIBERDEN_DB environment variable, otherwise the default location under LOCALAPPDATA on Windows or ~/.hiberden on Linux. No account, API key or network access is needed.
Installation
In SourceWeft
- Open Hiberden 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
hiberden-mcp: Hiberden MCP server
Exposes the Hiberden archive engine (hiberden-core) as Model Context
Protocol tools over the stdio transport
(newline-delimited JSON-RPC 2.0).
MCP is an open, vendor-neutral standard, so this one server is drivable from any MCP client: Claude Desktop / Claude Code, OpenAI's Agents SDK and ChatGPT desktop, Gemini, Cursor, Windsurf, and others. There is no model and no API key in this process. The client brings the LLM; this binary only answers tool calls against the local catalog. In its default mode it performs no network I/O.
Read + verify by default
The server advertises and answers the read/verify tools below by default, and
nothing mutates configuration. The only state any default tool ever writes
is what verify_copy records: the copy's status, its verify-pass provenance
(which algorithm ran, when the last full pass succeeded), and an audit-log
row for each completed verify — and it only does that after a genuine
read-back from the medium.
Write and delete tools (catalog management, destinations, policies) ARE
implemented, but behind a catalog-persisted permission tier that defaults to
read-only and is only changeable in the Hiberden desktop app's settings; a
tool above the active tier is neither advertised nor accepted. See
docs/Hiberden_MCP_Command_Surface_and_Permission_Model.md (which supersedes
docs/mcp/write-gate-design.md).
Read + verify tools (always on)
verify_copy is the differentiator: it is proof from the actual medium, not a
stored flag. Identify the copy by archive_id + destination_id. It works for
disk and NAS copies and for tape copies (the cartridge is mounted and read
back). Cloud (S3) read-back verify runs in the Hiberden desktop app, not here:
for a cloud copy the tool returns a clear message that the copy was checked in
the desktop, not here, so it has not passed or failed. That message is a
not-attempted result, not a verification failure.
Adding archives (writing bytes), save, and restore are not exposed here. Catalog, destination, and policy configuration tools exist behind the permission tier described above; at the default read-only tier they are neither advertised nor accepted.
Catalog selection
The server reads the single catalog shared by the desktop app, the CLI, and this server. Path resolution:
- The
HIBERDEN_DBenvironment variable, if set. - Otherwise
%LOCALAPPDATA%\Hiberden\catalog.dbon Windows, or~/.hiberden/catalog.dbon Linux.
The catalog is opened fresh per tool call (sub-millisecond) rather than held for
the process lifetime. With WAL mode and a busy timeout, the desktop app and this
server can run against the same catalog.db at the same time without a
multi-process locking hazard.
All diagnostics go to stderr. stdout carries the JSON-RPC channel; anything written to stdout that is not a JSON-RPC message corrupts the stream.
Linux headless kit
Linux binaries are published on the releases page and at
cdn.hiberden.app. They are built on Ubuntu 22.04, so they run on Ubuntu
22.04+, Debian 12+, and equivalents; verified on debian:bookworm-slim and
ubuntu:22.04.
hiberden-mcp-linux-x86_64 is the same connector as the Windows build. The
CLI (hiberden) catalogs and archives with no display server and no network —
the whole point of the kit is that an air-gapped or headless machine can run
it.
Linux reached general availability on 2026-08-11 at version 1.3.1, alongside Windows. What that does and does not cover, precisely:
- Writing a new archive needs a license. Reading your data back never does, license or not. Kits published before GA are ungated and stay that way; entitlement applies from the first post-GA kit onward. Nothing you archive now becomes unreadable later: the format and catalog are identical across platforms.
- The desktop app runs on Linux too, as a signed
.deband.AppImagefrom hiberden.app/linux. The macOS build for Apple Silicon is at hiberden.app/download. - Tape on Linux is unproven on hardware. The backend targets the
open-source LTFS implementation and has never run against a drive on any
platform. Use
HIBERDEN_TAPE_FAKE=1to exercise the flows without one. - Archives are signed by a per-install Ed25519 identity stored under
~/.hiberden/keys/(owner-only). It is the same custody model as the OS keyrings on other platforms, and no stronger: it is not hardware-backed.
Setup
The binary self-installs into known MCP clients:
install writes (or updates) an mcpServers.hiberden entry pointing at this
executable. It is zero-config for the catalog: the entry only pins HIBERDEN_DB
when you already have it set in your environment, otherwise it relies on the
default %LOCALAPPDATA%\Hiberden\catalog.db path.
Manual configuration
To wire it up by hand, add this to your client's config (Claude Desktop:
claude_desktop_config.json; Claude Code: .mcp.json; Cursor / Windsurf use the
same mcpServers shape). command is the path to the executable. env is
optional: include HIBERDEN_DB only if your catalog lives somewhere other than
the default path.
Smoke test (no client needed)
This pipes three requests (initialize, list tools, read coverage) straight into the binary:
Container image
The image on Docker Hub, agaveis/hiberden-mcp, is the same connector binary
in a debian:bookworm-slim container. It carries no catalog: it starts, reports
itself, and advertises the read-only tool surface, but there are no archives to
answer questions about. This is not how you run Hiberden. For real use, install
Hiberden from https://hiberden.app.
The image exists so MCP directories can run their introspection handshake (initialize, then tools/list) against the connector in a Linux sandbox, and so anyone can inspect the advertised tool surface without installing anything.
To point it at a real catalog, mount one and set HIBERDEN_DB:
The connector opens it read-only apart from verify's status writes, and never reads the OS keyring.
Security
- Local-only and closed-domain. The server is read + verify only and performs
zero network I/O; the only state it writes is the copy status
verify_copystamps after a read-back. It never sends data to Hiberden or any third party. - No API key and no LLM are stored in the binary, so there is nothing to steal there.
verify_copygives ground-truth physical state: it re-reads and re-hashes the actual medium, so even a manipulated assistant cannot fabricate a "Verified".- Tool annotations (
readOnlyHint,destructiveHint, and so on) are hints, not guarantees. Prompt injection is an unsolved industry-wide problem. The architecture here is conservative by design; that is not a claim of immunity.
Privacy
The server runs entirely on your own machine, holds no account or API key, and
in its default read-and-verify mode performs zero network I/O — it never sends
your catalog or your files to Hiberden or any third party. The only state any
default tool writes is the copy status verify_copy stamps after a genuine
read-back. Full details (what the server reads, what it never does, the role of
the separate AI client, and credential handling) are in
PRIVACY.md, hosted at https://hiberden.app/mcp/privacy.
Tape caveat
Tape support has not been validated on physical tape hardware in this implementation. The design never speaks SCSI directly and treats tape as a filesystem via LTFS tooling, so any tape the LTFS tooling can mount should work by construction. That is an architectural property, not a tested hardware matrix. Do not read these notes as a guarantee for any specific drive or generation.
For testing without a drive, the tape backend can run against a fake backend:
set HIBERDEN_TAPE_FAKE=1 (and optionally HIBERDEN_TAPE_FAKE_ROOT=<dir> to
point at a directory standing in for the mounted volume).
Website: https://hiberden.app
Listing and source: https://github.com/Agaveis/hiberden-mcp
Built and maintained by AgaveIS, Scottsdale, Arizona.
Source: README.md at commit 5ef8046
Tools
0Version history
1- v1.3.2LatestSep 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