MCP File System Server
About
MCP Workspace Server: A secure Model Context Protocol server providing file, git, and GitHub tools for AI assistants within a sandboxed project directory.
Details
- License
- MIT
Explore
- list_directory: List all files and directories in the project directory
- read_file: Read the contents of a file
- save_file: Write content to a file atomically
- append_file: Append content to the end of a file
- delete_this_file: Delete a specified file from the filesystem
- edit_file: Make selective edits using exact string matching
- move_file: Move or rename files and directories within the project
- get_reference_projects: Discover available reference projects
- list_reference_directory: List files in reference projects
- read_reference_file: Read files from reference projects
- Structured Logging: Comprehensive logging system with both human-readable and JSON formats
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
MCP File System ServerCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -e .
Once installed, you can use the mcp-workspace command directly:
mcp-workspace --project-dir /path/to/project [--reference-project NAME=/path/to/reference]... [--log-level LEVEL] [--log-file PATH] [--file-size-limit N]
mcp-workspace --project-dir ./project \
--reference-project docs=./docs1 \
--reference-project docs=./docs2 \
--reference-project docs=./docs3
1. Locate the Claude Desktop configuration file:
- Windows: %APPDATA%\Claude\claude_desktop_config.json
- macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
2. Add the MCP server configuration (create the file if it doesn't exist):
{
"mcpServers": {
"filesystem": {
"command": "mcp-workspace",
"args": [
"--project-dir",
"C:\\path\\to\\your\\specific\\project",
"--reference-project",
"docs=C:\\path\\to\\documentation",
"--reference-project",
"examples=C:\\path\\to\\examples",
"--log-level",
"INFO"
]
}
}
}
3. Configuration notes:
- The mcp-workspace command should be available in your PATH after installation
- You must specify an explicit project directory path in --project-dir
- Replace the project directory path with your actual project path
- The project directory should be the folder you want Claude to access
4. Restart the Claude Desktop app to apply changes
read_reference_file("config", "settings/production.yml")
Features:
- Read-only access (no modification possible)
- Same path validation as main project files
- Supports any text-based file format
- Returns raw file contents as string
Error Handling:
- "Reference project not found" - when reference_name doesn't exist
- "File not found" - when file doesn't exist in reference project
- "Invalid path" - for security violations or path traversal attempts
- "Permission denied" - for access issues
For easy configuration and installation of this MCP server, you can use the mcp-config development tool. This CLI tool simplifies the process of managing MCP server configurations across multiple clients (Claude Desktop, VS Code, etc.).
pip install git+https://github.com/MarcusJellinghaus/mcp-config.git
mcp-config setup mcp-workspace "Filesystem Server" --project-dir /path/to/your/project
mcp-config setup mcp-workspace "Filesystem Server" \
--project-dir /path/to/your/project \
--reference-project docs=/path/to/documentation \
--reference-project examples=/path/to/examples
mcp-config setup mcp-workspace "Filesystem Server" \
--project-dir /path/to/your/project \
--reference-project utils=/shared/utilities \
--log-level DEBUG \
--log-file /custom/path/server.log
Learn more: mcp-config on GitHub
This tool eliminates the manual configuration steps and reduces setup errors by handling path resolution, environment detection, and client-specific configuration formats automatically.
Operation
Description
list_directory
Lists files and directories in the project directory
read_file
Reads the contents of a file
save_file
Creates or overwrites files atomically
append_file
Adds content to existing files
delete_this_file
Removes files from the filesystem
edit_file
Makes selective edits using exact string matching
move_file
Moves or renames files and directories
get_reference_projects
Lists available reference projects
list_reference_directory
Lists files in a reference project
read_reference_file
Reads files from reference projects
The server exposes the following MCP tools:
| Operation | Description | Example Prompt |
|-----------|-------------|----------------|
| list_directory | Lists files and directories in the project directory | "List all files in the src directory" |
| read_file | Reads the contents of a file | "Show me the contents of main.js" |
| save_file | Creates or overwrites files atomically | "Create a new file called app.js" |
| append_file | Adds content to existing files | "Add a function to utils.js" |
| delete_this_file | Removes files from the filesystem | "Delete the temporary.txt file" |
| edit_file | Makes selective edits using exact string matching | "Fix the bug in the fetch function" |
| move_file | Moves or renames files and directories | "Rename config.js to settings.js" |
| get_reference_projects | Lists available reference projects | "What reference projects are available?" |
| list_reference_directory | Lists files in a reference project | "List files in the docs reference project" |
| read_reference_file | Reads files from reference projects | "Show me the README from the examples project" |
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"mcp file system server": {
"mcp_server_filesystem": {
"command": "python",
"args": [
"-m",
"venv",
"venv"
]
}
}
}
}
McpServers
{
"mcp_server_filesystem": {
"command": "python",
"args": [
"-m",
"venv",
"venv"
]
}
}
A simple Model Context Protocol (MCP) server providing file system operations. This server offers a clean API for performing file system operations within a specified project directory, following the MCP protocol design.
Overview
This MCP server enables AI assistants like Claude (via Claude Desktop) or other MCP-compatible systems to interact with your local file system. With these capabilities, AI assistants can:
- Read your existing code and project files
- Write new files with generated content
- Update and modify existing files with precision using exact string matching
- Make selective edits to code without rewriting entire files
- Delete files when needed
- Review repositories to provide analysis and recommendations
- Debug and fix issues in your codebase
- Generate complete implementations based on your specifications
All operations are securely contained within your specified project directory, giving you control while enabling powerful AI collaboration on your local files.
By connecting your AI assistant to your filesystem, you can transform your workflow from manual coding to a more intuitive prompting approach - describe what you need in natural language and let the AI generate, modify, and organize code directly in your project files.
Features
- list_directory: List all files and directories in the project directory
- read_file: Read the contents of a file
- save_file: Write content to a file atomically
- append_file: Append content to the end of a file
- delete_this_file: Delete a specified file from the filesystem
- edit_file: Make selective edits using exact string matching
- move_file: Move or rename files and directories within the project
- get_reference_projects: Discover available reference projects
- list_reference_directory: List files in reference projects
- read_reference_file: Read files from reference projects
- Structured Logging: Comprehensive logging system with both human-readable and JSON formats
Installation
```bash
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



