Fast Filesystem MCP Server: Claude-Optimized Large File Streaming
Stream and manage large files with a Claude-optimized MCP server for fast reads/writes, sequential streaming, directory ops, search, and recovery backups.
npx -y @efforthye/fast-filesystem-mcpOverview
The Fast Filesystem MCP Server is an implementation of a Model Context Protocol (MCP) file service designed for streaming and managing very large files in the context of LLM workflows. It exposes file system operations (read, write, list, metadata) over HTTP in a way that supports sequential streaming and partial reads/writes, minimizing memory pressure on both clients and server and enabling low-latency access for models like Anthropic Claude and other MCP-compatible agents.
This server is useful when you need to feed long documents, logs, or datasets into a model without buffering entire files in memory, or when you need model-driven tooling to search, iterate over, and reliably back up large repositories of data. It combines directory operations, content search, and recovery/backup helpers so developers can integrate large-file storage directly into MCP-based pipelines.
Features
- Low-memory sequential streaming for large files (read and write without full buffering)
- Random-access reads via offset/length parameters
- Directory operations: list, create, rename, and remove
- Content search across files (full-text or metadata-based search)
- Recovery and backup endpoints to snapshot or restore storage
- Optimized for MCP usage patterns (Claude-style streaming clients) while remaining protocol-agnostic
- Simple HTTP API designed for programmatic integration and CLI use
- Configurable limits for stream chunk sizes, retention, and backup targets
Installation / Configuration
Recommended: run with Docker for a contained and reproducible runtime.
Clone and run (Docker):
# Build and run via Docker Compose (if included)
# Or run a single container (replace IMAGE_NAME with built image)
Environment variables (example):
PORT=8080
DATA_DIR=/data
MAX_STREAM_CHUNK=65536ENABLE_BACKUPS=true
BACKUP_DIR=/backups
SEARCH_INDEX_PATH=/data/index
LOG_LEVEL=info
If a language-specific build is required (Go/Rust/Python), follow the repo README for build instructions. The Docker route is the quickest way to start.
Available Resources
Common HTTP endpoints and purpose:
| Method | Path | Description |
|---|---|---|
| PUT | /files/{path} | Upload or overwrite a file (supports chunked streaming) |
| GET | /files/{path} | Download a file (supports Range/offset, chunked responses) |
| GET | /stream/{path} | Sequential streaming endpoint optimized for MCP clients |
| GET | /list/{dir} | List directory contents (JSON) |
| POST | /search | Search files (body: query, options) |
| POST | /backup | Create a backup snapshot (sync or async) |
| POST | /restore | Restore from a backup snapshot |
| DELETE | /files/{path} | Remove a file |
| POST | /mkdir | Create a directory |
Example: upload a large file with curl (streamed PUT):
Example: stream a file in a memory-efficient way (client reads incrementally):
Python streaming client example:
=
# handle chunk without storing full file
Use Cases
- Feeding long documents to an MCP-capable LLM without loading complete files into memory. Use the /stream endpoint to deliver content incrementally to a model client.
- Building an internal document search service that returns snippets and file offsets for focused model context extraction. Use /search to find relevant passages and then /files or /stream to retrieve exact byte ranges.
- Incremental ingestion pipelines: append or upload large logs and media to the server, then have models read only the most recent segments for alerting or summarization.
- Directory and dataset management for experiments: list datasets, snapshot a dataset for reproducibility via /backup, and restore environments for debugging or reruns.
- Disaster recovery: schedule periodic backups to a configured BACKUP_DIR and restore them with the /restore endpoint after corruption or accidental deletion.
This server is intended for developer integration into MCP workflows where predictable, low-memory streaming and filesystem semantics are required. Refer to the repository for the exact API contract, deployment templates, and client examples for your language of choice.