MCP filesystem подключает ИИ-клиент к выбранным локальным каталогам через сервер файловых операций. Сервер умеет читать и менять файлы в разрешённых каталогах, поэтому перед рабочими данными нужно проверить список инструментов, права процесса и поведение на учебной папке. Даже при локальной папке текст может уйти в облачную модель, если такой клиент выбран.

Разрешённые каталоги

TL;DR

Серверу задают разрешённые каталоги при запуске или передают их через механизм 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, версии сервера или прав учётной записи.

  1. Создайте учебный каталог и исходник с известным содержимым; держите второй файл за пределами разрешённого дерева.
  2. Запустите сервер с выбранными каталогами, подключите клиент и вызовите list_allowed_directories.
  3. Проверьте чтение внутри границы, попытку чтения снаружи и символическую ссылку на внешний файл.
  4. Проверьте запись черновика и попытку перезаписать исходник; сверьте результат на диске.
  5. Измените Roots в тестовом клиенте, если он поддерживает этот механизм, и повторите проверки границы.

Один успешный тест чтения говорит лишь о конкретной конфигурации. Запишите версию сервера, параметры запуска, список Roots и права учётной записи. Если тест внешнего пути вернул данные, остановите доступ к рабочим файлам и выясните, где расширилась граница: в клиенте, сервере, символической ссылке или правах процесса. Изменение инструмента записи тоже требует нового прогона: разрешённый каталог и возможность перезаписывать файлы внутри него решают разные задачи. Результат приёмки оформляйте как список проверенных операций и отказов.

● Discovery · 1 час · бесплатно

Как проверяете допуски агента перед доступом к живым файлам?

Прийти на Discovery →

Защита границ

Граница каталога и права процесса дополняют друг друга. Сервер проверяет, что путь относится к разрешённому дереву, а файловая система решает, что сможет сделать запущенная учётная запись. Проверьте пути с «..», символические ссылки и смену разрешённых корней через Roots. На практике опасны также открытые права записи на весь каталог: даже внутри разрешённого дерева модель способна выбрать ошибочный файл. Для важных исходников используйте отдельный каталог только для чтения или контейнерное монтирование с запретом записи. Подтверждение записи в клиенте полезно, но фактическую защиту исходников обеспечивают права и проверенный путь.

ПроверкаОжидаемый результатДополнительная защита
Путь с «..» наружуСервер отклоняет чтениеОграничить права процесса
Символическая ссылка наружуПроверить отказ на учебной ссылкеИспользовать изолированный каталог
Перезапись исходникаОтказ файловой системыИсходники только для чтения
Смена Roots клиентомНовый список виден в list_allowed_directoriesПовторный тест прав и путей

Проводите такие проверки при изменении конфигурации и перед расширением доступа. Если клиент получает новые Roots во время работы, прежний тест перестаёт описывать текущие границы. Отдельно убедитесь, что процесс сервера запущен от отдельной учётной записи с минимальными правами. Владелец данных должен видеть результаты проверки и список разрешённых каталогов; это делает решение о добавлении новой папки осознанным.

Локальные данные и модель

Filesystem MCP server работает рядом с файлами, но ИИ-клиент может отправлять прочитанный текст в удалённую модель. Поэтому перед подключением договоров, финансовых выгрузок или проектной документации проверьте маршрут данных, условия выбранного провайдера и правила компании. Для задачи с локальной обработкой нужно отдельно выбрать локальную модель и проверить, какие процессы имеют сетевой доступ. Маршрут текста определяется настройками модели и клиента. Соседний сценарий — агент на компьютере сотрудника; вопросы обработки закрытых данных разобраны в материале о локальном контуре.

Начните с обезличенной учебной папки. Покажите владельцу данных фактический список разрешённых каталогов, доступные инструменты, результаты теста путей и маршрут передачи текста модели. Только после этой проверки подключайте рабочую папку в пределах согласованных прав. Для регулярной работы сохраните конфигурацию и контрольную фикстуру; повторный запуск теста после обновления клиента заметно упрощает разбор изменений. Сценарии внедрения агентов описаны на странице ИИ-агентов для бизнеса.

// с чего начать

Заведите папку черновиков как корень: операции чтения и записи, фикстура для теста. Добавляйте подпапки по одной после стабильного прогона — так контур растёт управляемо и без сюрпризов. Журнал прогонов хранится рядом с настройками: дата, состав теста, результат. Первый прогон делайте в присутствии владельца данных: он сверяет манифест с реальным содержимым папки. Сценарии с агентами и их внедрение — на странице про ИИ-агентов для бизнеса.

Частые вопросы

MCP filesystem работает без интернета?
Файловые операции сервера выполняются локально. При использовании облачной модели содержимое, прочитанное агентом, может передаваться провайдеру. Для полностью локальной обработки проверьте модель, клиент и сетевой маршрут.
Какие операции доступны агенту?
Официальный сервер поддерживает чтение, поиск, запись, редактирование, перемещение и работу с каталогами. Фактические вызовы зависят от клиента и прав процесса; запись и перемещение проверяйте отдельно на учебной папке.
Что будет при запросе файла за пределами каталога?
Сервер должен отклонить выход за текущий список разрешённых каталогов. Проверьте это на пути с «..», отдельном внешнем файле и символической ссылке. Права учётной записи добавляют второй уровень защиты.
Можно ли дать доступ к нескольким папкам?
Да. Каталоги можно задать при запуске или через MCP Roots. Клиент с поддержкой Roots способен заменить список из аргументов запуска; фактический список смотрите через list_allowed_directories.
Есть ли журнал всех действий в сервере?
Наличие журнала зависит от клиента и инфраструктуры вокруг сервера. Аннотация описывает свойства операции; журнал вызовов нужно настроить отдельно. Для контроля настройте фиксацию вызовов и результатов отдельно.
Сколько стоит такой контур?
Состав работ зависит от числа каталогов, файловых прав, способа запуска клиента и требований к аудиту. Оцените настройку, проверку фикстуры и сопровождение после описания ваших данных и сценариев.