mcp/filesystem
Node.js server implementing Model Context Protocol (MCP) for filesystem operations.
Note: The server will only allow operations within directories specified via args
.
file://system
: File system operations interfaceread_file
path
(string)read_multiple_files
paths
(string[])write_file
path
(string): File locationcontent
(string): File contentedit_file
path
(string): File to editedits
(array): List of edit operations
oldText
(string): Text to search for (can be substring)newText
(string): Text to replace withdryRun
(boolean): Preview changes without applying (default: false)options
(object): Optional formatting settings
preserveIndentation
(boolean): Keep existing indentation (default: true)normalizeWhitespace
(boolean): Normalize spaces while preserving structure (default: true)partialMatch
(boolean): Enable fuzzy matching (default: true)create_directory
path
(string)list_directory
path
(string)move_file
source
(string)destination
(string)search_files
path
(string): Starting directorypattern
(string): Search patternexcludePatterns
(string[]): Exclude any patterns. Glob formats are supported.get_file_info
path
(string)list_allowed_directories
Add this to your claude_desktop_config.json
:
Note: you can provide sandboxed directories to the server by mounting them to /projects
. Adding the ro
flag will make the directory readonly by the server.
Note: all directories must be mounted to /projects
by default.
{
"mcpServers": {
"filesystem": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"--mount",
"type=bind,src=/Users/username/Desktop,dst=/projects/Desktop",
"--mount",
"type=bind,src=/path/to/other/allowed/dir,dst=/projects/other/allowed/dir,ro",
"--mount",
"type=bind,src=/path/to/file.txt,dst=/projects/path/to/file.txt",
"mcp/filesystem",
"/projects"
]
}
}
}
This MCP server is licensed under the MIT License. This means you are free to use, modify, and distribute the software, subject to the terms and conditions of the MIT License. For more details, please see the LICENSE file in the project repository.
docker pull mcp/filesystem