mirror of
https://github.com/jmagar/unraid-mcp.git
synced 2026-03-23 04:29:17 -07:00
Resolves review threads:
- PRRT_kwDOO6Hdxs50R8VI (test-actions.sh: remove || echo "000" curl fallback)
- PRRT_kwDOO6Hdxs50R8VJ (test-actions.sh: JSON parse failures → FAIL not silent)
- PRRT_kwDOO6Hdxs50QdKd (diagnostics.py: sanitize raw exception text from ToolError)
- PRRT_kwDOO6Hdxs50QdKs (storage.py: unassigned uses unassignedDevices query)
- PRRT_kwDOO6Hdxs50Mwlk (docker.py: port_conflicts returns flat merged list)
- PRRT_kwDOO6Hdxs50Mwlo (docker.py: logs returns plain string not dict)
- PRRT_kwDOO6Hdxs50Mt5K (docker.py: unraid_docker logs format compatibility)
- PRRT_kwDOO6Hdxs50Mt5L (health.py: or {} null guards throughout)
- PRRT_kwDOO6Hdxs50Mt5r (docker.py: port_conflicts flat list backward compat)
- plugin.json: version synced to 0.4.4 to match pyproject.toml
Changes:
- test-actions.sh: curl exit code captured directly; JSON failures surface as FAIL
- diagnostics.py: 4 ToolError sites log exc_info=True, raise sanitized messages
- storage.py: unassigned action queries unassignedDevices instead of disks
- docker.py: logs action returns newline-joined string; port_conflicts merges
containerPorts + lanPorts into a flat list for backward compatibility
- health.py: all nested dict lookups use `or {}` instead of `.get(k, {})` to
handle explicit GraphQL null values
Co-authored-by: Claude <noreply@anthropic.com>
Unraid MCP Marketplace
This directory contains the Claude Code marketplace configuration for the Unraid MCP server and skills.
Installation
From GitHub (Recommended)
# Add the marketplace
/plugin marketplace add jmagar/unraid-mcp
# Install the Unraid skill
/plugin install unraid @unraid-mcp
From Local Path (Development)
# Add local marketplace
/plugin marketplace add /path/to/unraid-mcp
# Install the plugin
/plugin install unraid @unraid-mcp
Available Plugins
unraid
Query and monitor Unraid servers via GraphQL API - array status, disk health, containers, VMs, system monitoring.
Features:
- 11 tools with ~104 actions (queries and mutations)
- Real-time system metrics
- Disk health and temperature monitoring
- Docker container management
- VM status and control
- Log file access
- Network share information
- Notification management
Version: 0.2.0 Category: Infrastructure Tags: unraid, monitoring, homelab, graphql, docker, virtualization
Configuration
After installation, configure your Unraid server credentials:
export UNRAID_API_URL="https://your-unraid-server/graphql"
export UNRAID_API_KEY="your-api-key"
Getting an API Key:
- Open Unraid WebUI
- Go to Settings → Management Access → API Keys
- Click "Create" and select "Viewer" role
- Copy the generated API key
Documentation
- Plugin Documentation: See
skills/unraid/README.md - MCP Server Documentation: See root
README.md - API Reference: See
skills/unraid/references/
Support
- Issues: https://github.com/jmagar/unraid-mcp/issues
- Repository: https://github.com/jmagar/unraid-mcp