Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
TRUENAS_URLNoWebSocket URL of your TrueNAS instancewss://truenas.local/websocket
TRUENAS_API_KEYYesAPI key from TrueNAS (System > API Keys)
TRUENAS_TIMEOUTNoAPI call timeout in seconds30
TRUENAS_VERIFY_SSLNoSSL certificate verificationfalse

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
extensions
{
  "io.modelcontextprotocol/ui": {}
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
system_infoA

Get TrueNAS system information: version, uptime, CPU, RAM, boot time.

list_alertsA

List all active TrueNAS alerts with severity levels.

list_servicesA

List all services and their running status (SMB, NFS, SSH, etc.).

list_jobsA

List recent system jobs with status, progress, and errors.

get_audit_logC

Query audit log entries (auth events, config changes).

list_cron_jobsA

List all configured cron jobs.

get_boot_poolB

Get boot pool health status.

list_poolsA

List all storage pools with health, capacity, and fragmentation.

get_pool_statusB

Get detailed pool status with VDEV topology and error counts.

list_datasetsA

List datasets with usage and quota info. Always specify a pool to avoid timeouts on large systems.

get_datasetB

Get detailed info for a specific dataset.

create_datasetC

Create a new ZFS dataset.

update_datasetC

Update dataset properties (compression, quota, comments, etc.).

delete_datasetB

Delete a dataset. Requires confirm=True.

list_snapshotsA

List ZFS snapshots. Always specify a dataset to avoid timeouts on large systems.

create_snapshotC

Create a manual ZFS snapshot.

delete_snapshotA

Delete a snapshot. Requires confirm=True. Snapshot format: dataset@name.

rollback_snapshotA

Rollback dataset to snapshot. Requires confirm=True. WARNING: destroys newer data.

clone_snapshotC

Clone a snapshot to a new dataset.

list_snapshot_tasksA

List automated snapshot task schedules.

list_smb_sharesA

List all SMB shares.

create_smb_shareC

Create a new SMB share. Path must start with /mnt/.

delete_smb_shareA

Delete an SMB share by ID. Requires confirm=True.

list_nfs_exportsB

List all NFS exports.

create_nfs_exportB

Create a new NFS export. Path must start with /mnt/.

delete_nfs_exportA

Delete an NFS export by ID. Requires confirm=True.

list_appsA

List all installed apps with their state.

get_app_configC

Get the full configuration of a specific app.

update_app_configA

Update app configuration.

WARNING: This is a REPLACE operation, not a merge. Any config keys not included will revert to defaults. Always get current config first with get_app_config, modify the needed values, and send the complete config.

install_appC

Install an app from the catalog.

delete_appB

Delete an installed app. Requires confirm=True.

start_appC

Start a stopped app.

stop_appC

Stop a running app.

upgrade_appC

Upgrade an app to the latest available version.

redeploy_appC

Redeploy an app with its current configuration.

list_available_appsB

Browse the app catalog for available apps to install.

list_vmsA

List all virtual machines with their state, CPU, and RAM configuration.

start_vmC

Start a virtual machine.

stop_vmA

Stop a virtual machine. Attempts graceful shutdown first, forces after timeout.

RAM/CPU changes require full stop+start from TrueNAS — in-guest reboot does NOT re-allocate resources.

update_vmA

Update VM configuration (RAM, CPUs, etc.).

Note: RAM/CPU changes only take effect after a full stop+start from TrueNAS — rebooting from inside the VM does NOT re-allocate resources.

list_interfacesA

List network interfaces with IPs and link state.

get_network_configA

Get network configuration: DNS servers, gateway, hostname.

list_graphsA

List available reporting graphs and their identifiers.

Available graphs include: cpu, cputemp, memory, disk, interface, load, uptime, arcsize, disktemp, and more. Some graphs require an identifier (disk name for 'disk'/'disktemp', interface name for 'interface').

get_reporting_dataB

Get historical reporting data for a graph.

Units: HOUR (1h), DAY (24h), WEEK, MONTH, YEAR. Some graphs need an identifier (e.g., disk name 'sda' for disk graphs, interface name 'enp5s0' for network graphs). Response format: [{name, identifier, data: [[unix_timestamp, value], ...]}]. Memory/ARC values in bytes, CPU in percentage.

list_usersA

List all system users.

get_userC

Get details for a specific user.

create_userC

Create a new system user.

update_userC

Update user properties.

delete_userC

Delete a user. Requires confirm=True.

list_disksA

List all disks with model, serial number, size, and pool membership.

get_disk_tempsA

Get current temperatures for all disks.

list_cloud_syncsA

List all cloud sync tasks with their status and schedule.

run_cloud_syncC

Trigger a cloud sync task to run immediately.

list_replicationsA

List all replication tasks with their status.

run_replicationC

Trigger a replication task to run immediately.

list_smart_resultsA

List SMART test results for all disks.

run_smart_testA

Run a SMART test on specified disks. test_type: SHORT or LONG. Note: TrueNAS 25.10 removed SMART scheduling from the API — these are manual tests only.

check_updatesA

Check for available TrueNAS system updates.

list_certificatesA

List all SSL/TLS certificates.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/thoriphes/truenas-ws-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server