truenas-mcp
truenas-mcp
Подключение 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-mcpClaude 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 |
Установка |
| Сборка из исходников / pip |
Безопасность | Деструктивные операции требуют | Различается |
Полная конфигурация
# 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Переменные окружения
Переменная | Обязательная | Описание |
| Да | URL-адрес экземпляра TrueNAS (например, |
| Да | API-ключ из интерфейса TrueNAS: Settings > API Keys > Add |
| Нет | Установите |
Конфигурация 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 платит за токены только за то, что действительно использует.
Категории
Категория | Действия | Охват |
| 24 | Информация о системе, конфигурация, службы, почта, API-ключи, NTP |
| 32 | Пулы, датасеты, снапшоты, периодические задачи снапшотов |
| 36 | SMB/CIFS, NFS-экспорты, iSCSI-цели/экстенты/порталы/инициаторы |
| 15 | Интерфейсы, глобальная конфигурация, статические маршруты, IPMI, поэтапные изменения |
| 16 | Пользователи, группы, привилегии/роли |
| 7 | Физические диски, SMART-тесты, температуры |
| 16 | Виртуальные машины, устройства ВМ (диск, NIC, дисплей, PCI) |
| 17 | Docker-приложения, конфигурация контейнерной среды выполнения |
| 14 | Обновления системы, загрузочные окружения, загрузочный пул |
| 8 | TLS-сертификаты, ACME/Let's Encrypt, DNS-аутентификаторы |
| 10 | Оповещения, службы уведомлений (Slack, email, PagerDuty) |
| 49 | Репликация, облачная синхронизация, облачное резервное копирование, cron, rsync, init-скрипты, SSH-ключи |
| 7 | stat, listdir, mkdir, права доступа, ACL, chown |
| 3 | Конфигурация метрик, графики, данные временных рядов |
| 8 | Active Directory, LDAP, Kerberos |
| 12 | SSH, FTP, SNMP, UPS, системные тюнинги |
| 3 | Журналы аудита, конфигурация аудита |
| 1 | Сырой API-выход для любого эндпоинта |
MCP-ресурсы (12)
Ресурсы только для чтения для панелей — вызов инструмента не требуется:
Ресурс | URI | Описание |
System Info |
| Версия, имя хоста, время работы, оборудование |
Pools |
| Все пулы с ёмкостью и состоянием |
Datasets |
| Все датасеты с свойствами |
Services |
| Обзор состояния служб |
Alerts |
| Текущие системные оповещения |
Network |
| Интерфейсы, IP-адреса, DNS, шлюз |
Shares |
| Все SMB, NFS и iSCSI-шары |
VMs |
| Виртуальные машины со статусом |
Apps |
| Установленные приложения |
Disks |
| Информация о физических дисках |
Boot Envs |
| Загрузочные окружения |
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
This server cannot be installed
Maintenance
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
- FlicenseAqualityDmaintenanceEnables 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.13396
- AlicenseCqualityDmaintenanceEnables 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.10017MIT
- FlicenseNot gradedqualityDmaintenanceEnables 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.
- AlicenseNot gradedqualityDmaintenanceEnables 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.2MIT
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.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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