Jak działa referencyjny serwer Filesystem MCP: 13 narzędzi, dozwolone katalogi, Roots, montowanie Docker tylko do odczytu i kreator, który napisze za Ciebie konfigurację JSON.
Serwer Filesystem MCP to referencyjny program Node.js z projektu Model Context Protocol, który pozwala asystentowi AI czytać, zapisywać, wyszukiwać i przenosić pliki, ale tylko w folderach, na które pozwolisz. Podajesz je przy uruchomieniu albo Twoja aplikacja przekazuje je przez Roots. Wszystko poza nimi jest odrzucane.
Serwer Filesystem MCP w skrócie
Element
Wartość
Pakiet npm
@modelcontextprotocol/server-filesystem
Obraz Docker
mcp/filesystem
Gdzie działa
Na Twoim komputerze, uruchamiany przez Twoją aplikację MCP
Ograniczenie dostępu
Tylko dozwolone katalogi, z argumentów lub Roots
Narzędzia
13, z czego 9 tylko czyta
MCP (Model Context Protocol) to otwarty standard, który pozwala aplikacji asystenta wywoływać małe programy pomocnicze zwane serwerami. Serwer systemu plików to ten, który większość osób instaluje jako pierwszy, bo zamienia polecenie "zajrzyj do mojego folderu z opisami produktów" w coś, co asystent naprawdę może zrobić. Ta strona wyjaśnia, do czego ma dostęp, jak działa ograniczenie folderów i jak zostawić go w trybie tylko do odczytu. Użyj kreatora poniżej, aby wygenerować konfigurację do wklejenia w ustawieniach MCP Twojej aplikacji.
Wpisz foldery, które asystent ma widzieć, po jednym w wierszu, używając pełnych ścieżek.
Wybierz npx (wymaga Node.js) lub Docker. Docker może montować foldery tylko do odczytu.
Wybierz kształt konfiguracji, którego oczekuje Twoja aplikacja: większość aplikacji używa mcpServers, VS Code używa servers.
Skopiuj JSON do pliku konfiguracji MCP swojej aplikacji i uruchom ją ponownie, żeby wystartowała serwer.
Udostępniaj najmniejszy folder, który wystarczy do zadania, na przykład jeden folder z treściami, nigdy cały katalog domowy.
Uruchamiaj go przez Docker z montowaniem tylko do odczytu, gdy asystent ma wyłącznie czytać.
Poproś asystenta, by najpierw uruchomił list_allowed_directories, żebyś dokładnie widział, co dostał.
Użyj opcji próbnego uruchomienia w edit_file, zanim pozwolisz na zmiany w ważnych dla Ciebie plikach.
Miej kopię zapasową lub historię wersji wszystkiego, do czego pozwalasz asystentowi zapisywać.
Najczęściej zadawane pytania
Czy serwer Filesystem MCP może czytać pliki spoza podanych folderów?
Nie. README stwierdza, że wszystkie operacje na systemie plików są ograniczone do dozwolonych katalogów. Jeśli klient wysyła Roots, całkowicie zastępują one foldery z wiersza poleceń, więc lista dozwolonych to to, co Twoja aplikacja przekazała ostatnio.
Co się stanie, jeśli uruchomię go bez żadnych folderów?
Jeśli Twoja aplikacja obsługuje Roots, serwer czeka, aż aplikacja je wyśle. Jeśli aplikacja nie obsługuje Roots, a nie podałeś folderów, serwer zapisuje przyczynę w logu, zamyka połączenie i kończy działanie ze statusem 1.
Jak ustawić go w trybie tylko do odczytu?
README opisuje jeden sposób: uruchom obraz Docker i dodaj ro do każdego montowania bind, co czyni ten folder dla serwera tylko do odczytu. Niektóre aplikacje pozwalają też zatwierdzać lub blokować poszczególne narzędzia, co pomaga, ale montowanie jest twardszym ograniczeniem.
Czy może usuwać pliki?
Na liście narzędzi nie ma narzędzia do usuwania. Nadal może jednak zniszczyć treść: write_file nadpisuje istniejące pliki, a move_file usuwa źródło, więc oba są oznaczone jako destrukcyjne w tabeli adnotacji w README.
Czy potrzebuje dostępu do internetu?
Nie do swojej pracy. Każde narzędzie ustawia openWorldHint na false, co oznacza, że dotyka tylko lokalnego systemu plików w dozwolonych folderach. npx pobiera jednak pakiet przy pierwszym uruchomieniu.
Dozwolone katalogi i Roots, prostymi słowami
Są dwa sposoby, by powiedzieć serwerowi, których folderów może używać. Pierwszy to wpisanie ścieżek folderów po nazwie pakietu w konfiguracji, co ustala listę aż do ponownego uruchomienia. Drugi to Roots, funkcja, w której aplikacja asystenta mówi serwerowi, które foldery są w grze, i może zmieniać tę listę w trakcie działania.
README nazywa Roots zalecaną metodą. Szczegół ważny dla bezpieczeństwa: gdy Roots Twojej aplikacji obowiązują, aktualizacja bez żadnych prawidłowych roots odbiera cały dostęp zamiast wracać do folderów, które wpisałeś.
Przydatne zadania dla właściciela strony lub sklepu
Wskaż mu folder z wyeksportowanymi danymi produktów i poproś o listę pozycji bez opisów. Wskaż szkice wpisów na blogu i poproś o podsumowanie, które wpisy wspominają starą cenę. Wskaż pobraną kopię swojej strony i wyszukaj błędne nazwy obrazów.
W każdym przypadku folder jest kopią, a nie działającą stroną, więc pomyłkowa edycja nic nie kosztuje. Ten nawyk jest wart więcej niż jakiekolwiek ustawienie.
13 narzędzi i co każde może zmienić
Tylko do odczytu oznacza, że README oznacza narzędzie przez readOnlyHint true. Destrukcyjne oznacza, że może nadpisać lub usunąć istniejącą treść.
Narzędzia serwera Filesystem MCP
Narzędzie
Co robi
Zmienia pliki?
Czyta plik jako tekst UTF-8, opcjonalnie tylko pierwsze lub ostatnie N wierszy
Nie
Czyta obraz, dźwięk lub inny plik jako base64 wraz z typem MIME
Nie
Czyta kilka plików naraz, a błąd jednego nie zatrzymuje pozostałych
Nie
Wyświetla zawartość folderu z prefiksami [FILE] i [DIR]
Nie
Ta sama lista z rozmiarami, sortowana po nazwie lub rozmiarze
Nie
Zwraca zagnieżdżone drzewo JSON folderu
Nie
Wyszukiwanie w stylu glob z opcjonalnymi wzorcami wykluczeń
Nie
Rozmiar, daty, typ i uprawnienia
Nie
Pokazuje, których folderów serwer może używać
Nie
Tworzy folder i brakujące foldery nadrzędne
Tak, niedestrukcyjnie
Tworzy lub nadpisuje plik
Tak, destrukcyjnie
Zastępuje dopasowany tekst, z opcją podglądu dryRun
Tak, destrukcyjnie
Przenosi lub zmienia nazwę, kończy się błędem, jeśli cel istnieje
Tak, destrukcyjnie
Przykłady konfiguracji
Uruchomienie przez npx, dwa foldery
Foldery po nazwie pakietu stają się dozwolonymi katalogami. Wymaga Node.js na Twoim komputerze.
Uruchomienie przez Docker, jeden folder tylko do odczytu
Foldery są montowane pod /projects. Flaga ro blokuje serwerowi zapis do tego folderu.
Konfiguracja przestrzeni roboczej VS Code (.vscode/mcp.json)
VS Code używa klucza servers. ${workspaceFolder} ogranicza serwer do otwartego projektu.
Kreator konfiguracji Filesystem MCP
Wpisz swoje foldery i wybierz sposób uruchomienia serwera. JSON aktualizuje się podczas pisania i nic nie opuszcza Twojej przeglądarki.
Dozwolone foldery, jedna pełna ścieżka w wierszu
Uruchom przez
Kształt konfiguracji
Montuj foldery tylko do odczytu (tylko Docker)
Montowanie tylko do odczytu jest opisane dla Dockera. Przy npx serwer może zapisywać w podanych folderach.
Konfiguracja JSON
npx (Node.js)
Docker
mcpServers (większość aplikacji)
servers (VS Code)
Dodaj co najmniej jeden folder. Serwer potrzebuje jednego dozwolonego katalogu, by działać.
{v} nie jest pełną ścieżką. Zacznij ją od / na Macu lub Linuksie albo od litery dysku w Windows.