
BACH FileCommander
io.github.lukisch由 GitHub 账号 lukisch 发布v1.7.0更新于 Oct 24, 2026
43 tools for filesystem, process management, sessions, search, OCR, ZIP, and PDF export.
概览
让助手获得广泛的本地文件系统控制能力:读写和编辑文件、搜索内容、执行 shell 命令与交互式会话、处理压缩包、OCR 以及导出 PDF。
- 可以做什么
- 这是一个本地 stdio 服务器,提供约 50 个以 fc_ 为前缀的工具。功能包括文件读写与编辑、目录列举、复制、移动、删除(安全模式可将删除改为移入回收站或废纸篓)、有上限的多文件内容搜索、后台文件名搜索、进程列举与终止、shell 命令执行、交互式 REPL 会话、格式转换、JSON 与编码修复、校验和、ZIP 压缩包、OCR、Markdown 转 HTML/PDF,以及只读的网页抓取工具。
- 适用场景
- 适合助手需要直接在本机操作的场景:重构或审查代码、检查与修复文件、运行构建或测试命令、驱动交互式 REPL,以及转换和导出文档。它面向开发者和智能体工作流,而非远程或托管用途。
- 运行要求
- 通过 stdio 在本地运行,通常用 npx 从 npm 包启动。需要 Node.js 20 或更高版本以及 npm。未声明账号、API 密钥或环境变量。OCR 需要可选的 tesseract.js 依赖,Markdown 转 PDF 需要本机 Edge 或 Chrome 浏览器,否则回退为 HTML。仅支持桌面端。
安装
在 SourceWeft 中
- 打开 控制台中的 BACH FileCommander,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
ellmos FileCommander MCP Server
English | Deutsch | Español | 简体中文 | 日本語 | Русский | Français | हिन्दी | العربية | বাংলা | Português
The README navigation lists the documentation languages available in this repository. FileCommander runtime messages and formatted responses support German (de), English (en), Spanish (es), Chinese (zh), Japanese (ja), Russian (ru), French (fr), Hindi (hi), Arabic (ar), Bengali (bn), and Portuguese (pt). This runtime list is separate from README translation availability. It covers generated runtime messages and formatted tool responses; MCP tool titles, discovery descriptions, and schema descriptions remain static English. Set FC_LANGUAGE to one of the supported codes before starting the server, or call fc_set_language during an active MCP session. fc_get_language reports the active language and all eleven supported codes. Unset or unsupported FC_LANGUAGE values fall back to German (de). Date and time formatting follows the active locale.
Part of the ellmos-ai family.
[License: MIT] [CI] [npm version] [Node.js] [MCP Tools] [Tests] [Security: Explicit Egress] [Security: 48h SLA] [Safe Delete] [Attribution: NOTICE] [Unprivileged RunAsInvoker] [Third-Party Audited] [Level 1 SBOM: Plain Text] [ellmos-ai] [open-bricks] [Discovery: llms.txt] [Last-Checked] [Verified]
Quick Navigation:
- Overview | 2. System Architecture | 3. End-to-End Execution Lifecycle | 4. Core Capabilities & Safety Invariants | 5. Target Personas & Discoverability | 6. Installation & Prerequisites | 7. Configuration & Client Setup | 8. Tools Overview (50 Tools) | 9. Comparative Matrix & Alternatives | 10. Tool Prefix & Naming Convention | 11. Governance & Runtime Invariants | 12. Security Architecture & Tool Risks | 13. Testing, Quality Gates & Verification | 14. Changelog & Versioning | 15. Level 1 SBOM & Third-Party Licenses | 16. History & Evolution | 17. ellmos-ai Ecosystem & Partner Matrix | 18. Statutory Notice (§ 521 BGB) & Liability Disclaimer
| Direct References: 🛡️ Security Policy • 🤝 Contributing • ⚖️ Third-Party Licenses • 📄 Plain Text SBOM • 🤖 LLM Context (llms.txt) • 📋 Canonical Notice |
A comprehensive Model Context Protocol (MCP) server that gives AI assistants full filesystem access, bounded multi-file content search, process management, interactive shell sessions, and async filename search capabilities.
50 tools in a single server - everything an AI agent needs to interact with the local system.
Discovery keywords: local filesystem MCP server, multi-file content search MCP, safe delete MCP, Recycle Bin MCP server, process management MCP, interactive shell MCP, async file search for AI agents, cloud-lock-safe file operations, Markdown to PDF MCP, OCR MCP server, ZIP archive MCP.
Registry status: published on npm, indexed by jsDelivr, visible on LobeHub, listed on Glama, and prepared for the official MCP Registry via server.json. Some third-party directories still show older 43-tool metadata, so the canonical README/npm metadata should remain the source of truth until their reindex catches up.
[!NOTE] For AI Agents & LLM Integrations: FileCommander provides 50 specialized tools accessible via standard stdio transport. All tool names use the
fc_prefix to prevent namespace collisions. For LLMs, compact context and schema overviews are available inllms.txtandserver.json.
Overview & 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
- Explicit Content Search - Search literal text or regex across a bounded list of files without recursion or glob expansion
- 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 - MD5, SHA-1, SHA-256, SHA-384, and 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
System Architecture
ASCII Four-View Architectural Topology
Component Flow Diagram
End-to-End Execution Lifecycle
Core Capabilities & Safety Invariants
Target Personas & Discoverability
FileCommander is purpose-built and validated for four core developer, agentic, and operations personas:
[PERSONA-01] Autonomous AI Coding Agents & LLM Swarms
- Profile: Multi-agent swarms and standalone agentic runtimes (Claude Code, Antigravity/Gemini, OpenAI Codex, AutoGen, CrewAI) executing recursive code editing, project refactoring, and directory audits.
- Key Operational Pain Points: Rapid context window bloat caused by reading multi-megabyte files, unhandled process crashes from locked files (
EPERM/EBUSY) in cloud-synced folders, and unrecoverable repository corruption from accidentalrm -rfcleanup routines. - FileCommander Solution:
fc_preview_file: Metadata-first inspection with strict 1 MiB inline content ceiling preventing LLM context blowout.fc_search_content: Bounded multi-file search (max 50 files, 10 MB per file, 200 matches) with automatic secret/token redaction.fc_safe_delete&fc_set_safe_mode: Preserves deleted files in OS Recycle Bin / Trash for zero-risk file operations.fc_move&fc_check_cloud_lock: Automatic copy + SHA-256 verify + unlink fallback on file locks, preventing agent failure.
[PERSONA-02] DevOps, Toolchain & Multi-Host Automation Engineers
- Profile: Systems and automation engineers constructing cross-platform CLI tools, CI/CD validation pipelines, and multi-machine sync scripts across Windows, Linux, and macOS.
- Key Operational Pain Points: Heterogeneous operating system semantics (Windows backslashes vs POSIX slashes, line-ending corruption, shell-specific syntax), zombie child processes, and file locking in shared OneDrive/Dropbox workspaces.
- FileCommander Solution:
- Cross-platform unified tool semantics across Windows, Linux, and macOS.
- Stateful interactive REPL sessions (
fc_start_session,fc_send_input,fc_read_output) with bounded circular ring buffers. - Batch file renaming (
fc_batch_rename) and background directory search (fc_start_search,fc_get_search_results). - Process lifecycle management (
fc_execute_command,fc_start_process,fc_kill_process) without process leaks.
[PERSONA-03] SecOps, Governance & Compliance Officers
- Profile: Security officers, compliance auditors, and privacy teams overseeing AI tool integrations in enterprise and production environments.
- Key Operational Pain Points: Undisclosed background telemetry beacons, unvetted network access from local plugins, credential/token leakage into model training or prompt histories, and unprivileged user privilege escalation.
- FileCommander Solution:
- Local stdio transport with strictly zero telemetry and zero open network listening ports.
- Explicit outbound network egress strictly restricted to caller-invoked
fc_web_fetch(internal/private IPs blocked by default). - Automated secret and bearer token masking in search excerpts (
INV-MASK-06). - Strict unprivileged user execution (
INV-PROC-09) and binding 48-hour vulnerability response SLA ([email protected],[email protected]).
[PERSONA-04] Enterprise Platform Architects & Data Pipeline Developers
- Profile: Solutions architects and data engineers integrating local files, normalizing heterogeneous configuration formats, validating cryptographic hashes, and generating reports.
- Key Operational Pain Points: MCP server sprawl requiring 4-6 disparate single-purpose servers, corrupted UTF-8 byte sequences (Mojibake) across tools, and bespoke parsing scripts.
- FileCommander Solution:
- Comprehensive 50-tool single-server deployment eliminating multi-server sprawl and process overhead.
- Lossless declarative conversion across 7 structured formats (
fc_convert_format: JSON, YAML, TOML, XML, CSV, INI, TOON). - Built-in file repair engines (
fc_fix_encoding,fc_fix_json,fc_cleanup_file) for self-healing pipelines. - Cryptographic checksums (
fc_checksum: SHA-256, SHA-512, MD5, SHA-1) and Markdown to PDF/HTML rendering (fc_md_to_pdf,fc_md_to_html).
High-Intent Search Queries & Discoverability Vectors
- Primary Search Queries:
ellmos-filecommander-mcp,FileCommander MCP,filesystem MCP server,multi-file content search MCP,safe delete MCP,async file search MCP,process management MCP,Markdown PDF MCP. - Machine-Readable Metadata: Structured context for AI agents is maintained in
llms.txt,server.json, andglama.json. - Compliance & Attribution: Validated against
THIRD_PARTY_LICENSES.mdandNOTICE.
Installation
Prerequisites
- Node.js 20 or higher
- npm
Option 1: Install from NPM
Option 2: Install from Source
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:
If installed from source:
Restart Claude Desktop after saving.
Claude Code CLI
Add FileCommander to Claude Code via CLI:
Or configure directly in ~/.claude.json under mcpServers.
Gemini CLI
Merge the following mcpServers entry into ~/.gemini/settings.json for the current user, or .gemini/settings.json in your project. On Windows, ~ is %USERPROFILE%. Preserve other settings and existing servers. See the official Gemini CLI configuration reference.
Antigravity
Merge the same server entry into ~/.gemini/config/mcp_config.json globally, or .agents/mcp_config.json in your workspace. These paths differ from Gemini CLI settings. Preserve existing entries; for the IDE you can also open MCP Servers → Manage MCP Servers → View raw config. See the official Antigravity MCP reference.
Cursor IDE
Add to .cursor/mcp.json:
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 (15 tools)
fc_preview_file is the remote/headless fallback for local files. Its default call returns structured metadata only: resolved path, file:// URI, MIME type, byte size, preview kind, fixed 1 MiB limit, and the exact follow-up call. Content is read only after include_content=true. Eligible text and raster images use standard MCP text/image content blocks; PDFs use a bounded embedded resource. Files above 1 MiB and unsupported types remain metadata-only and are never read or Base64-encoded by the preview path.
Content Search (1 tool)
fc_search_content never expands globs, traverses directories, or recursively discovers files. It accepts at most 50 explicit UTF-8 text files, skips binary and files over 10 MB, and returns deterministic JSON. Matches are limited to 200 globally and 100 per file, context to 10 lines, excerpts to 500 characters, and serialized output to 200,000 characters. Missing, cloud-only, permission, encoding, binary, and size failures are reported per file so readable files still produce results. Common secret formats are redacted from excerpts.
Async Search (5 tools)
Process Management (5 tools)
fc_open_path accepts only an existing file or directory and sends it to a fixed native default-handler launcher. Its structured result reports launcher_accepted=true|false, always reports user_visible="unknown", and identifies a machine-readable fallback: fc_preview_file with metadata-only arguments for files or fc_list_directory for directories. Launcher acceptance never claims that a GUI became visible. fc_start_process instead lets the caller choose an executable and arguments. fc_execute_command accepts an arbitrary shell command: Node's default shell is used for ordinary commands (COMSPEC/cmd.exe on Windows), while FileCommander's Windows special-character path can route through Windows PowerShell.
Interactive Sessions (5 tools)
File Maintenance & Repair (9 tools)
Archive (1 tool)
OCR (1 tool)
Cloud Sync (1 tool)
System (4 tools)
Export (2 tools)
Web (1 tool)
Total: 50 tools
Comparative Matrix & Alternatives
FileCommander combines filesystem manipulation, bounded search, process control, data repair, format conversion, and document rendering into a single unified MCP interface. Below is an architectural comparison against standard alternatives across 10 key operational dimensions:
Key differentiators:
- Only MCP server with recoverable delete (Recycle Bin / Trash) and global Safety Mode
- Only MCP server with async background search with pagination and token management
- Only MCP server with automated secret & bearer token redaction in search snippets
- Built-in JSON repair, Mojibake encoding fix, and duplicate detection
- Built-in cloud-lock-safe file operations with automatic copy+verify+delete fallback
- Most comprehensive single-server solution (50 tools) eliminating multi-server sprawl
Tool Prefix
All tools use the fc_ prefix (FileCommander) to avoid conflicts with other MCP servers.
Governance & Runtime Invariants
The server enforces 10 strict runtime invariants guaranteeing safety, predictability, and least privilege:
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_open_pathinvokes the operating system's associated application for a caller-selected existing path; that application runs with the user's permissionsfc_open_pathreports launcher acceptance separately from the invariantuser_visible="unknown";fc_preview_fileis the metadata-first remote fallback with an explicit 1 MiB inline-content boundaryfc_start_sessionstarts an arbitrary interactive command, and subsequentfc_send_inputcalls can execute additional actionsfc_delete_*tools perform permanent deletion by default (usefc_safe_deleteor enable safe mode viafc_set_safe_modeto route all deletes through Recycle Bin / Trash)- Safe mode protects only
fc_delete_fileandfc_delete_directory; it does not sandbox commands or interactive sessions - The server transport is local stdio and emits no telemetry, but an explicit
fc_web_fetchcall performs outbound HTTP(S) access - No built-in sandboxing - security is delegated to the MCP client layer
Development
Testing
The project includes 250 Vitest tests plus 71 standalone i18n checks (321 total) covering filesystem operations, metadata-first inline preview, bounded content search, native default-handler launching, format conversion, encoding repair, archive handling, duplicate detection, language packs, tool annotations, real stdio behavior, and security boundaries.
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 & Legal Attribution
MIT - Lukas Geiger (ellmos-ai). See NOTICE for open-bricks umbrella attribution, THIRD_PARTY_LICENSES.md for Level 1 SBOM, and THIRD_PARTY_LICENSES.txt for plain-text SBOM.
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:
ellmos-ai Ecosystem
This MCP server is part of the ellmos-ai ecosystem — AI infrastructure, MCP servers, and intelligent tools.
MCP Server Family
AI Infrastructure
Desktop Software & Sibling Applications
Our partner organization open-bricks and its line organizations provide AI-native desktop applications and developer utilities:
Haftung / Liability
Dieses Projekt ist eine unentgeltliche Open-Source-Schenkung im Sinne der §§ 516 ff. BGB (Gefälligkeitsrecht). Die Haftung des Urhebers und der Mitwirkenden 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.
Sicherheitsrelevante Vorfälle und Schwachstellen werden über das verbindliche 48-Stunden-SLA unter [email protected] und [email protected] entgegengenommen und innerhalb von 5 Werktagen triagiert.
This project is an unpaid open-source donation under German law (§§ 516 et seq. BGB). Liability is strictly limited to intent and gross negligence (§ 521 German Civil Code). The MIT license disclaimer applies complementarily. Use at your own risk. No warranty, no maintenance guarantee, no fitness-for-purpose assumed.
Security incidents and vulnerabilities are handled under a binding 48-hour response SLA via [email protected] and [email protected] with formal triage within 5 business days.
来源:README.md,提交 2f7fb2b
工具
0版本历史
1- v1.7.0最新Sep 16, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分