MCP File System Server
A server for secure, sandboxed file system operations.
MCP File System Server
A Model Context Protocol (MCP) server that provides secure file system operations through a sandboxed environment.
Features
- Secure File Operations: All operations are confined to a configurable base directory
- Path Traversal Protection: Prevents access to files outside the allowed directory
- Comprehensive Tools: Read, write, list, delete, move, and copy files
- Error Handling: Robust error handling with informative messages
Installation
- Install dependencies:
make install
- Set the base directory (optional):
export MCP_FILE_SYSTEM_BASE_DIR="/path/to/your/sandbox"
Usage
Running the Server
make run
Or directly:
uv run src/main.py
Available Tools
read_file(file_path: str)- Read file contentswrite_file(file_path: str, content: str)- Write content to filelist_directory(directory_path: str)- List directory contentsdelete_file(file_path: str)- Delete a filemove_file(source_path: str, destination_path: str)- Move/rename a filecopy_file(source_path: str, destination_path: str)- Copy a file
Configuration
The server uses the MCP_FILE_SYSTEM_BASE_DIR environment variable to set the base directory for all file operations. If not set, it defaults to /tmp/mcp_file_system.
Security
- All paths are resolved relative to the base directory
- Path traversal attacks (using
..) are prevented - Access outside the base directory is blocked
- File operations are sandboxed
Testing
Test that the server imports correctly:
make test
Development
Run in development mode with auto-reload:
make dev
Integration with Claude Desktop
To use this server with Claude Desktop, add the following to your ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"file-system": {
"command": "uv",
"args": [
"--directory",
"/ABSOLUTE/PATH/TO/mcp_file_system",
"run",
"src/main.py"
]
}
}
}
Replace /ABSOLUTE/PATH/TO/mcp_file_system with the actual absolute path to your project directory.
Related Servers
FTP Access
Provides access to an FTP server for file operations.
WebP Batch Converter
Batch convert PNG, JPG, and JPEG images to WebP format with options for quality, lossless mode, and multi-threaded processing.
Filesystem MCP Server
A server for performing filesystem operations such as reading/writing files, managing directories, and searching.
PDF to PNG
A server that converts PDF files to PNG images. Requires the poppler library to be installed.
YaraFlux
An MCP server for YARA scanning, enabling LLMs to analyze files using YARA rules.
MCP Source Tree Server
Generates a JSON representation of a directory's source file tree, respecting .gitignore patterns.
MCP Apple Notes
Perform semantic search and retrieval augmented generation over your Apple Notes.
Editor MCP
A server for file operations, allowing reading, editing, and managing text files through a standardized API.
Music Collection MCP Server
Access and manage local music collections with advanced metadata, classification, and analytics.
PDF Agent MCP
A server for AI agents to selectively process and extract content from PDF documents.