trackmcp
Back to directory
gleb-roma

mcp_file_system

View on GitHub

MCP File System Server

0 stars PythonOthers Updated Jun 24, 2025

Documentation

MCP File System Server

A Model Context Protocol (MCP) server that provides secure file system operations through a sandboxed environment.

Features

  • Secure File Operations: All operations are confined to a configurable base directory
  • Path Traversal Protection: Prevents access to files outside the allowed directory
  • Comprehensive Tools: Read, write, list, delete, move, and copy files
  • Error Handling: Robust error handling with informative messages

Installation

1. Install dependencies:

bash
make install

2. Set the base directory (optional):

bash
export MCP_FILE_SYSTEM_BASE_DIR="/path/to/your/sandbox"

Usage

Running the Server

bash
make run

Or directly:

bash
uv run src/main.py

Available Tools

  • `read_file(file_path: str)` - Read file contents
  • `write_file(file_path: str, content: str)` - Write content to file
  • `list_directory(directory_path: str)` - List directory contents
  • `delete_file(file_path: str)` - Delete a file
  • `move_file(source_path: str, destination_path: str)` - Move/rename a file
  • `copy_file(source_path: str, destination_path: str)` - Copy a file

Configuration

The server uses the `MCP_FILE_SYSTEM_BASE_DIR` environment variable to set the base directory for all file operations. If not set, it defaults to `/tmp/mcp_file_system`.

Security

  • All paths are resolved relative to the base directory
  • Path traversal attacks (using `..`) are prevented
  • Access outside the base directory is blocked
  • File operations are sandboxed

Testing

Test that the server imports correctly:

bash
make test

Development

Run in development mode with auto-reload:

bash
make dev

Integration with Claude Desktop

To use this server with Claude Desktop, add the following to your `~/Library/Application Support/Claude/claude_desktop_config.json`:

json
{
  "mcpServers": {
    "file-system": {
      "command": "uv",
      "args": [
        "--directory",
        "/ABSOLUTE/PATH/TO/mcp_file_system",
        "run",
        "src/main.py"
      ]
    }
  }
}

Replace `/ABSOLUTE/PATH/TO/mcp_file_system` with the actual absolute path to your project directory.

Frequently asked questions

What is mcp_file_system?

mcp_file_system is MCP File System Server

How do I install mcp_file_system?

Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.

Is mcp_file_system open source?

Yes — it is hosted on GitHub at https://github.com/gleb-roma/mcp_file_system.

Related MCP tools

Run your own MCP server? See who uses it and what to fix.

Measure it with TrackMCP