skills$openclaw/unraid
jmagar5.2k

by jmagar

unraid – OpenClaw Skill

unraid is an OpenClaw Skills integration for data analytics workflows. Query and monitor Unraid servers via the GraphQL API. Use when the user asks to 'check Unraid', 'monitor Unraid', 'Unraid API', 'get Unraid status', 'check disk temperatures', 'read Unraid logs', 'list Unraid shares', 'Unraid array status', 'Unraid containers', 'Unraid VMs', or mentions Unraid system monitoring, disk health, parity checks, or server status.

5.2k stars2.4k forksSecurity L1
Updated Feb 7, 2026Created Feb 7, 2026data analytics

Skill Snapshot

nameunraid
descriptionQuery and monitor Unraid servers via the GraphQL API. Use when the user asks to 'check Unraid', 'monitor Unraid', 'Unraid API', 'get Unraid status', 'check disk temperatures', 'read Unraid logs', 'list Unraid shares', 'Unraid array status', 'Unraid containers', 'Unraid VMs', or mentions Unraid system monitoring, disk health, parity checks, or server status. OpenClaw Skills integration.
ownerjmagar
repositoryjmagar/unraid
languageMarkdown
licenseMIT
topics
securityL1
installopenclaw add @jmagar/unraid
last updatedFeb 7, 2026

Maintainer

jmagar

jmagar

Maintains unraid in the OpenClaw Skills directory.

View GitHub profile
File Explorer
14 files
.
examples
disk-health.sh
782 B
read-logs.sh
659 B
references
api-reference.md
19.6 KB
endpoints.md
1.4 KB
quick-reference.md
2.7 KB
troubleshooting.md
1.5 KB
scripts
dashboard.sh
5.9 KB
unraid-query.sh
2.8 KB
_meta.json
442 B
README.md
3.4 KB
SKILL.md
4.5 KB
SKILL.md

name: unraid version: 1.0.1 description: "Query and monitor Unraid servers via the GraphQL API. Use when the user asks to 'check Unraid', 'monitor Unraid', 'Unraid API', 'get Unraid status', 'check disk temperatures', 'read Unraid logs', 'list Unraid shares', 'Unraid array status', 'Unraid containers', 'Unraid VMs', or mentions Unraid system monitoring, disk health, parity checks, or server status."

Unraid API Skill

Query and monitor Unraid servers using the GraphQL API. Access all 27 read-only endpoints for system monitoring, disk health, logs, containers, VMs, and more.

Quick Start

Set your Unraid server credentials:

export UNRAID_URL="https://your-unraid-server/graphql"
export UNRAID_API_KEY="your-api-key"

Get API Key: Settings → Management Access → API Keys → Create (select "Viewer" role)

Use the helper script for any query:

./scripts/unraid-query.sh -q "{ online }"

Or run example scripts:

./scripts/dashboard.sh              # Complete multi-server dashboard
./examples/disk-health.sh           # Disk temperatures & health
./examples/read-logs.sh syslog 20   # Read system logs

Core Concepts

GraphQL API Structure

Unraid 7.2+ uses GraphQL (not REST). Key differences:

  • Single endpoint: /graphql for all queries
  • Request exactly what you need: Specify fields in query
  • Strongly typed: Use introspection to discover fields
  • No container logs: Docker container output logs not accessible

Two Resources for Stats

  • info - Static hardware specs (CPU model, cores, OS version)
  • metrics - Real-time usage (CPU %, memory %, current load)

Always use metrics for monitoring, info for specifications.

Common Tasks

System Monitoring

Check if server is online:

./scripts/unraid-query.sh -q "{ online }"

Get CPU and memory usage:

./scripts/unraid-query.sh -q "{ metrics { cpu { percentTotal } memory { used total percentTotal } } }"

Complete dashboard:

./scripts/dashboard.sh

Disk Management

Check disk health and temperatures:

./examples/disk-health.sh

Get array status:

./scripts/unraid-query.sh -q "{ array { state parityCheckStatus { status progress errors } } }"

List all physical disks (including cache/USB):

./scripts/unraid-query.sh -q "{ disks { name } }"

Storage Shares

List network shares:

./scripts/unraid-query.sh -q "{ shares { name comment } }"

Logs

List available logs:

./scripts/unraid-query.sh -q "{ logFiles { name size modifiedAt } }"

Read log content:

./examples/read-logs.sh syslog 20

Containers & VMs

List Docker containers:

./scripts/unraid-query.sh -q "{ docker { containers { names image state status } } }"

List VMs:

./scripts/unraid-query.sh -q "{ vms { name state cpus memory } } }"

Note: Container output logs are NOT accessible via API. Use docker logs via SSH.

Notifications

Get notification counts:

./scripts/unraid-query.sh -q "{ notifications { overview { unread { info warning alert total } } } }"

Helper Script Usage

The scripts/unraid-query.sh helper supports:

# Basic usage
./scripts/unraid-query.sh -u URL -k API_KEY -q "QUERY"

# Use environment variables
export UNRAID_URL="https://unraid.local/graphql"
export UNRAID_API_KEY="your-key"
./scripts/unraid-query.sh -q "{ online }"

# Format options
-f json    # Raw JSON (default)
-f pretty  # Pretty-printed JSON
-f raw     # Just the data (no wrapper)

Additional Resources

Reference Files

For detailed documentation, consult:

  • references/endpoints.md - Complete list of all 27 API endpoints
  • references/troubleshooting.md - Common errors and solutions
  • references/api-reference.md - Detailed field documentation

Helper Scripts

  • scripts/unraid-query.sh - Main GraphQL query tool
  • scripts/dashboard.sh - Automated multi-server inventory reporter

Quick Command Reference

# System status
./scripts/unraid-query.sh -q "{ online metrics { cpu { percentTotal } } }"

# Disk health
./examples/disk-health.sh

# Array status
./scripts/unraid-query.sh -q "{ array { state } }"

# Read logs
./examples/read-logs.sh syslog 20

# Complete dashboard
./scripts/dashboard.sh

# List shares
./scripts/unraid-query.sh -q "{ shares { name } }"

# List containers
./scripts/unraid-query.sh -q "{ docker { containers { names state } } }"
README.md

Unraid API Skill

Query and monitor Unraid servers via the GraphQL API.

What's Included

This skill provides complete access to all 27 read-only Unraid GraphQL API endpoints.

Files

skills/unraid/
├── SKILL.md                           # Main skill documentation
├── README.md                          # This file
├── scripts/
│   └── unraid-query.sh               # GraphQL query helper script
├── examples/
│   ├── monitoring-dashboard.sh       # Complete system dashboard
│   ├── disk-health.sh                # Disk temperature & health check
│   └── read-logs.sh                  # Log file reader
└── references/
    ├── api-reference.md              # Complete API documentation
    └── quick-reference.md            # Common queries cheat sheet

Quick Start

  1. Set your credentials:

    export UNRAID_URL="https://your-unraid-server/graphql"
    export UNRAID_API_KEY="your-api-key"
    
  2. Run a query:

    cd skills/unraid
    ./scripts/unraid-query.sh -q "{ online }"
    
  3. Run examples:

    ./examples/monitoring-dashboard.sh
    ./examples/disk-health.sh
    

Triggers

This skill activates when you mention:

  • "check Unraid"
  • "monitor Unraid"
  • "Unraid API"
  • "Unraid disk temperatures"
  • "Unraid array status"
  • "read Unraid logs"
  • And more Unraid-related monitoring tasks

Features

  • 27 working endpoints - All read-only queries documented
  • Helper script - Easy CLI interface for GraphQL queries
  • Example scripts - Ready-to-use monitoring scripts
  • Complete reference - Detailed documentation with examples
  • Quick reference - Common queries cheat sheet

Endpoints Covered

System & Monitoring

  • System info (CPU, OS, hardware)
  • Real-time metrics (CPU %, memory %)
  • Configuration & settings
  • Log files (list & read)

Storage

  • Array status & disks
  • All physical disks (including cache/USB)
  • Network shares
  • Parity check status

Virtualization

  • Docker containers
  • Virtual machines

Power & Alerts

  • UPS devices
  • System notifications

Administration

  • API key management
  • User & authentication
  • Server registration
  • UI customization

Requirements

  • Unraid 7.2+ (GraphQL API)
  • API Key with Viewer role
  • jq for JSON parsing (usually pre-installed)
  • curl for HTTP requests

Getting an API Key

  1. Log in to Unraid WebGUI
  2. Settings → Management Access → API Keys
  3. Click "Create API Key"
  4. Name: "monitoring" (or whatever you like)
  5. Role: Select "Viewer" (read-only)
  6. Copy the generated key

Documentation

  • SKILL.md - Start here for task-oriented guidance
  • references/api-reference.md - Complete endpoint reference
  • references/quick-reference.md - Quick query examples

Examples

System Status

./scripts/unraid-query.sh -q "{ online metrics { cpu { percentTotal } } }"

Disk Health

./examples/disk-health.sh

Complete Dashboard

./examples/monitoring-dashboard.sh

Read Logs

./examples/read-logs.sh syslog 20

Notes

  • All sizes are in kilobytes
  • Temperatures are in Celsius
  • Docker container logs are not accessible via API (use SSH)
  • Poll no faster than every 5 seconds to avoid server load

Version

  • Skill Version: 1.0.0
  • API Version: Unraid 7.2 GraphQL
  • Tested: 2026-01-21
  • Endpoints: 27 working read-only queries

Permissions & Security

Security level L1: Low-risk skills with minimal permissions. Review inputs and outputs before running in production.

Requirements

  • OpenClaw CLI installed and configured.
  • Language: Markdown
  • License: MIT
  • Topics:

FAQ

How do I install unraid?

Run openclaw add @jmagar/unraid in your terminal. This installs unraid into your OpenClaw Skills catalog.

Does this skill run locally or in the cloud?

OpenClaw Skills execute locally by default. Review the SKILL.md and permissions before running any skill.

Where can I verify the source code?

The source repository is available at https://github.com/openclaw/skills/tree/main/skills/jmagar/unraid. Review commits and README documentation before installing.