Skip to main content
Glama
spranab

truenas-mcp

by spranab

truenas-mcp

npm npm downloads

Подключение NAS к ИИ-ассистенту обычно означает регистрацию одного MCP-инструмента на каждую операцию. Чтобы полноценно покрыть TrueNAS SCALE, потребуется 50–80 схем инструментов — около 28 000 токенов вашего контекстного окна тратится до того, как модель прочитает хоть одно слово вашего вопроса, при каждом запросе, независимо от того, касаетесь ли вы хранилища.

truenas-mcp покрывает 278 действий в 18 категориях — весь REST API TrueNAS SCALE — с помощью одного иерархического инструмента, который стоит около 200 токенов. Модель спрашивает, какие категории существуют, углубляется в нужную, а затем вызывает действие. Деструктивные операции отказываются выполняться без confirm: true.

Установка (60 секунд)

# No install needed
TRUENAS_URL=https://truenas.local TRUENAS_API_KEY=1-abc123 npx truenas-mcp

Claude Code:

claude mcp add truenas -- npx -y truenas-mcp   --env TRUENAS_URL=https://truenas.local   --env TRUENAS_API_KEY=1-your-api-key-here

Получите API-ключ в интерфейсе TrueNAS: Settings > API Keys > Add.

Related MCP server: Proxmox MCP Server

Как это выглядит

Вы: «Здоровы ли мои пулы, и можете ли вы создать NFS-шару для датасета media?»

→ truenas({ category: "storage", action: "pool_list" })
  tank — ONLINE, 68% used, 0 errors

→ truenas({ category: "sharing", action: "nfs_share_create",
            params: { path: "/mnt/tank/media", comment: "Media share" } })

Модель обнаружила nfs_share_create, сначала вызвав truenas({ category: "sharing" }) — в её промпте никогда не было этих 36 действий для шаринга.

Почему один инструмент вместо 278

truenas-mcp

Типичный NAS MCP-сервер

Действия

278

5–80

Стоимость в токенах

~200 токенов (1 инструмент)

5 000–30 000 токенов (50–80 инструментов)

Обнаружение

Иерархический — запросите то, что нужно

Плоский — всё загружается заранее

MCP-ресурсы

12 панелей только для чтения

0

Установка

npx truenas-mcp

Сборка из исходников / pip

Безопасность

Деструктивные операции требуют confirm: true

Различается

Полная конфигурация

# Using npx (no install needed)
TRUENAS_URL=https://truenas.local TRUENAS_API_KEY=1-abc123 npx truenas-mcp

# Or install globally
npm install -g truenas-mcp

Переменные окружения

Переменная

Обязательная

Описание

TRUENAS_URL

Да

URL-адрес экземпляра TrueNAS (например, https://truenas.local)

TRUENAS_API_KEY

Да

API-ключ из интерфейса TrueNAS: Settings > API Keys > Add

TRUENAS_VERIFY_SSL

Нет

Установите false, чтобы пропустить проверку SSL (самоподписанные сертификаты)

Конфигурация Claude Desktop

Добавьте в ваш claude_desktop_config.json:

{
  "mcpServers": {
    "truenas": {
      "command": "npx",
      "args": ["-y", "truenas-mcp"],
      "env": {
        "TRUENAS_URL": "https://truenas.local",
        "TRUENAS_API_KEY": "1-your-api-key-here",
        "TRUENAS_VERIFY_SSL": "false"
      }
    }
  }
}

Claude Code

claude mcp add truenas -- npx -y truenas-mcp \
  --env TRUENAS_URL=https://truenas.local \
  --env TRUENAS_API_KEY=1-your-api-key-here \
  --env TRUENAS_VERIFY_SSL=false

Как это работает — иерархический дизайн инструмента

Вместо регистрации 278 отдельных инструментов (что потребовало бы ~30 тыс. токенов в системном промпте LLM), этот сервер предоставляет один инструмент под названием truenas с тремя режимами использования:

1. Обнаружение категорий

truenas()

2. Изучение категории

truenas({ category: "storage" })

3. Выполнение действия

truenas({ category: "storage", action: "pool_list" })
truenas({ category: "storage", action: "dataset_create", params: { name: "tank/media", compression: "LZ4" } })

Это означает, что LLM платит за токены только за то, что действительно использует.

Категории

Категория

Действия

Охват

system

24

Информация о системе, конфигурация, службы, почта, API-ключи, NTP

storage

32

Пулы, датасеты, снапшоты, периодические задачи снапшотов

sharing

36

SMB/CIFS, NFS-экспорты, iSCSI-цели/экстенты/порталы/инициаторы

network

15

Интерфейсы, глобальная конфигурация, статические маршруты, IPMI, поэтапные изменения

account

16

Пользователи, группы, привилегии/роли

disk

7

Физические диски, SMART-тесты, температуры

vm

16

Виртуальные машины, устройства ВМ (диск, NIC, дисплей, PCI)

app

17

Docker-приложения, конфигурация контейнерной среды выполнения

update

14

Обновления системы, загрузочные окружения, загрузочный пул

certificate

8

TLS-сертификаты, ACME/Let's Encrypt, DNS-аутентификаторы

alert

10

Оповещения, службы уведомлений (Slack, email, PagerDuty)

data_protection

49

Репликация, облачная синхронизация, облачное резервное копирование, cron, rsync, init-скрипты, SSH-ключи

filesystem

7

stat, listdir, mkdir, права доступа, ACL, chown

reporting

3

Конфигурация метрик, графики, данные временных рядов

directory

8

Active Directory, LDAP, Kerberos

service_config

12

SSH, FTP, SNMP, UPS, системные тюнинги

audit

3

Журналы аудита, конфигурация аудита

api

1

Сырой API-выход для любого эндпоинта

MCP-ресурсы (12)

Ресурсы только для чтения для панелей — вызов инструмента не требуется:

Ресурс

URI

Описание

System Info

truenas://system/info

Версия, имя хоста, время работы, оборудование

Pools

truenas://storage/pools

Все пулы с ёмкостью и состоянием

Datasets

truenas://storage/datasets

Все датасеты с свойствами

Services

truenas://services

Обзор состояния служб

Alerts

truenas://alerts

Текущие системные оповещения

Network

truenas://network/summary

Интерфейсы, IP-адреса, DNS, шлюз

Shares

truenas://sharing

Все SMB, NFS и iSCSI-шары

VMs

truenas://vms

Виртуальные машины со статусом

Apps

truenas://apps

Установленные приложения

Disks

truenas://disks

Информация о физических дисках

Boot Envs

truenas://boot/environments

Загрузочные окружения

Update

truenas://system/update

Конфигурация обновления

Примеры диалогов

«Какие у меня пулы и здоровы ли они?»

→ truenas({ category: "storage", action: "pool_list" })

«Создайте NFS-шару для /mnt/tank/media»

→ truenas({ category: "sharing", action: "nfs_share_create", params: { path: "/mnt/tank/media", comment: "Media share" } })

«Проверьте наличие обновлений системы»

→ truenas({ category: "update", action: "update_check" })

«Какие SMART-тесты выполнялись на sda?»

→ truenas({ category: "disk", action: "disk_smart_test_list", params: { disk: "sda" } })

Безопасность

Все деструктивные операции требуют confirm: true в параметрах:

  • Создание/экспорт пула, замена диска

  • Удаление датасета/снапшота, откат снапшота

  • Удаление ВМ, удаление/откат приложения

  • Перезагрузка/выключение системы, применение обновления

  • Стирание диска, подключение/отключение загрузочного диска

  • Удаление сертификата, удаление загрузочного окружения

  • Выход из служб каталогов, установка ACL

Без confirm: true эти действия возвращают сообщение об ошибке с объяснением, что произойдёт.

Совместимость с API

Создано для TrueNAS SCALE REST API v2.0. Совместимо с TrueNAS SCALE 22.x–25.x.

Разработка

git clone https://github.com/spranab/truenas-mcp
cd truenas-mcp
npm install
npm run build
npm run dev  # watch mode

Связанные проекты

Другие MCP-серверы и агентская инфраструктура того же автора:

  • mcpier — самохостинговая управляющая плоскость MCP для вашего домашнего сервера; не хранит API-ключи на ваших клиентах.

  • saga-mcp — трекер проектов на SQLite, чтобы агент не терял план между сессиями.

  • yantrikdb-mcp — постоянная когнитивная память для Claude Code, Cursor и Windsurf.

  • swarmcode — канал реального времени между экземплярами Claude Code на разных машинах.

  • brainstorm-mcp — многомодельное обсуждение как MCP-инструмент.

Лицензия

MIT

A
license - permissive license
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
23dResponse time
Release cycle
Releases (12mo)
Commit activity
Issues opened vs closed

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • F
    license
    A
    quality
    D
    maintenance
    Enables Claude to monitor and manage homelab infrastructure including Docker containers, OPNsense firewall, and TrueNAS storage with configurable capability levels from read-only monitoring to full management control.
    13
    39
    6
  • A
    license
    C
    quality
    D
    maintenance
    Enables management of Proxmox VE infrastructure through natural language, providing 120+ tools to control virtual machines, containers, storage, cluster resources, users, and network configurations via the Proxmox API.
    100
    17
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables AI agents to manage VMware vSphere virtual infrastructure through comprehensive operations including VM power control, snapshot management, resource monitoring, performance analytics, and bulk operations with built-in safety confirmations for destructive actions.
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to interact with Dell PowerScale (Isilon) OneFS clusters through over 2,400 tools generated from the REST API specification. It supports managing storage protocols, snapshots, networking, and cluster configurations using natural language.
    2
    MIT

View all related MCP servers

Related MCP Connectors

  • Let AI operate servers without SSH. Choose actions, approve risky changes, and audit every step.

  • Operate Linux, macOS and Windows from your LLM. Every action runs through an auditable allowlist.

  • SaaS intelligence for AI agents. 5 unified tools cover 1,000+ services with 91-96% token savings.

View all MCP Connectors

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/spranab/truenas-mcp'

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