mcp-server-filesystem
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| FS_ROOT | No | Directory all paths are confined to (default: current working directory at startup) | |
| FS_READONLY | No | Set to 'false' to allow writes/deletes/moves; otherwise, blocks mutating tools. | true |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_dirA | List the contents of a directory (name, is_dir, size, mtime). |
| read_fileA | Read a file's contents. Text files are decoded with |
| statC | Fetch filesystem metadata for a path. |
| existsB | Check whether a path exists. |
| glob_searchA | Search for files matching a glob pattern (e.g. |
| write_fileB | Write text content to a file. Requires FS_READONLY=false. |
| mkdirB | Create a directory. Requires FS_READONLY=false. |
| deleteA | Delete a file, or a directory if recursive=True. Requires FS_READONLY=false. |
| moveB | Move/rename a file or directory. Requires FS_READONLY=false. |
| copyB | Copy a file, or a directory if recursive=True. Requires FS_READONLY=false. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 10 tools
Each tool maps to a distinct filesystem operation: read, write, list, search, move, copy, delete, create directory, stat, and exists. There is no meaningful overlap that would cause an agent to select the wrong tool.
Tool names are lowercase and readable, but the convention is mixed: some use verb_noun (write_file, list_dir, glob_search) while others are bare verbs or familiar commands (move, copy, delete, stat, exists, mkdir). This is not chaotic, but it is not a consistently applied pattern.
Ten tools is well within the ideal range for a filesystem server and each tool covers a core operation without redundancy. The set is neither too thin nor overloaded.
The domain is fully covered: reading, writing, listing, searching, moving, copying, deleting, creating directories, checking existence, and fetching metadata. There are no obvious dead ends or missing core filesystem operations.