ai-yliu_filesystem-mcp-server
The Filesystem MCP Server is designed to execute various filesystem operations specifically for Claude AI, including reading, writing, and listing files and directories. It's secure, allowing operations only within specified directories and offers features like file search and metadata retrieval.
Filesystem MCP Server
A Model Context Protocol (MCP) server that provides filesystem operations for Claude AI.
Features
This MCP server provides the following filesystem operations:
-
read_file: Read complete contents of a file
- Input:
path
(string) - Reads complete file contents with UTF-8 encoding
- Input:
-
read_multiple_files: Read multiple files simultaneously
- Input:
paths
(string[]) - Failed reads won't stop the entire operation
- Input:
-
write_file: Create new file or overwrite existing
- Inputs:
path
(string): File locationcontent
(string): File content
- Inputs:
-
create_directory: Create new directory or ensure it exists
- Input:
path
(string) - Creates parent directories if needed
- Succeeds silently if directory exists
- Input:
-
list_directory: List directory contents with [FILE] or [DIR] prefixes
- Input:
path
(string)
- Input:
-
move_file: Move or rename files and directories
- Inputs:
source
(string)destination
(string)
- Fails if destination exists
- Inputs:
-
search_files: Recursively search for files/directories
- Inputs:
path
(string): Starting directorypattern
(string): Search pattern
- Case-insensitive matching
- Returns full paths to matches
- Inputs:
-
get_file_info: Get detailed file/directory metadata
- Input:
path
(string) - Returns:
- Size
- Creation time
- Modified time
- Access time
- Type (file/directory)
- Permissions
- Input:
-
list_allowed_directories: List all directories the server is allowed to access
- No input required
- Returns directories that this server can read/write from
Security
The server only allows operations within directories specified via command-line arguments.
Installation
- Clone this repository
- Install dependencies:
npm install
- Build the project:
npm run build
Usage
Run the server with one or more allowed directories:
node build/index.js /path/to/allowed/dir1 /path/to/allowed/dir2
MCP Configuration
Add the server to your MCP configuration file:
{
"mcpServers": {
"filesystem-server": {
"command": "node",
"args": [
"/path/to/filesystem-server/build/index.js",
"/path/to/allowed/dir1",
"/path/to/allowed/dir2"
],
"disabled": false,
"autoApprove": []
}
}
}
License
ISC