Skip to main content
Glama
vespo92

TrueNAS Core MCP Server

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
TRUENAS_URLYesURL of your TrueNAS system (e.g., https://192.168.1.100)
TRUENAS_API_KEYYesYour TrueNAS API key
TRUENAS_VERIFY_SSLNoWhether to verify SSL certificates when connecting to TrueNASfalse

Capabilities

Server capabilities have not been inspected yet.

Tools

Functions exposed to the LLM to take actions

NameDescription
debug_connection

Debug connection settings and environment variables

reset_connection

Reset the HTTP client to force re-initialization

list_users

List all users in TrueNAS

get_user
Get detailed information about a specific user

Args:
    username: Username to look up
get_system_info

Get TrueNAS system information

list_pools

List all storage pools

list_datasets

List all datasets

get_pool_status
Get detailed status of a specific pool

Args:
    pool_name: Name of the pool
create_dataset
Create a new dataset

Args:
    pool: Pool name where dataset will be created
    name: Dataset name
    compression: Compression algorithm (default: lz4)
    quota: Optional quota in bytes
list_smb_shares

List all SMB shares

create_smb_share
Create a new SMB share

Args:
    path: Path to share
    name: Share name
    comment: Optional comment
    read_only: Whether share is read-only
create_snapshot
Create a snapshot of a dataset

Args:
    dataset: Dataset path (e.g., "tank/data")
    name: Snapshot name
    recursive: Whether to create recursive snapshots
modify_dataset_permissions
Modify dataset permissions (chmod/chown equivalent)

Args:
    dataset: Dataset path (e.g., "tank/data")
    mode: Unix permission mode (e.g., "755", "644")
    owner: Owner username or UID
    group: Group name or GID
    recursive: Apply permissions recursively
update_dataset_acl
Update dataset Access Control Lists (ACLs)

Args:
    dataset: Dataset path (e.g., "tank/data")
    acl_entries: List of ACL entries with permissions
    recursive: Apply ACLs recursively
    strip_acl: Remove all ACLs and revert to Unix permissions
get_dataset_permissions
Get current permissions and ACL information for a dataset

Args:
    dataset: Dataset path (e.g., "tank/data")
modify_dataset_properties
Modify ZFS dataset properties

Args:
    dataset: Dataset path (e.g., "tank/data")
    properties: Dictionary of properties to update
               Examples: {"compression": "lz4", "dedup": "on", "quota": "10G"}
get_dataset_properties
Get all properties of a dataset

Args:
    dataset: Dataset path (e.g., "tank/data")
create_nfs_export
Create an NFS export for Kubernetes persistent volumes

Args:
    dataset: Dataset path to export (e.g., "tank/k8s-volumes")
    allowed_networks: List of allowed networks (e.g., ["10.0.0.0/24"])
    read_only: Whether the export is read-only
    maproot_user: User to map root to
    maproot_group: Group to map root to
create_iscsi_target
Create an iSCSI target for Kubernetes block storage

Args:
    name: Target name (e.g., "k8s-block-01")
    dataset: Dataset for storing the iSCSI extent
    size: Size of the iSCSI extent (e.g., "100G")
    portal_id: iSCSI portal ID to use
create_snapshot_policy
Create an automated snapshot policy

Args:
    dataset: Dataset to snapshot
    name: Policy name
    schedule: Schedule configuration (cron-like)
             {"minute": "0", "hour": "*/4", "dom": "*", "month": "*", "dow": "*"}
    retention: Retention settings {"hourly": 24, "daily": 7, "weekly": 4, "monthly": 12}
    recursive: Include child datasets

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/vespo92/TrueNasCoreMCP'

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