Skip to main content

disk-health-mcp

MCP server for disk health diagnostics: SMART, NVMe, ZFS, RAID and I/O metrics, with manufacturer-aware severity assessment.

Part of the Server MCP suite. It exposes 13 read-mostly tools and can use InfluxDB/Telegraf data before falling back to smartctl/nvme-cli over SSH or locally. Every tool publishes a structured ToolResponse next to the readable text. Streamable HTTP is available with --transport streamable-http (loopback by default, bearer token for other addresses).

Storage coverage includes ZFS, mdadm and mergerFS + SnapRAID (SnapRAID status and a mount summary), so the same server can diagnose NAS stacks that do not use ZFS or RAID.

InfluxDB lookups use only successful SMART samples (exit_status = 0) from the last 24 hours and ignore standby rows instead of presenting them as zeroed health data. Reports show the sample timestamp, model and serial, plus the live lsblk identity when it can be resolved. A sample older than two 5-minute poll intervals (10 minutes) is marked stale, and recent non-success polls are reported instead of hidden. A serial that does not match the live device is named as a mismatch and is never rendered as the requested disk's health. run_smart_test pre-flights smartctl and uses -n standby, so it reports an unavailable tool or a sleeping disk instead of starting a test blindly. Telegraf -> InfluxDB is the supported SMART source; Prometheus is optional and the smartmon_* metrics require node_exporter with its smartmon collector. A loopback-only InfluxDB can be reached with the optional ssh_tunnel block (or a manual ssh -N -L); see configuration.

uv run --directory apps/disk-health-mcp disk-health-mcp

Requires a config file; see config.example.yaml in this directory. The SMART attribute database is generated offline with scripts/generate_smartdb.py.

Metadata

Release files for disk-health-mcp 0.5.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for disk-health-mcp 0.5.0
File Size Uploaded Provenance Actions
disk_health_mcp-0.5.0.tar.gz 67.4 kB Without provenance Details for disk_health_mcp-0.5.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for disk-health-mcp 0.5.0
File Interpreter ABI Platform Actions
disk_health_mcp-0.5.0-py3-none-any.whl Python 3 none any Details for disk_health_mcp-0.5.0-py3-none-any.whl

Total release size: 110.7 kB

Release files / disk_health_mcp-0.5.0.tar.gz

Download URL disk_health_mcp-0.5.0.tar.gz
Size 67.4 kB
Tags Source
SHA-256 checksum
How to use checksums
1f8147178ac5c871c2522f7742b3c1d6fe008ab33871b3201c20034d629bc953
BLAKE2b-256 checksum
How to use checksums
531e50b4fe7292b52c655ed410aa4b6e746b66456aed9352d75405f12911de0a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / disk_health_mcp-0.5.0-py3-none-any.whl

Download URL disk_health_mcp-0.5.0-py3-none-any.whl
Size 43.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f95fca9fb61f782ff4a20b179a24945687e5aed672b6b379172a4586eee3d405
BLAKE2b-256 checksum
How to use checksums
25fb1c7bb004870afad1e413f1ec14e79c9707779ff4fb57b7100d97a190b0ef
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for disk-health-mcp 0.5.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page