Posted in

I started using my local LLMs and an MCP server to manage my NAS – it's…

The topic I started using my local LLMs and an MCP server to manage my NAS – it’s… is currently the subject of lively discussion — readers and analysts are keeping a close eye on developments.

This is taking place in a dynamic environment: companies’ decisions and competitors’ reactions can quickly change the picture.

Despite my general distaste for shoehorned AI features that nobody wants, I must admit that large language models have boosted my productivity quite a bit. And I don’t just mean cloud-based LLMs, either. I’ve spent the last couple of months pairing my local models with open-source tools, and these LLMs are surprisingly good at tackling OCR workflows, generating bookmark tags, organizing notes, and other bogus tasks.

That’s before you include all the Model Context Protocol servers available for typical FOSS apps and platforms. In fact, I recently came across a couple of MCP servers designed for TrueNAS. Since it’s the distro powering the virtualized, local, and remote storage rigs in my 3-2-1 backup workflow, I figured I could try connecting LLMs with my TrueNAS instances. Now that I’ve been using LLMs to control my NAS rigs for a week, this setup is a lot safer and easier than you’d think – provided you maintain some ground rules and don’t go overboard with your prompts.

If you’re not sure how this MCP-based LLM setup works, let me break down my setup real quick. On its own, I can’t control TrueNAS via LLM instructions, and I’d either have to rely on its web UI or typical CLI scripts and commands to manage my storage pools. However, an MCP server flips this situation on its head by translating natural language instructions from my local LLM clients into API calls that my TrueNAS rigs can understand. So, I can issue typical commands to my LLMs, and they’ll have no trouble performing the specified operations on my NAS units.

On paper, this sounds like a recipe for disaster, as a single vague command is all it takes for dumb, low-perimeter models to wipe out entire storage pools. But there are a handful of ways to overcome this issue. I’ve primarily used the official MCP server released by TrueNAS, and it’s fairly harmless for the most part. Most utilities available in this repo involve querying my TrueNAS setup, and the only damage it can do is delete my NAS shares, not their underlying data pools.

Plus, I tend to use a 9B model (specifically Qwen 3.5) for my TrueNAS management tasks, and this LLM hasn’t misinterpreted my responses even after dozens of queries. I’ve even tried deploying apps and SMB shares using Qwen 3.5, and as long as I use detailed prompts, it doesn’t choose random parameters when executing API calls on my TrueNAS machines. I’ve also disabled tools that can update my TrueNAS instances to further mitigate the chances of irrecoverable failure.

For reference, I’m using my RTX 3080 Ti to host LLMs in LM Studio, and although it runs on the overly bloated Windows 11, I don’t have a lot of trouble setting up the TrueNAS MCP Server. First, I created a new API token for the MCP server inside the My API Keys section on TrueNAS. Then, I downloaded the truenas-mcp-windows-amd64.exe file from the official GitHub repo and moved it to the C:Windowssystem32 directory on my Windows 11 client. The GitHub repo has instructions on setting it up for Claude Desktop, but the parameters for the mcp.json file are more or less the same on LM Studio, and all I had to do was replace the truenas-ip-address and api-key variables with the local values:

Remember to follow the right JSON rules when setting up the MCP server.

Once I’d saved the file, the truenas-mcp server appeared under the Integrations section, and I could enable it on my LLM chats.

Let me make it clear: The TrueNAS MCP server is a solid option even for hardcore data hoarders and NAS enthusiasts. But if you’re looking for something that can add even more features to the mix and are well aware of the risks, you can check out additional GitHub repos.

I’ve tried spranab’s TrueNAS MCP server on a virtualized NAS I use for my experiments, and I like how it brings additional networking and user management provisions to my LM Studio control hub. Unlike the official MCP server, this one also avoids hogging the context window on my Qwen 3.5 LLM by exposing a single tool that houses other utilities. Credit where it’s due, the developer has also included extra provisions to ensure LLMs don’t randomly execute destructive actions on their own. Setting it up was pretty easy, and all I had to do was run npm install -g truenas-mcp within Command Prompt, before copying the rest of the variables under the mcpServers header and changing truenas to truenas-unofficial to avoid conflicts with the first-party MCP server.

But as a paranoid data hoarder who uses an offsite NAS just to ensure my backups and media files remain safe, I’ll stick to the official TrueNAS MCP server for now.