MCP Server
MCP
TrueNAS SCALE
Inspect and manage TrueNAS SCALE storage, shares, apps and system state with your own API key
Install
oci:ghcr.io/cedricziel/truenas-mcp:0.4.2
Configuration Example
{
"remotes": [],
"packages": [
{
"registryType": "oci",
"identifier": "ghcr.io/cedricziel/truenas-mcp:0.4.2",
"runtimeHint": "docker",
"transport": {
"type": "streamable-http",
"url": "http://localhost:8080/mcp",
"headers": [
{
"description": "Your own TrueNAS API key as `Bearer <key>`. Create it under Credentials -> API Keys. The server stores no credential; the session reaches exactly what this key permits.",
"isRequired": true,
"isSecret": true,
"name": "Authorization"
}
]
},
"runtimeArguments": [
{
"description": "Bind the MCP listener to loopback only. Plaintext is enabled below on the assumption that nothing off-host can reach it.",
"value": "127.0.0.1:8080:8080",
"type": "named",
"name": "--publish"
}
],
"environmentVariables": [
{
"description": "TrueNAS host to manage, optionally `host:port`. Requires TrueNAS SCALE 25.04 or later.",
"isRequired": true,
"placeholder": "nas.local",
"name": "TRUENAS_MCP_TARGET"
},
{
"description": "Serve MCP without TLS. Set here because the listener is published on loopback only; drop it and supply TRUENAS_MCP_TLS_CERT/KEY if the port is reachable from elsewhere.",
"format": "boolean",
"value": "true",
"name": "TRUENAS_MCP_ALLOW_PLAINTEXT"
},
{
"description": "Accept the TrueNAS certificate unverified while keeping the connection encrypted. TrueNAS ships a self-signed certificate for `CN=localhost`, so no address you can reach it by will validate.",
"format": "boolean",
"default": "false",
"name": "TRUENAS_MCP_TARGET_INSECURE"
},
{
"description": "Expose the mutating tools. Read-only by default; unrecoverable operations stay unreachable either way.",
"format": "boolean",
"default": "false",
"name": "TRUENAS_MCP_ENABLE_WRITES"
}
]
}
]
}
mcp
model-context-protocol
oci
By
Comments
Sign in to leave a comment