This MCP server provides secure access to the local filesystem via the Model Context Protocol (MCP). - Name: File System - Description: Access to files and directories on the local file system - Read the complete contents of a file from the file system - Parameters: path (required): Path to the file to read - readmultiplefiles - Read the contents of multiple files in a single operation - Parameter
Add this skill
npx mdskills install mark3labs/mcp-filesystem-serverComprehensive filesystem MCP server with well-documented tools and multiple deployment options
This MCP server provides secure access to the local filesystem via the Model Context Protocol (MCP).
read_file
path (required): Path to the file to readread_multiple_files
paths (required): List of file paths to readwrite_file
path (required): Path where to write the file, content (required): Content to write to the filecopy_file
source (required): Source path of the file or directory, destination (required): Destination pathmove_file
source (required): Source path of the file or directory, destination (required): Destination pathdelete_file
path (required): Path to the file or directory to delete, recursive (optional): Whether to recursively delete directories (default: false)modify_file
path (required): Path to the file to modify, find (required): Text to search for, replace (required): Text to replace with, all_occurrences (optional): Replace all occurrences (default: true), regex (optional): Treat find pattern as regex (default: false)list_directory
path (required): Path of the directory to listcreate_directory
path (required): Path of the directory to createtree
path (required): Path of the directory to traverse, depth (optional): Maximum depth to traverse (default: 3), follow_symlinks (optional): Whether to follow symbolic links (default: false)search_files
path (required): Starting path for the search, pattern (required): Search pattern to match against file namessearch_within_files
path (required): Starting directory for the search, substring (required): Text to search for within file contents, depth (optional): Maximum directory depth to search, max_results (optional): Maximum number of results to return (default: 1000)get_file_info
path (required): Path to the file or directorylist_allowed_directories
go install github.com/mark3labs/mcp-filesystem-server@latest
Start the MCP server with allowed directories:
mcp-filesystem-server /path/to/allowed/directory [/another/allowed/directory ...]
package main
import (
"log"
"os"
"github.com/mark3labs/mcp-filesystem-server/filesystemserver"
)
func main() {
// Create a new filesystem server with allowed directories
allowedDirs := []string{"/path/to/allowed/directory", "/another/allowed/directory"}
fs, err := filesystemserver.NewFilesystemServer(allowedDirs)
if err != nil {
log.Fatalf("Failed to create server: %v", err)
}
// Serve requests
if err := fs.Serve(); err != nil {
log.Fatalf("Server error: %v", err)
}
}
To integrate this server with apps that support MCP:
{
"mcpServers": {
"filesystem": {
"command": "mcp-filesystem-server",
"args": ["/path/to/allowed/directory", "/another/allowed/directory"]
}
}
}
You can run the Filesystem MCP server using Docker:
docker run -i --rm ghcr.io/mark3labs/mcp-filesystem-server:latest /path/to/allowed/directory
To integrate the Docker image with apps that support MCP:
{
"mcpServers": {
"filesystem": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/mark3labs/mcp-filesystem-server:latest",
"/path/to/allowed/directory"
]
}
}
}
If you need changes made inside the container to reflect on the host filesystem, you can mount a volume. This allows the container to access and modify files on the host system. Here's an example:
{
"mcpServers": {
"filesystem": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"--volume=/allowed/directory/in/host:/allowed/directory/in/container",
"ghcr.io/mark3labs/mcp-filesystem-server:latest",
"/allowed/directory/in/container"
]
}
}
}
See the LICENSE file for details.
Install via CLI
npx mdskills install mark3labs/mcp-filesystem-serverMCP Filesystem Server is a free, open-source AI agent skill. This MCP server provides secure access to the local filesystem via the Model Context Protocol (MCP). - Name: File System - Description: Access to files and directories on the local file system - Read the complete contents of a file from the file system - Parameters: path (required): Path to the file to read - readmultiplefiles - Read the contents of multiple files in a single operation - Parameter
Install MCP Filesystem Server with a single command:
npx mdskills install mark3labs/mcp-filesystem-serverThis downloads the skill files into your project and your AI agent picks them up automatically.
MCP Filesystem Server works with Claude Code, Claude Desktop, Cursor, Vscode Copilot, Windsurf, Continue Dev, Gemini Cli, Amp, Roo Code, Goose. Skills use the open SKILL.md format which is compatible with any AI coding agent that reads markdown instructions.