Bulk Filesystem Operations MCP Server
strawgate/filesystem-operations-mcp · 25 stars · Python
MCP server MCP Server for reading many files at the same time
Install
The repo has no one-line install. Follow its README.
Files
!! This project is archived, see https://github.com/strawgate/py-mcp-collection/tree/main/filesystem-operations-mcp for the latest version.
Bulk Filesystem Operations MCP Server
This project provides a FastMCP server that exposes tools for performing bulk file and folder operations. It includes centralized exception handling for filesystem operations.
Available Tools
The server provides the following tools, categorized by their functionality:
-
call_tool_bulk: Call a single tool registered on this MCP server multiple times with a single request. Useful for speeding up what would otherwise take several individual tool calls. -
call_tools_bulk: Call multiple tools registered on this MCP server in a single request. Each call can be for a different tool and can include different arguments. Useful for speeding up what would otherwise take several individual tool calls.
To add bulk tools to your FastMCP server, see PrefectHQ/fastmcp#215
File Operations Tools (file server)
These tools are available under the file server namespace.
read: Reads the content of a file at the specified pathcreate: Creates a file with the specified contentappend: Appends content to an existing fileerase: Erases the content of a filemove: Moves a file from source to destinationdelete: Deletes a file at the specified path
Folder Operations Tools (folder server)
These tools are available under the folder server namespace.
create: Creates a folder at the specified pathread_all: Returns the contents of all of the files in a folder (optionally, recursively). This can be expensive!list: Lists the contents of a folder (optionally, recursively)move: Moves a folder from source to destinationdelete: Deletes a folder at the specified pathempty: Empties a folder by deleting all its contents
Disabling Tools
You can disable specific file tools by setting the DISABLE_FILE_TOOLS to an array of tool names you want to disable. For example, to disable the file_read tool, set DISABLE_FILE_TOOLS=["file_read"].
You can disable specific folder tools by setting the DISABLE_FOLDER_TOOLS to an array of tool names you want to disable. For example, to disable the folder_create tool, set DISABLE_FOLDER_TOOLS=["folder_create"].
Bulk tools cannot currently be disabled.
VS Code McpServer Usage
- Open the command palette (Ctrl+Shift+P or Cmd+Shift+P).
- Type "Settings" and select "Preferences: Open User Settings (JSON)".
- Add the following MCP Server configuration
{
"mcp": {
"servers": {
"Filesystem Operations": {
"command": "uvx",
"args": [
"https://github.com/strawgate/mcp-many-files.git"
]
}
}
}
}
Roo Code / Cline McpServer Usage
Simply add the following to your McpServer configuration. Edit the AlwaysAllow list to include the tools you want to use without confirmation.
"Filesystem Operations": {
"command": "uvx",
"args": [
"https://github.com/strawgate/mcp-many-files.git"
],
"alwaysAllow": [
"file_read",
"file_create",
"file_append",
"file_erase",
"file_move",
"file_delete",
"folder_create",
"folder_contents",
"folder_move",
"folder_delete",
"folder_empty",
"call_tool_bulk",
"call_tools_bulk"
]
},
Development
- Clone the repository:
# Replace with the actual repository URL git clone https://github.com/strawgate/filesystem-operations-mcp.git cd filesystem-operations-mcp
- Create a virtual environment and install dependencies:
uv venv source .venv/bin/activate uv sync --extra dev
- Run the server locally for testing:
python -m filesystem-operations-mcp.server # or using the installed script filesystem-operations-mcp
You can also debug with vscode via the built in debug launch configuration. To point your MCP Client to this local server, use the following MCP server configuration:
"filesystem_operations_mcp": {
"url": "http://localhost:8000/sse",
"disabled": true,
"autoApprove": [],
"timeout": 30,
"alwaysAllow": []
}
You can also set your uvx command to point to a branch on the repository via `"git+https://github.com/strawgate/filesystem-operations-mcp@branch-name"`.Facts
- Kind
- MCP server
- Group
- Uncategorized
- Stars
- 25
- Language
- Python
- Last push
- 2025-10-12
- Forks
- 6
- 1REAio.github.morluto/reaReverse engineer anything from your terminal or agent with one CLI and MCP server.125.3k
- 2com.browser-use/browser-usecom.browser-use/browser-useControl a real Chrome browser to complete any task: fill forms, extract data, book flights.117.7k
- 3World Monitorapp.worldmonitor/mcpLive markets, conflicts, country risk, chokepoints, energy, and China decision signals. 93 tools.88.3k
- 4Scrapling MCP Serverd4vinci/scrapling🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl! Don't be shy, join here: https://discord.gg/EMgGbDceNQ and follow here for daily tips and tricks: https://x.com/Scraplingdev86.9k
- 5Everythingmodelcontextprotocol/serversThis MCP server attempts to exercise all the features of the MCP protocol. It is not intended to be a useful server, but rather a test server for builders of MCP clients. It implements prompts, tools, resources, sampling, and more to showcase MCP capabilities.85.8k
- 6Fetchmodelcontextprotocol/serversA Model Context Protocol server that provides web content fetching capabilities. This server enables LLMs to retrieve and process content from web pages, converting HTML to markdown for easier consumption.85.8k