MCP filesystem подключает ИИ-клиент к выбранным локальным каталогам через сервер файловых операций. Сервер умеет читать и менять файлы в разрешённых каталогах, поэтому перед рабочими данными нужно проверить список инструментов, права процесса и поведение на учебной папке. Даже при локальной папке текст может уйти в облачную модель, если такой клиент выбран.
Разрешённые каталоги
Серверу задают разрешённые каталоги при запуске или передают их через механизм MCP Roots. Клиент с поддержкой Roots может заменить исходный список каталогов, поэтому границу проверяют после подключения и при каждом изменении настроек.
Официальный filesystem MCP server предоставляет операции чтения, записи, редактирования, перемещения и поиска файлов. Разрешённые каталоги можно передать аргументами запуска. Если MCP-клиент поддерживает Roots, он сообщает свой список корней серверу; этот список заменяет каталоги из аргументов и может обновляться во время работы. Проверьте фактический результат инструментом list_allowed_directories после инициализации клиента. Для дополнительной границы используйте отдельную учётную запись процесса или контейнер с нужными монтированиями: файловые права действуют независимо от подсказок модели. Общая схема MCP-подключения разобрана в материале о настройке MCP; здесь рассматриваем доступ к конкретным папкам.
Выберите небольшой рабочий каталог под одну задачу, например папку с обезличенными отчётами. Запуск на всём домашнем каталоге сотрудника расширяет возможный ущерб от ошибочного вызова инструмента. Манифест с описанием файлов и правилами подготовки черновиков помогает ориентироваться в структуре. Права доступа при этом задают отдельно. Если клиент может обновлять Roots, владелец подключения должен контролировать этот список. После добавления нового каталога повторите проверку разрешённых путей, полномочий процесса и поведения облачной модели при чтении файла.
Инструменты и запись
Набор инструментов официального сервера включает чтение текста и медиа, список каталога, поиск, метаданные, создание каталога, запись, точечное редактирование и перемещение. При этом write_file может перезаписать существующий файл, а move_file меняет расположение исходника. Аннотации MCP помечают операции чтения и потенциально разрушительные записи, но эти пометки служат подсказкой клиенту. Если нужен режим только чтения, закрепите его правами операционной системы или монтированием каталога с запретом записи. Для такого ограничения нужны файловые права или монтирование с запретом записи.
- Чтение и поиск: откройте файл и проверьте, что клиент видит только разрешённые каталоги.
- Метаданные: дату правки используйте как подсказку, а содержимое и статус документа сверяйте отдельно.
- Запись: выделите каталог черновиков и проверьте права учётной записи сервера на исходники и новую папку.
- Перемещение и редактирование: испытайте их отдельно; если задача обходится без этих операций, ограничьте их в клиенте и на уровне файловых прав.
Для защиты оригиналов удобно держать исходники в каталоге с правом чтения, а черновики — в отдельном месте с правом записи. Настройку прав проверьте фактическим запросом: агент может попытаться перезаписать файл через write_file, даже если в промпте запрет записан ясно. У официального сервера нет универсального встроенного журнала, гарантирующего фиксацию каждого вызова. Если аудит обязателен, настройте его в MCP-клиенте, оболочке запуска или на уровне файловой системы и убедитесь, что запись содержит время, путь, операцию и результат. Проверяйте также место хранения журнала: доступ агента к нему должен соответствовать правилам команды.
Тест на фикстуре
Фикстура — учебный каталог без рабочих данных. Создайте исходный файл, подпапку для черновиков, файл за пределами разрешённого каталога и символическую ссылку наружу. Сначала проверьте список allowed directories, затем чтение и запись по разрешённому пути. После этого запросите чтение внешнего файла, путь с переходом через «..» и чтение через ссылку. Результат каждого запроса запишите рядом с настройками клиента. Тест повторяют после смены клиента, Roots, версии сервера или прав учётной записи.
- Создайте учебный каталог и исходник с известным содержимым; держите второй файл за пределами разрешённого дерева.
- Запустите сервер с выбранными каталогами, подключите клиент и вызовите list_allowed_directories.
- Проверьте чтение внутри границы, попытку чтения снаружи и символическую ссылку на внешний файл.
- Проверьте запись черновика и попытку перезаписать исходник; сверьте результат на диске.
- Измените Roots в тестовом клиенте, если он поддерживает этот механизм, и повторите проверки границы.
Один успешный тест чтения говорит лишь о конкретной конфигурации. Запишите версию сервера, параметры запуска, список Roots и права учётной записи. Если тест внешнего пути вернул данные, остановите доступ к рабочим файлам и выясните, где расширилась граница: в клиенте, сервере, символической ссылке или правах процесса. Изменение инструмента записи тоже требует нового прогона: разрешённый каталог и возможность перезаписывать файлы внутри него решают разные задачи. Результат приёмки оформляйте как список проверенных операций и отказов.
Как проверяете допуски агента перед доступом к живым файлам?
Защита границ
Граница каталога и права процесса дополняют друг друга. Сервер проверяет, что путь относится к разрешённому дереву, а файловая система решает, что сможет сделать запущенная учётная запись. Проверьте пути с «..», символические ссылки и смену разрешённых корней через Roots. На практике опасны также открытые права записи на весь каталог: даже внутри разрешённого дерева модель способна выбрать ошибочный файл. Для важных исходников используйте отдельный каталог только для чтения или контейнерное монтирование с запретом записи. Подтверждение записи в клиенте полезно, но фактическую защиту исходников обеспечивают права и проверенный путь.
| Проверка | Ожидаемый результат | Дополнительная защита |
|---|---|---|
| Путь с «..» наружу | Сервер отклоняет чтение | Ограничить права процесса |
| Символическая ссылка наружу | Проверить отказ на учебной ссылке | Использовать изолированный каталог |
| Перезапись исходника | Отказ файловой системы | Исходники только для чтения |
| Смена Roots клиентом | Новый список виден в list_allowed_directories | Повторный тест прав и путей |
Проводите такие проверки при изменении конфигурации и перед расширением доступа. Если клиент получает новые Roots во время работы, прежний тест перестаёт описывать текущие границы. Отдельно убедитесь, что процесс сервера запущен от отдельной учётной записи с минимальными правами. Владелец данных должен видеть результаты проверки и список разрешённых каталогов; это делает решение о добавлении новой папки осознанным.
Локальные данные и модель
Filesystem MCP server работает рядом с файлами, но ИИ-клиент может отправлять прочитанный текст в удалённую модель. Поэтому перед подключением договоров, финансовых выгрузок или проектной документации проверьте маршрут данных, условия выбранного провайдера и правила компании. Для задачи с локальной обработкой нужно отдельно выбрать локальную модель и проверить, какие процессы имеют сетевой доступ. Маршрут текста определяется настройками модели и клиента. Соседний сценарий — агент на компьютере сотрудника; вопросы обработки закрытых данных разобраны в материале о локальном контуре.
Начните с обезличенной учебной папки. Покажите владельцу данных фактический список разрешённых каталогов, доступные инструменты, результаты теста путей и маршрут передачи текста модели. Только после этой проверки подключайте рабочую папку в пределах согласованных прав. Для регулярной работы сохраните конфигурацию и контрольную фикстуру; повторный запуск теста после обновления клиента заметно упрощает разбор изменений. Сценарии внедрения агентов описаны на странице ИИ-агентов для бизнеса.
Заведите папку черновиков как корень: операции чтения и записи, фикстура для теста. Добавляйте подпапки по одной после стабильного прогона — так контур растёт управляемо и без сюрпризов. Журнал прогонов хранится рядом с настройками: дата, состав теста, результат. Первый прогон делайте в присутствии владельца данных: он сверяет манифест с реальным содержимым папки. Сценарии с агентами и их внедрение — на странице про ИИ-агентов для бизнеса.