Filesystem MCP Server
ECOSYSTEM REFERENCENO AUTHMITOriginally built by @Anthropic
Give your AI assistant read and write access to local files and directories. The most-used MCP server — lets Claude, Cursor, and other AI tools work with your filesystem directly.
Setup Guide
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-filesystem",
"/path/to/your/project"
]
}
}
}
Tools
read_file
Read the complete contents of a file from the filesystem. Returns the file content as a UTF-8 string.
read_multiple_files
Read the contents of multiple files simultaneously. Returns content for each file, with errors noted individually.
write_file
Create a new file or overwrite an existing file with the provided content.
edit_file
Make line-based edits to an existing text file using search and replace patterns.
create_directory
Create a new directory or ensure a directory exists. Creates parent directories if needed.
list_directory
List all files and directories in a specified path. Returns type indicators for each entry.
directory_tree
Get a recursive directory tree structure starting from a given path.
move_file
Move or rename a file or directory from one location to another.
search_files
Search for files matching a pattern. Supports glob patterns for flexible file matching.
get_file_info
Retrieve metadata about a file or directory including size, creation time, and permissions.
Compatibility
About
The Filesystem MCP Server is the reference implementation maintained by Anthropic as part of the official MCP server collection. It is the most widely installed MCP server in the ecosystem — currently pulling over 170,000 weekly downloads on npm — and the default starting point for any developer adding MCP capabilities to their IDE.
What makes it essential
Every AI coding assistant needs file access. Without this server (or an equivalent), your assistant can only work with content pasted into the chat window. With it, the assistant can navigate your project, read source files, make edits, and manage directories — all while respecting the path boundaries you configure.
Multiple directory access
You can pass more than one path as arguments to grant access to multiple directories in a single server instance:
json{ "mcpServers": { "filesystem": { "command": "npx", "args": [ "-y", "@modelcontextprotocol/server-filesystem", "/Users/you/projects/app", "/Users/you/shared-libs" ] } } }
Docker installation (sandboxed)
The official image supports read-only mounts via the ro flag, making it a good option when you want stricter isolation:
json{ "mcpServers": { "filesystem": { "command": "docker", "args": [ "run", "-i", "--rm", "--mount", "type=bind,src=/Users/you/projects,dst=/projects/app", "--mount", "type=bind,src=/Users/you/read-only-dir,dst=/projects/ref,ro", "mcp/filesystem", "/projects" ] } } }
All directories must be mounted under /projects when using Docker. The ro flag makes a mount read-only at the OS level — the server cannot write to it even if the AI tries.
Security considerations
The server only accesses directories you explicitly pass as arguments. It does not have access to your entire filesystem by default. Always scope the path to the specific project directory you're working with:
- Good:
/Users/you/projects/my-app - Risky:
/Users/you(exposes everything under your home directory) - Dangerous:
/(never do this)
Common setup issues
"npx not found" on macOS/Linux
If your IDE can't find npx, use the full path. Run which npx in your terminal and use the absolute path in the config:
json"command": "/usr/local/bin/npx"
"Permission denied" errors The server runs as your user. If your project directory has restricted permissions, the server will fail. Ensure your user has read/write access to the configured path.
Windows path format On Windows, use double backslashes or forward slashes in your path args:
json"args": ["-y", "@modelcontextprotocol/server-filesystem", "C:\\Users\\you\\projects"]
Server starts but AI doesn't use file tools Check if you have too many MCP servers enabled. Cursor limits tool discovery when more than ~40 tools are registered. Disable servers you're not actively using.
Zed: server not appearing
Zed uses context_servers (not mcpServers) with a nested command.path structure. See the Zed config tab above — the format is different from every other IDE. Also note Zed only supports stdio transport natively; to use an HTTP/SSE server you need the mcp-remote bridge package.
Continue: config not picked up
Continue reads from ~/.continue/mcpServers/ (note the plural). Drop a .json file there and restart your IDE. Alternatively you can add an mcpServers array directly in ~/.continue/config.yaml. The format uses an array (not an object) — a common source of silent failures when copying from Cursor or Claude Desktop.
This server can be set up manually using the configs above. Browse AgenticMarket for servers you can install in one command with zero config.
BROWSE INSTALLABLE SERVERS →Fetch MCP Server
Give your AI assistant the ability to read any web page. The official Fetch server converts HTML to markdown so your LLM can process web content, read documentation, and scrape data in real time.
Everything MCP Server
The official MCP reference server that exercises every protocol feature — prompts, tools, resources, sampling, and all transports. Built for MCP client developers and testing.
Git MCP Server
Let your AI assistant interact with Git repositories directly. Status, diff, commit, branch, and log — all accessible to your LLM through 12 Git tools.
Time MCP Server
Give your AI assistant awareness of the current time and timezone conversions. Query the current time in any timezone and convert between timezones using IANA names.
AgenticMarket