BACH FileCommander
效率与工作流by lukisch
39 tools for filesystem, process management, sessions, search, JSON repair, and PDF export.
什么是 BACH FileCommander?
39 tools for filesystem, process management, sessions, search, JSON repair, and PDF export.
README
ellmos FileCommander MCP Server
Part of the ellmos-ai family.
A comprehensive Model Context Protocol (MCP) server that gives AI assistants full filesystem access, process management, interactive shell sessions, and async file search capabilities.
44 tools in a single server - everything an AI agent needs to interact with the local system.
Discovery keywords: local filesystem MCP server, safe delete MCP, Recycle Bin MCP server, process management MCP, interactive shell MCP, async file search for AI agents, Markdown to PDF MCP, OCR MCP server.
Registry status: published on npm, listed on Glama, and prepared for the official MCP Registry via server.json. Glama currently indexes the repository metadata but still reports tools: [], so a reindex should be triggered after the next npm patch release.
Why FileCommander?
Most filesystem MCP servers only cover basic read/write operations. FileCommander goes further:
- Safe Delete - Moves files to Recycle Bin (Windows) or Trash (macOS/Linux) instead of permanent deletion
- Interactive Sessions - Start and interact with REPLs (Python, Node.js, shells) through the MCP protocol
- Async Search - Search large directory trees in the background while the AI continues working
- Process Management - List, start, and terminate system processes
- String Replace - Edit files by matching unique strings with context validation
- Format Conversion - Convert between JSON, CSV, INI, YAML, TOML, XML, and TOON
- ZIP Archives - Create, extract, and list ZIP archives
- File Checksums - SHA-256, MD5, SHA-1, SHA-512 hashing with compare
- OCR - Extract text from images (optional tesseract.js dependency)
- Safety Mode - Toggle to route all deletes through Recycle Bin / Trash
- Markdown Export - Convert Markdown to professional HTML/PDF with code blocks, tables, nested lists, blockquotes
- Cloud-Lock Safe - Automatic copy+delete fallback when cloud sync filters (OneDrive, Dropbox, Google Drive, iCloud) block rename operations
- Cloud Lock Diagnosis - Check whether a path is at risk of sync-filter conflicts before operating
- Cross-platform - Works on Windows, macOS, and Linux with platform-specific optimizations
Installation
Prerequisites
- Node.js 18 or higher
- npm
Option 1: Install from NPM
npm install -g ellmos-filecommander-mcp
Option 2: Install from Source
git clone https://github.com/ellmos-ai/ellmos-filecommander-mcp.git
cd ellmos-filecommander-mcp
npm install
npm run build
Configuration
Claude Desktop
Add to your claude_desktop_config.json:
Windows: %APPDATA%\Claude\claude_desktop_config.json
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
If installed globally via NPM:
{
"mcpServers": {
"filecommander": {
"command": "ellmos-filecommander"
}
}
}
If installed from source:
{
"mcpServers": {
"filecommander": {
"command": "node",
"args": ["/absolute/path/to/filecommander-mcp/dist/index.js"]
}
}
}
Restart Claude Desktop after saving.
Other MCP Clients
The server communicates via stdio transport. Point your MCP client to the dist/index.js entry point or the ellmos-filecommander binary.
Tools Overview
Filesystem Operations (14 tools)
| Tool | Description |
|---|---|
fc_read_file | Read file contents with optional line limit |
fc_read_multiple_files | Read up to 20 files in a single call |
fc_write_file | Write/create/append to files |
fc_edit_file | Line-based editing (replace, insert, delete lines) |
fc_str_replace | Replace a unique string in a file with context validation |
fc_list_directory | List directory contents (recursive, configurable depth) |
fc_create_directory | Create directories (including parents) |
fc_delete_file | Delete a file (permanent) |
fc_delete_directory | Delete a directory (with optional recursive flag) |
fc_safe_delete | Move to Recycle Bin / Trash (recoverable!) |
fc_move | Move or rename files and directories (cloud-lock safe) |
fc_copy | Copy files and directories |
fc_file_info | Get detailed file metadata (size, dates, type) |
fc_search_files | Synchronous file search with wildcard patterns |
Async Search (5 tools)
| Tool | Description |
|---|---|
fc_start_search | Start a background search (returns immediately) |
fc_get_search_results | Retrieve results with pagination |
fc_stop_search | Cancel a running search |
fc_list_searches | List all active/completed searches |
fc_clear_search | Remove completed searches from memory |
Process Management (4 tools)
| Tool | Description |
|---|---|
fc_execute_command | Execute a shell command (blocking, with timeout) |
fc_start_process | Start a background process (non-blocking) |
fc_list_processes | List running system processes |
fc_kill_process | Terminate a process by PID or name |
Interactive Sessions (5 tools)
| Tool | Description |
|---|---|
fc_start_session | Start an interactive process (Python, Node, shell...) |
fc_read_output | Read session output |
fc_send_input | Send input to a running session |
fc_list_sessions | List all sessions |
fc_close_session | Terminate a session |
File Maintenance & Repair (9 tools)
| Tool | Description |
|---|---|
fc_fix_json | Repair broken JSON (BOM, trailing commas, comments, single quotes) |
fc_validate_json | Validate JSON with detailed error position and context |
fc_cleanup_file | Remove BOM, NUL bytes, trailing whitespace, normalize line endings |
fc_fix_encoding | Fix Mojibake / double-encoded UTF-8 (27+ character patterns) |
fc_folder_diff | Track directory changes with snapshots (new/modified/deleted) |
fc_batch_rename | Pattern-based batch renaming (prefix/suffix, replace, auto-detect) |
fc_convert_format | Convert between JSON, CSV, INI, YAML, TOML, XML, and TOON formats |
fc_detect_duplicates | Find duplicate files using SHA-256 hashing |
fc_checksum | File hashing (MD5, SHA-1, SHA-256, SHA-512) with optional compare |
Archive (1 tool)
| Tool | Description |
|---|---|
fc_archive | Create, extract, and list ZIP archives |
OCR (1 tool)
| Tool | Description |
|---|---|
fc_ocr | Extract text from images via tesseract.js (optional dependency) |
Cloud Sync (1 tool)
| Tool | Description |
|---|---|
fc_check_cloud_lock | Diagnose whether a path may be blocked by cloud sync filters (Windows) |
System (2 tools)
| Tool | Description |
|---|---|
fc_get_time | Get current system time with timezone info |
fc_set_safe_mode | Toggle safe mode: all deletes go through Recycle Bin / Trash |
Export (2 tools)
| Tool | Description |
|---|---|
fc_md_to_html | Markdown to standalone HTML with CSS styling (headers, code blocks, tables, nested lists, blockquotes, images, checkboxes) |
fc_md_to_pdf | Markdown to PDF via headless browser (Edge/Chrome). Falls back to HTML if no browser is available |
Total: 44 tools
Comparison with Alternatives
| Feature | FileCommander | Desktop Commander | Official Filesystem |
|---|---|---|---|
| File read/write/copy/move | 14 tools | Yes | Yes |
| Safe delete (Recycle Bin) | Yes | No | No |
| Async background search | 5 tools | No | No |
| Interactive sessions (REPL) | 5 tools | Yes | No |
| Process management | 4 tools | Yes | No |
| Shell command execution | Yes | Yes | No |
| String replace with validation | Yes | Yes | No |
| Line-based file editing | Yes | No | No |
| JSON repair & validation | 2 tools | No | No |
| Encoding fix (Mojibake) | Yes | No | No |
| Duplicate detection (SHA-256) | Yes | No | No |
| Folder diff / change tracking | Yes | No | No |
| Batch rename (pattern-based) | Yes | No | No |
| Format conversion (JSON/CSV/INI/YAML/TOML/XML/TOON) | Yes | No | No |
| ZIP archive (create/extract/list) | Yes | No | No |
| File checksums (SHA-256/MD5) | Yes | No | No |
| OCR (image to text) | Optional | No | No |
| Safety mode (delete → Recycle Bin) | Yes | No | No |
| Path allowlist / sandboxing | No | No | Yes |
| Excel / PDF support | PDF (via browser) | Yes | No |
| HTTP transport | No | No | No |
| Markdown to HTML/PDF export | Yes | No | No |
| Total tools | 44 | ~15 | ~11 |
| Servers needed | 1 | 1 | + extra for processes |
Key differentiators:
- Only MCP server with recoverable delete (Recycle Bin / Trash)
- Only MCP server with async background search with pagination
- Built-in JSON repair, encoding fix, and duplicate detection
- Only MCP server with cloud-lock-safe file operations (automatic copy+delete fallback)
- Most comprehensive single-server solution (44 tools)
- Built-in safety mode to prevent accidental permanent deletion
Tool Prefix
All tools use the fc_ prefix (FileCommander) to avoid conflicts with other MCP servers.
Discoverability
FileCommander is designed to be discoverable by both people and AI agents:
package.jsonexposes the officialmcpName(io.github.ellmos-ai/ellmos-filecommander-mcp) and MCP-specific npm keywords.server.jsonfollows the official MCP Registry schema and points to the npm package.glama.jsonprovides MCP-directory metadata for Glama-compatible indexes.llms.txtgives compact context for LLMs, agent catalogs, and documentation crawlers.
Primary search terms: ellmos-filecommander-mcp, FileCommander MCP, filesystem MCP server, safe delete MCP, async file search MCP, process management MCP, Markdown PDF MCP.
Security
This server has full filesystem access with the running user's permissions.
See SECURITY.md for detailed security information and recommendations.
Key points:
fc_execute_commandruns arbitrary shell commandsfc_delete_*tools perform permanent deletion by default (usefc_safe_deleteor enable safe mode viafc_set_safe_modeto route all deletes through Recycle Bin / Trash)- No built-in sandboxing - security is delegated to the MCP client layer
- Designed for local use via stdio transport only
Development
# Install dependencies
npm install
# Watch mode (auto-rebuild on changes)
npm run dev
# One-time build
npm run build
# Start the server
npm start
# Run test suite
npm test
Testing
The project includes a comprehensive test suite with 143 tests covering filesystem operations, format conversion, encoding repair, archive handling, duplicate detection, and more.
npm test # Run all tests
npx vitest run # Same as above
npx vitest --watch # Watch mode
Tests are verified on Windows, macOS, and Linux.
Pushes and pull requests run CI on Node.js 20, 22, and 24 with npm ci, TypeScript build, Vitest, and an npm package dry-run.
See CONTRIBUTING.md for contribution guidelines.
Changelog
See CHANGELOG.md for the full version history.
License
MIT - Lukas Geiger (ellmos-ai)
History
This project was originally developed as BACH FileCommander (bach-filecommander-mcp). It has been renamed to ellmos FileCommander (ellmos-filecommander-mcp) as part of the ellmos-ai organization.
The legacy package name bach-filecommander-mcp is deprecated. Please use ellmos-filecommander-mcp instead:
npm uninstall -g bach-filecommander-mcp
npm install -g ellmos-filecommander-mcp
ellmos-ai Ecosystem
This MCP server is part of the ellmos-ai ecosystem — AI infrastructure, MCP servers, and intelligent tools.
MCP Server Family
| Server | Tools | Focus | npm |
|---|---|---|---|
| FileCommander | 44 | Filesystem, process management, interactive sessions, cloud-lock safe | ellmos-filecommander-mcp |
| CodeCommander | 17 | Code analysis, AST parsing, import management | ellmos-codecommander-mcp |
| Clatcher | 12 | File repair, format conversion, batch operations | ellmos-clatcher-mcp |
| n8n Manager | 18 | n8n workflow management via AI assistants | n8n-manager-mcp |
| ControlCenter | 10 | MCP stack discovery, profile management, control plane | ellmos-controlcenter-mcp |
| Homebase | 44 | LLM memory, knowledge, state, routing, and orchestration | ellmos-homebase-mcp (alpha) |
| ServerCommander | 8 | Server operations: deploy dry-runs, mail, log analysis, health checks | ellmos-servercommander-mcp (alpha) |
AI Infrastructure
| Project | Description |
|---|---|
| BACH | Text-based OS for LLMs — 109+ handlers, 373+ tools, 932+ skills |
| clutch | Provider-neutral LLM orchestration with auto-routing and budget tracking |
| rinnsal | Lightweight agent memory, connectors, and automation infrastructure |
| ellmos-stack | Self-hosted AI research stack (Ollama + n8n + Rinnsal + KnowledgeDigest) |
| MarbleRun | Autonomous agent chain framework for Claude Code |
| gardener | Minimalist database-driven LLM OS prototype (4 functions, 1 table) |
| ellmos-tests | Testing framework for LLM operating systems (7 dimensions) |
Desktop Software
Our partner organization open-bricks bundles AI-native desktop applications — a modern, open-source software suite built for the age of AI. Categories include file management, document tools, developer utilities, and more.
Haftung / Liability
Dieses Projekt ist eine unentgeltliche Open-Source-Schenkung im Sinne der §§ 516 ff. BGB. Die Haftung des Urhebers ist gemäß § 521 BGB auf Vorsatz und grobe Fahrlässigkeit beschränkt. Ergänzend gilt der Haftungsausschluss der MIT-Lizenz.
Nutzung auf eigenes Risiko. Keine Wartungszusage, keine Verfügbarkeitsgarantie, keine Gewähr für Fehlerfreiheit oder Eignung für einen bestimmten Zweck.
This project is an unpaid open-source donation. Liability is limited to intent and gross negligence (§ 521 German Civil Code). The MIT license disclaimer also applies. Use at your own risk. No warranty, no maintenance guarantee, no fitness-for-purpose assumed.
常见问题
BACH FileCommander 是什么?
39 tools for filesystem, process management, sessions, search, JSON repair, and PDF export.
相关 Skills
技能工坊
by anthropics
覆盖 Skill 从创建到迭代优化全流程:起草能力、补测试提示、跑评测与基准方差分析,并持续改写内容和描述,提升效果与触发准确率。
✎ 技能工坊把技能从创建、迭代到评测串成闭环,方差分析加描述优化,特别适合把触发准确率打磨得更稳。
PPT处理
by anthropics
处理 .pptx 全流程:创建演示文稿、提取和解析幻灯片内容、批量修改现有文件,支持模板套用、合并拆分、备注评论与版式调整。
✎ 涉及PPTX的创建、解析、修改到合并拆分都能一站搞定,连备注、模板和评论也能处理,做演示文稿特别省心。
PDF处理
by anthropics
遇到 PDF 读写、文本表格提取、合并拆分、旋转加水印、表单填写或加解密时直接用它,也能提取图片、生成新 PDF,并把扫描件通过 OCR 变成可搜索文档。
✎ PDF杂活别再来回切工具了,文本表格提取、合并拆分到OCR识别一次搞定,连扫描件也能变可搜索。
相关 MCP Server
文件系统
编辑精选by Anthropic
Filesystem 是 MCP 官方参考服务器,让 LLM 安全读写本地文件系统。
✎ 这个服务器解决了让 Claude 直接操作本地文件的痛点,比如自动整理文档或生成代码文件。适合需要自动化文件处理的开发者,但注意它只是参考实现,生产环境需自行加固安全。
by wonderwhy-er
Desktop Commander 是让 AI 直接执行终端命令、管理文件和进程的 MCP 服务器。
✎ 这工具解决了 AI 无法直接操作本地环境的痛点,适合需要自动化脚本调试或文件批量处理的开发者。它能让你用自然语言指挥终端,但权限控制需谨慎,毕竟让 AI 执行 rm -rf 可不是闹着玩的。
by stickerdaniel
LinkedIn Profile and Job Scraper 是让 Claude 直接抓取 LinkedIn 个人资料、公司信息和职位详情的工具。
✎ 这个服务器解决了招聘和商业调研中手动复制粘贴 LinkedIn 数据的痛点,适合猎头或市场分析师快速获取候选人背景和公司动态。不过,LinkedIn 反爬机制频繁更新,数据稳定性需要持续维护,使用时建议搭配人工验证。