MCP Connector

Access and Manage Local Files Securely

Filesystem MCP gives Claude secure, directory-scoped access to read, write, search, and organize local files.


73
Spark score
out of 100
Updated 7 months ago
Version 1.0.0
Models
universal

Add to Favorites

Why it matters

Grant your AI secure, controlled access to your local filesystem. This connector allows AI models to read, write, list, create directories, move files, and search your file system within defined boundaries.

Outcomes

What it gets done

01

Read file contents

02

Write data to files

03

List directory contents

04

Search for files by pattern

Install

Add it to your toolbox

Run in your project directory:

curl -fsSL https://spark.entire.vc/get/vb-filesystem | bash

Capabilities

Tools your agent gets

read_file

Read the contents of a file.

write_file

Write content to a file.

list_directory

List contents of a directory.

create_directory

Create a new directory.

move_file

Move or rename a file.

search_files

Search for files matching a pattern.

Overview

Filesystem MCP

Filesystem MCP gives Claude secure, directory-scoped access to read, write, search, and organize local files, with path validation and no access outside allowed directories. Use it when Claude needs to read, edit, or search files on disk within directories you explicitly allow.

What it does

Filesystem MCP is an MCP server that gives Claude secure access to your local filesystem, with configurable access controls. Rather than pasting file contents into a conversation by hand, Claude can read, write, search, and organize files directly, scoped to directories you explicitly allow.

When to use - and when NOT to

Use it when you want Claude to work directly with files on disk: reading a config file, updating a value in it, searching a project for matching files, or reorganizing a directory, within one or more directories you have explicitly allowed. Access is restricted to the directories passed at startup, with no access to parent directories via "..", so it is not a way to give Claude open-ended access to your whole filesystem; each allowed directory has to be named explicitly. It fits local development and file-management tasks, not remote or cloud storage, which it doesn't address.

Capabilities

  • read_file(path): read the contents of a file
  • write_file(path, content): write content to a file
  • list_directory(path): list the contents of a directory, returning file info
  • create_directory(path): create a new directory
  • move_file(source, destination): move or rename a file
  • search_files(path, pattern): search for files matching a pattern
  • Security controls: access restricted to the directories you specify, no traversal to parent directories, configurable read/write permissions, and path validation and sanitization

How to install

Install globally with npm:

npm install -g @modelcontextprotocol/server-filesystem

Then add it to your Claude Code settings, naming the directory or directories it should be allowed to access:

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-filesystem",
        "/path/to/allowed/directory"
      ]
    }
  }
}

Once configured, you can ask Claude directly to work with files in that directory, for example: "Claude, please read the contents of ./config/settings.json and update the database connection string."

Who it's for

Developers who want Claude to read, edit, search, and organize files in specific local directories as part of a coding or file-management workflow, with access limited to directories they explicitly allow.

Source README

The Filesystem MCP server provides Claude with secure access to your local filesystem with configurable access controls.

Installation

npm install -g @modelcontextprotocol/server-filesystem

Configuration

Add to your Claude Code settings:

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-filesystem",
        "/path/to/allowed/directory"
      ]
    }
  }
}

Available Tools

read_file

Read the contents of a file.

read_file(path: string): string

write_file

Write content to a file.

write_file(path: string, content: string): void

list_directory

List contents of a directory.

list_directory(path: string): FileInfo[]

create_directory

Create a new directory.

create_directory(path: string): void

move_file

Move or rename a file.

move_file(source: string, destination: string): void

search_files

Search for files matching a pattern.

search_files(path: string, pattern: string): string[]

Security

  • Access is restricted to specified directories
  • No access to parent directories (..)
  • Configurable read/write permissions
  • Path validation and sanitization

Usage Example

Claude, please read the contents of ./config/settings.json
and update the database connection string.

FAQ

Common questions

Discussion

Questions & comments · 0

Sign In Sign in to leave a comment.