Filesystem MCP Server

by druellan
MIT License
30,124
  • Linux
  • Apple
Integrations
  • Supports containerized deployment through Docker, enabling filesystem operations in an isolated environment with volume mounts for controlled access to host directories.

  • Implements filesystem operations through Node.js, allowing reading, writing, and manipulation of files and directories in a controlled environment.

Файловая система MCP Server [MOD]

Node.js сервер реализует Model Context Protocol (MCP) для операций файловой системы. Это ответвление от https://github.com/modelcontextprotocol/servers/tree/main/src/filesystem

Изменения:

  • Автономный, без зависимостей от корневого проекта
  • Можно использовать регулярные выражения для определения разрешенного каталога.
  • Автоматическое преобразование между прямой косой чертой (/) и обратной косой чертой ()

Функции

  • Чтение/запись файлов
  • Создание/список/удаление каталогов
  • Переместить файлы/каталоги
  • Поиск файлов
  • Получить метаданные файла

Примечание : сервер разрешит операции только в пределах каталогов, указанных с помощью args .

API

Ресурсы

  • file://system : Интерфейс операций файловой системы

Инструменты

  • прочитанный_файл
    • Прочитать полное содержимое файла
    • Ввод: path (строка)
    • Считывает полное содержимое файла в кодировке UTF-8
  • прочитать_несколько_файлов
    • Чтение нескольких файлов одновременно
    • Ввод: paths (string[])
    • Неудачные чтения не остановят всю операцию.
  • запись_файла
    • Создайте новый файл или перезапишите существующий (будьте осторожны)
    • Входные данные:
      • path (строка): Расположение файла
      • content (строка): Содержимое файла
  • редактировать_файл
    • Вносите выборочные изменения, используя расширенное сопоставление с образцом и форматирование.
    • Функции:
      • Сопоставление содержимого по строкам и по нескольким строкам
      • Нормализация пробелов с сохранением отступов
      • Несколько одновременных правок с правильным позиционированием
      • Определение и сохранение стиля отступа
      • Вывод различий в стиле Git с контекстом
      • Предварительный просмотр изменений в режиме пробного прогона
    • Входные данные:
      • path (строка): Файл для редактирования
      • edits (массив): Список операций редактирования
        • oldText (строка): Текст для поиска (может быть подстрокой)
        • newText (строка): Текст для замены
      • dryRun (логическое значение): предварительный просмотр изменений без их применения (по умолчанию: false)
    • Возвращает подробную информацию о различиях и соответствиях для пробных прогонов, в противном случае применяет изменения
    • Лучшая практика: всегда сначала используйте dryRun для предварительного просмотра изменений перед их применением.
  • создать_каталог
    • Создайте новый каталог или убедитесь, что он существует
    • Ввод: path (строка)
    • При необходимости создает родительские каталоги.
    • Выполняется без уведомления, если каталог существует
  • список_каталогов
    • Список содержимого каталога с префиксами [FILE] или [DIR]
    • Ввод: path (строка)
  • переместить_файл
    • Перемещать или переименовывать файлы и каталоги
    • Входные данные:
      • source (строка)
      • destination (строка)
    • Не удается, если пункт назначения существует
  • поиск_файлов
    • Рекурсивный поиск файлов/каталогов
    • Входные данные:
      • path (строка): Начальный каталог
      • pattern (строка): Шаблон поиска
      • excludePatterns (string[]): Исключить любые шаблоны. Поддерживаются форматы Glob.
    • Сопоставление без учета регистра
    • Возвращает полные пути к совпадениям
  • получить_информацию_о_файле
    • Получить подробные метаданные файла/каталога
    • Ввод: path (строка)
    • Возврат:
      • Размер
      • Время создания
      • Измененное время
      • Время доступа
      • Тип (файл/каталог)
      • Разрешения
  • список_разрешенных_каталогов
    • Список всех каталогов, к которым серверу разрешен доступ
    • Ввод не требуется
    • Возврат:
      • Каталоги, которые этот сервер может читать/писать

Использование с Claude Desktop

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

Примечание: вы можете предоставить изолированные каталоги серверу, смонтировав их в /projects . Добавление флага ro сделает каталог доступным только для чтения сервером.

Докер

Примечание: по умолчанию все каталоги должны быть смонтированы в /projects .

{ "mcpServers": { "filesystem": { "command": "docker", "args": [ "run", "-i", "--rm", "--mount", "type=bind,src=/Users/username/Desktop,dst=/projects/Desktop", "--mount", "type=bind,src=/path/to/other/allowed/dir,dst=/projects/other/allowed/dir,ro", "--mount", "type=bind,src=/path/to/file.txt,dst=/projects/path/to/file.txt", "mcp/filesystem", "/projects" ] } } }

НПХ

{ "mcpServers": { "filesystem": { "command": "npx", "args": [ "-y", "@modelcontextprotocol/server-filesystem", "/Users/username/Desktop", "/path/to/other/allowed/dir" ] } } }

Использование с VS Code

Для быстрой установки нажмите кнопки установки ниже...

Для ручной установки добавьте следующий блок JSON в файл настроек пользователя (JSON) в VS Code. Это можно сделать, нажав Ctrl + Shift + P и введя Preferences: Open Settings (JSON) .

При желании вы можете добавить его в файл .vscode/mcp.json в вашем рабочем пространстве. Это позволит вам поделиться конфигурацией с другими.

Обратите внимание, что ключ mcp не нужен в файле .vscode/mcp.json .

Вы можете предоставить изолированные каталоги серверу, смонтировав их в /projects . Добавление флага ro сделает каталог доступным только для чтения сервером.

Докер

Примечание: по умолчанию все каталоги должны быть смонтированы в /projects .

{ "mcp": { "servers": { "filesystem": { "command": "docker", "args": [ "run", "-i", "--rm", "--mount", "type=bind,src=${workspaceFolder},dst=/projects/workspace", "mcp/filesystem", "/projects" ] } } } }

НПХ

{ "mcp": { "servers": { "filesystem": { "command": "npx", "args": [ "-y", "@modelcontextprotocol/server-filesystem", "${workspaceFolder}" ] } } } }

Строить

Сборка Docker:

docker build -t mcp/filesystem -f src/filesystem/Dockerfile .

Лицензия

Этот сервер MCP лицензирован по лицензии MIT. Это означает, что вы можете свободно использовать, изменять и распространять программное обеспечение в соответствии с условиями лицензии MIT. Для получения более подробной информации см. файл LICENSE в репозитории проекта.

-
security - not tested
A
license - permissive license
-
quality - not tested

Сервер Node.js реализует протокол контекста модели (MCP) для операций с файловой системой с поддержкой регулярных выражений для разрешенных каталогов, что позволяет помощникам на основе ИИ безопасно читать, записывать и обрабатывать файлы с помощью естественного языка.

  1. Изменения:
    1. Функции
      1. API
        1. Ресурсы
        2. Инструменты
      2. Использование с Claude Desktop
        1. Докер
        2. НПХ
      3. Использование с VS Code
        1. Докер
        2. НПХ
      4. Строить
        1. Лицензия

          Related MCP Servers

          • -
            security
            A
            license
            -
            quality
            Node.js server implementing Model Context Protocol (MCP) for filesystem operations.
            Last updated -
            30,124
            47,105
            JavaScript
            MIT License
            • Linux
            • Apple
          • -
            security
            F
            license
            -
            quality
            Node.js server implementing Model Context Protocol for filesystem operations, allowing Claude to read, write, and manipulate files and directories in specified locations.
            Last updated -
            30,124
            JavaScript
          • -
            security
            A
            license
            -
            quality
            A Model Context Protocol (MCP) server that allows AI models to safely access and interact with local file systems, enabling reading file contents, listing directories, and retrieving file metadata.
            Last updated -
            47
            1
            JavaScript
            MIT License
            • Linux
          • -
            security
            F
            license
            -
            quality
            A Node.js server that implements Model Context Protocol (MCP) for controlling HWP (Korean word processor) documents, allowing AI assistants like Claude to create and manipulate Hangul documents.
            Last updated -
            27
            Python

          View all related MCP servers

          ID: 55ioilq1q0