- JSON-RPC Safety: Prevents console output from interfering with MCP communication
- Custom Logger: Replaced all
console.*calls with safe logger implementation - Error Prevention: Eliminates JSON parsing errors in Claude Desktop
- Environment Variables:
DEBUG_MCP=trueorMCP_DEBUG=true: Enable debug loggingMCP_LOG_FILE=/path/to/log.txt: Write logs to file instead of stderrMCP_SILENT_ERRORS=true: Suppress error messages in responses
- Auto-suppression: Debug output automatically disabled by default
- Fixed JSON parsing errors in MCP server communication
- Resolved console output interference with JSON-RPC protocol
- Corrected stdout/stderr separation for proper MCP operation
- All logging now goes through
SafeMCPLoggerclass - Automatic console override when debugging disabled
- File-based logging support for production debugging
- Clean separation of debug output and JSON-RPC communication
- Revolutionary Performance: Replace per-file ripgrep calls with single bulk search operation
- Performance Metrics:
- Average search time: ~62ms across all scenarios
- Throughput: 4,850 files/second
- 50x faster than previous implementation
- Excellent scaling (0.27x sublinear scaling factor)
- Memory Efficiency: Precomputed results caching via global map
- Smart Batching: Process 500+ files in ~125ms
- New Parameter:
include_hidden- Search hidden files and directories - Improved Error Handling: Robust process cleanup and fallback mechanisms
- Better Context Support: Enhanced context lines handling
- File Pattern Filtering: More efficient file type filtering
- TypeScript Compilation: Fixed function parameter structure mismatch in
searchCodeWithRipgrep - Variable Scope: Resolved
maxResultsundefined variable error - Pattern Validation: Fixed missing conditional statement in empty pattern check
- Process Management: Improved ripgrep process cleanup and error handling
- Internationalization: Translated all tool descriptions to English
- Comprehensive Testing: Added extensive test suite (unit + smoke + performance benchmarks)
- Better Documentation: Enhanced with performance metrics
- Clean Build: Added
dist/to.gitignore
| Dataset Size | Content Search | Filename Search | Throughput |
|---|---|---|---|
| 50 files | 47ms | 4.33ms | 1,064 files/sec |
| 200 files | 114ms | 9ms | 1,754 files/sec |
| 500 files | 125ms | 12.67ms | 4,000 files/sec |
- Major Optimization: @sting8k - Bulk ripgrep optimization implementation
- Bug Fixes & Release: @efforthye - TypeScript fixes and release management
No breaking changes! New optional parameter:
await searchCode({
path: "./src",
pattern: "searchTerm",
include_hidden: true // β New parameter
});- Removed fast_edit_file: Deprecated legacy editing tool has been completely removed
- This tool was causing conflicts and performance issues
- All editing functionality now handled by more robust alternatives:
fast_edit_block- Precise block editing with safety checksfast_safe_edit- Smart editing with risk detectionfast_edit_multiple_blocks- Multi-block editingfast_edit_blocks- Batch editing operations
- Improved Windows compatibility: Enhanced cross-platform file operations
- Better path handling: Improved Windows path normalization and handling
- Enhanced system integration: Better integration with Windows filesystem features
- New contributor: @sting8k - Windows support improvements and tool optimization
- Cleaner codebase: Removed redundant and problematic code
- Better maintainability: Simplified tool hierarchy reduces maintenance overhead
- Improved performance: Elimination of conflicting tools improves overall performance
If you were using fast_edit_file, please migrate to:
- For simple edits: Use
fast_edit_block - For multiple edits: Use
fast_edit_blocks - For safer edits: Use
fast_safe_edit
All other functionality remains unchanged:
- File reading/writing with auto-chunking
- Directory operations and tree navigation
- Advanced search capabilities (ripgrep integration)
- Complex file operations (copy, move, delete, batch)
- Archive management (compress/extract)
- Directory synchronization
- Large file streaming support
-
fast_copy_file: Copy files and directories with advanced options
- Recursive directory copying
- Timestamp preservation
- Overwrite protection
- Automatic directory creation
-
fast_move_file: Move/rename files and directories
- Cross-device move support (copy + delete fallback)
- Backup creation before overwrite
- Directory creation
- Safe overwrite handling
-
fast_delete_file: Safe file and directory deletion
- Protection against system directories
- Confirmation requirements with force override
- Recursive directory deletion
- Backup before deletion option
- fast_batch_file_operations: Execute multiple file operations in sequence
- Support for copy, move, delete, rename operations
- Dry-run mode for operation preview
- Stop-on-error or continue-on-error modes
- Comprehensive backup system
- Detailed operation results
-
fast_compress_files: Create compressed archives
- Support for tar, tar.gz, tar.bz2 formats
- Configurable compression levels
- Exclude patterns for selective compression
- Multiple file/directory input support
-
fast_extract_archive: Extract compressed archives
- Automatic format detection
- Selective file extraction
- Overwrite protection
- Permission preservation
- fast_sync_directories: Advanced directory synchronization
- Multiple sync modes: mirror, update, merge
- Preserve newer files option
- Delete extra files option
- Exclude patterns support
- Dry-run capability
- Cross-platform compatibility: All operations work on Windows, macOS, and Linux
- Safety mechanisms: Multiple confirmation layers and backup systems
- Performance optimization: Efficient handling of large file operations
- Error recovery: Comprehensive error handling with rollback capabilities
- Detailed reporting: Comprehensive operation summaries and results
await fast_batch_file_operations({
operations: [
{ operation: "copy", source: "/src/file1.txt", destination: "/dest/file1.txt" },
{ operation: "move", source: "/temp/file2.txt", destination: "/archive/file2.txt" },
{ operation: "delete", source: "/tmp/old_file.txt" }
],
dry_run: false,
create_backup: true,
stop_on_error: true
});await fast_sync_directories({
source_dir: "/source/project",
target_dir: "/backup/project",
sync_mode: "update",
delete_extra: false,
preserve_newer: true,
exclude_patterns: [".git", "node_modules", "*.log"]
});await fast_compress_files({
paths: ["/project/src", "/project/docs"],
output_path: "/backups/project_backup.tar.gz",
format: "tar.gz",
compression_level: 6,
exclude_patterns: ["*.log", "node_modules", ".git"]
});- System directory protection: Prevents accidental deletion of critical paths
- Backup integration: Configurable backup creation before destructive operations
- Force confirmation: Explicit confirmation required for dangerous operations
- Path validation: Comprehensive path safety checks
- Error recovery: Automatic rollback on operation failures
- Streaming operations: Large file handling with memory efficiency
- Parallel processing: Batch operations with optimal resource usage
- Cross-device optimization: Intelligent handling of cross-filesystem operations
- Progress tracking: Detailed operation progress and timing information
- Enhanced error handling throughout all operations
- Improved logging and debugging capabilities
- Better integration with system tools (tar, etc.)
- None - All existing functionality remains fully compatible
This update directly addresses the feedback about "볡μ‘ν νμΌ μμ " (complex file operations) by providing:
- νμΌ μ΄λ, λ³΅μ¬ λ±μ κ³ κΈ μμ - Full support for advanced file operations
- μ¬λ¬ νμΌ μΌκ΄ μ²λ¦¬ κΈ°λ₯ - Comprehensive batch processing capabilities
- Archive management - Complete compression and extraction support
- Directory synchronization - Advanced sync capabilities
- Productivity: Handle complex file operations without switching tools
- Safety: Multiple safety layers prevent data loss
- Efficiency: Batch operations reduce overhead and improve performance
- Flexibility: Configurable options for different use cases
- Reliability: Comprehensive error handling and recovery mechanisms
- fast_edit_blocks: New tool for efficient batch block editing
- Multiple precise edits: Process multiple
fast_edit_blockoperations in a single call - Safety-first approach: Each edit validates expected replacements before applying changes
- Performance optimization: Significantly faster than sequential
fast_edit_blockcalls
await fast_edit_blocks({
path: "/path/to/file.ts",
edits: [
{
old_text: "// old comment 1",
new_text: "// new comment 1",
expected_replacements: 1
},
{
old_text: "function oldName()",
new_text: "function newName()",
expected_replacements: 1
}
],
backup: true
});- Speed: Process multiple edits in one operation instead of multiple calls
- Safety: Each edit includes safety checks and expected replacement counts
- Efficiency: Reduced overhead for large-scale code refactoring
- Reliability: Maintains backup and error recovery features
- Sequential processing ensures each edit applies to the current state
- Detailed edit results with success/failure status for each operation
- Maintains all safety features of
fast_edit_block - Backward compatible with existing tools
- Configurable Backup System: Control backup file creation via
CREATE_BACKUP_FILESenvironment variable - Backup Control: Set
CREATE_BACKUP_FILES=trueto enable backup file creation (default: false to reduce clutter) - Smart Backup Management: Backup files only created when necessary and when enabled
{
"mcpServers": {
"fast-filesystem": {
"command": "npx",
"args": ["-y", "fast-filesystem-mcp"],
"env": {
"CREATE_BACKUP_FILES": "false"
}
}
}
}- All editing functions now respect the
ENABLE_BACKUPsetting - Backup status included in response information
- Default behavior: backups enabled (set to
falseto disable) - Enhanced server info includes backup configuration status
- Reduced file system clutter when backups disabled
- Faster operations when backup creation is skipped
- Maintained data safety with configurable backup options
- Simplified emoji guidelines: Short English messages instead of verbose Korean
- Reduced response size: Removed unnecessary emoji detection details
- Token savings: Approximately 70% reduction in token usage per operation
- Emoji guidelines now show simple "Emojis not recommended in files" message
- Removed detailed emoji position tracking and verbose recommendations
- Streamlined file info responses
- Updated README to focus on large file handling capabilities
- Faster response processing due to smaller payloads
- Better cost efficiency for large-scale file operations
- Maintained all core functionality while reducing verbosity
- Universal emoji guidelines for all file types
- Smart emoji guideline system
- Checkpoint system and emoji removal features
- Basic filesystem functionality
- Large file streaming support
- Pagination support
- Claude optimizations