Skip to directory

Filesystem MCP

Model Context Protocol maintainers

stdio14 documented tools18

About Filesystem MCP

A local MCP reference server that provides controlled file and directory operations within explicitly allowed directories.

What you can use it for

  • Read text and media files within allowed directories
  • Search files and inspect directory trees/metadata
  • Create directories, edit/move files, or write files when needed and authorized
Connection and setup
Hosting
Local
Transport
stdio
Endpoint
Local process; no hosted endpoint documented
Authentication
No remote authentication; access is restricted to configured allowed directories and may be updated through MCP Roots when supported by the client.

Requirements

  • Node.js/npm and a compatible MCP client
  • One or more explicit allowed filesystem directories
  • MCP Roots support is recommended for dynamic directory access; command-line paths are the fallback

Setup steps

  1. Configure the client to run npx -y @modelcontextprotocol/server-filesystem with the exact directories the server may access as arguments.
  2. For clients using Windows process launch, the official README documents invoking npx through cmd /c.
  3. For Docker, mount only intended directories under /projects and pass /projects as an allowed directory; a read-only bind mount can further restrict access.
  4. Reconnect and call list_allowed_directories to confirm the access boundary before using file-writing tools.
Tools 14

Current official README/source list 14 active tools. Access is constrained by allowed directories; deprecated read_file is not counted as an active tool.

  • read_text_file

    Read a complete text file, or only its head/tail lines.

    01
  • read_media_file

    Return file content as base64/MCP image, audio, or resource content.

    02
  • read_multiple_files

    Read several files; an individual failure does not stop other reads.

    03
  • write_file

    Create or overwrite a file; destructive because it replaces existing content.

    04
  • edit_file

    Apply text edits to a file; repeated application may be unsafe.

    05
  • create_directory

    Create a directory within the allowed paths.

    06
  • list_directory

    List directory entries.

    07
  • list_directory_with_sizes

    List directory entries with sizes.

    08
  • directory_tree

    Return a recursive directory tree.

    09
  • move_file

    Move a file or directory within allowed paths.

    10
  • search_files

    Search for files by pattern.

    11
  • get_file_info

    Return metadata for a file.

    12
  • list_allowed_directories

    Show the directories currently allowed to the server.

    13
  • directory_size

    Calculate directory size.

    14
Limitations and notes
  • All file access is restricted to configured allowed directories, but a mistake in allowed paths grants the server access to those files.
  • write_file overwrites existing files; edit_file and move_file can mutate/delete data.
  • At least one allowed directory is required.
  • The directory Roots sent by a client can replace the command-line allowlist when Roots are supported; validate allowed directories after connection.
  • The official README classifies the project as an MCP reference implementation; publisher attribution is the MCP maintainers, not Anthropic alone.
Source discrepancies
  • The discovery listing attributes Filesystem to Anthropic. The current package metadata names Model Context Protocol, a Series of LF Projects, LLC as author; publisher attribution is corrected to the current maintainer organization.
Original sources
  • official tool reference

    Official maintainer README and source document filesystem tools and directory allow-list restrictions; deprecated read_file is not included in the active inventory.

  • official documentation

    Official maintainer README and source document filesystem tools and directory allow-list restrictions; deprecated read_file is not included in the active inventory.

Documentation checked 2026-10-28T12:35:00.000Z. Connection has not been runtime tested.