hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Integrations
Provides containerized deployment of the MCP server, with support for mounting host directories as read-only or read-write volumes, allowing secure file operations from within Docker containers.
:bookmark: About
MCP Filesystem Server provides secure filesystem access for AI models through the Model Context Protocol. It enforces strict path validation and only allows access to predefined directories.
:computer: Technologies
:wrench: Tools
:package: Installation
:heavy_check_mark: Prerequisites
The following software must be installed:
- Node.js (>=18.0.0)
- Git
- pnpm (>=8.0.0)
- Docker (optional)
- Docker Compose (optional)
:arrow_down: Cloning the repository
:arrow_forward: Running the application
Local Development
Using NPM Package
Using Docker
Using Docker Compose
:gear: Usage
Using with Claude Desktop
Claude Desktop can be configured to use this MCP server for filesystem access. Add the following to your
claude_desktop_config.json
:
Using Local Installation (Recommended)
Make sure to make the executable available globally:
Using NPX
Using Docker
Note: When using Docker, all directories must be mounted to /projects
by default. Adding the ro
flag will make the
directory read-only.
Available Tools
The MCP Filesystem Server provides these tools:
File System Operations
- read_file: Read a file's content
- read_multiple_files: Read multiple files at once
- write_file: Create or overwrite a file
- edit_file: Make precise edits with diff preview
- create_directory: Create directories recursively
- list_directory: List directory contents
- directory_tree: Get a recursive tree view
- move_file: Move or rename files
- search_files: Find files matching patterns
- get_file_info: Get file metadata
- list_allowed_directories: See accessible directories
System & Network Operations
- get_metrics: View server performance metrics (v0.3.0+)
- execute_command: Execute system commands securely (v0.3.1+)
- curl_request: Execute HTTP requests to external APIs (coming in v1.2.0)
Using curl_request Tool (Coming in v1.2.0)
The curl_request
tool will allow you to make HTTP requests to external APIs:
See the docs/curl-tool-examples.md
file for more detailed examples.
:sparkles: Features
Core Features
- Secure Access: Strict path validation prevents unauthorized access
- File Operations: Read, write, edit, and move files
- Directory Operations: Create, list, get tree views, and search directories
- Metadata Access: View file and directory information
- Command Execution: Securely execute system commands with strict validation
- Docker Support: Easy deployment with Docker and Docker Compose
New Features in v0.3.0
- Structured Logging: Detailed logging with different levels (debug, info, warn, error)
- Performance Metrics: Track operation counts, errors, and execution times
- Configuration Management: Support for JSON configuration files
- Path Caching: Improved performance for frequently accessed paths
- Improved Error Handling: Specialized error types with structured information
- File Size Validation: Prevent loading excessively large files
- CLI Improvements: Help command, version info, and config generation
Configuration Options
You can create a configuration file using:
Example configuration:
:writing_hand: Author
Gabriel Maia |
License
This server cannot be installed
A secure Model Context Protocol server that provides controlled filesystem access within predefined directories, enabling AI models to perform file and directory operations with strict path validation.