← Back to directory
F

Filesystem MCP Server

Official
Secure local file read/write access
GitHub source repository ↗
★ 90.0k Stars Category · Filesystem Very popular Source revision cda92bdaacd5
84FMRS · B
Reliability
17/20
Security and permissions
16/20
Maintenance
16/20
Documentation
17/20
Setup experience
18/20

A reference implementation with clear path boundaries and straightforward setup; reliability reserves runtime-verification points until a handshake is recorded at a fixed revision.

Read the FMRS scoring method →

This server gives models controlled access to browse, read, write, and manage local files and directories. Access is limited to explicitly allowed paths, making it a foundational MCP server for local workflows.

Tools

read_file
Read the complete contents of a specified file
write_file
Write to an existing file or create a new one
list_directory
List files and subdirectories in a directory
create_directory
Create a new directory
move_file
Move or rename a file
search_files
Recursively search for files by name pattern

Setup

Add the server entry below to your client configuration, then replace the example path with the local directory you want to allow.

claude_desktop_config.json
{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-filesystem",
        "/Users/you/Documents"
      ]
    }
  }
}

Fit and risk

Best for

  • Local assistants that need to work inside explicitly approved directories
  • Individuals and development teams that want path-based data boundaries

Not for

  • Highly sensitive environments that cannot allow model access to local file contents
  • Shared remote file-service use cases

Required permissions

  • Read access to every local directory listed in the configuration
  • Filesystem write access when write or move tools are enabled

Risks and side effects

  • Sensitive files inside an allowed directory may enter model context
  • Write and move tools change real files; keep scopes narrow and maintain backups

Troubleshooting

  1. Confirm Node.js and npx are available
  2. Check that every configured path exists and is accessible to the current user
  3. Fully restart the client after changing its configuration

Use cases

Organize local project files and archive old versions
Let an assistant inspect log files while troubleshooting
Batch rename images or documents

Supported clients

Claude DesktopFull support
CursorFull support
ClineFull support
WindsurfPartial support