mcp-folder-scout
mcp-folder-scout
向 Claude 询问一个文件夹里有什么、哪些内容已经过时,以及空间都用在了哪里。
它指向你机器上的一个文件夹,并报告名称、大小和日期。它无法读取文件内容,也无法移动或删除任何内容。
> What's in my Downloads folder, and what haven't I opened in over a year?771 files, 43.0 GB. Video is 96% of it.
Not opened in over a year: 102 files, 15.3 GB, almost all of it
video — Barclay lake (27 clips, ~12 GB) and Big (2 clips, 2.5 GB).
If those are backed up elsewhere, they're the obvious candidates.
76 files matched identity, legal, tax, or medical naming and were
excluded from the suggestions above.安装
claude mcp add --scope user folder-scout -- uvx mcp-folder-scout在 Claude Desktop 中,把下面这段加入 claude_desktop_config.json,然后重启:
{
"mcpServers": {
"folder-scout": {
"command": "uvx",
"args": ["mcp-folder-scout"]
}
}
}配置文件位于 macOS 上的 ~/Library/Application Support/Claude/claude_desktop_config.json 和 Windows 上的 %APPDATA%\Claude\claude_desktop_config.json。
需要 uv 和 Python 3.10+。适用于任何 MCP 客户端。
Related MCP server: WinDirStat MCP Server
工具
工具 | 作用 |
| 文件夹汇总:类型分类、新旧分段、最大的子文件夹。 |
| 按时间、大小、类型或子文件夹筛选后的单个文件。 |
两者都只返回元数据。
它不会做什么
它无法删除、移动或重命名任何内容。 代码里没有写入路径。它能做的只是向你提建议;具体操作需要你自己在 Finder 中完成。
它无法读取你的文件。 只有名称、大小和时间戳会离开你的电脑。
它不会建议删除你的文档。 凡文件或文件夹的名称涉及身份、法律、税务或医疗(例如护照、签证、W2、保险、结婚证、契约等),都会计入累计汇总并被标记,但永远不被视为清理候选。这种保护会向下继承,所以 Passport Renewal/ 里一个名为 scan1.pdf 的文件也会被覆盖到。
云同步文件夹(iCloud、Dropbox、OneDrive)会被跳过而不做处理,因为它们在磁盘上的大小和时间戳没有意义。系统文件夹、应用包和构建目录也同样会被跳过。每次扫描都会列出哪些内容被排除了。
已知限制
上次访问时间只是一个提示,不是确凿事实。Spotlight、备份和杀毒软件都可能使它变化,且某些卷甚至会完全停止记录访问时间。当服务器检测到访问时间并没有被维护时,它会明确说明,并回退为使用修改时间。
“很旧、从未动过”这个判断,用在归档的税务记录上,和用在垃圾文件上一样“准确”。这正是受保护列表发挥作用的地方,但它无法涵盖所有情况。删除前请务必自己确认。
APFS 克隆和硬链接在磁盘上共享数据块。凡是共享同一 inode 的文件只会被计数一次,因此汇总不会重复统计,但删除某个克隆文件的一个副本,实际释放的空间可能小于其列出的大小。
默认情况下,扫描在 50,000 个文件处停止,并只向下查看三层。结果会缓存 5 分钟;传入 refresh 可强制重新扫描。
截图堆积文件和近似重复图片暂时不会被检测。检测计划包括精确查重。
许可证
MIT
Available Tools
2 toolslist_filesA
List individual files in a folder, filtered by age, size, type, or subfolder.
Use after scan_folder to see the actual files behind a summary line, for example the ones not opened in over a year, or the largest videos.
Each row is: age since last opened, size, and path relative to the folder. A leading asterisk marks a protected file (identity, legal, tax, or medical naming). Report those if the user asked to see them, but never put them forward as something to delete or move.
Returns metadata only. This tool never reads file contents.
path: absolute path to the folder. not_opened_days: only files untouched for at least this many days. 0 for all. min_size_mb: only files at least this large. 0 for all. file_type: one of documents, spreadsheets, images, video, audio, archives, installers, code, other. Or a bare extension such as png. Empty for all. subfolder: restrict to one immediate subfolder by name. Empty for all. sort_by: size, oldest (least recently opened), or newest. Default size. limit: rows to return, capped at 100. Default 25.
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | ||
| limit | No | ||
| sort_by | No | size | |
| file_type | No | ||
| max_depth | No | ||
| subfolder | No | ||
| min_size_mb | No | ||
| not_opened_days | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description fully carries the behavioral-disclosure burden, and it does so well: 'Returns metadata only. This tool never reads file contents.' It also discloses an important edge case: protected files are flagged with an asterisk and must never be suggested for deletion or moving. That is exactly the kind of behavior an agent needs to know.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is information-dense without being bloated. Every block served a clear purpose: what the tool does, when to use it, row format, protected-file caveat, safety guarantee, and parameter meanings. The transition to parameters is efficient and the usage guidance is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool's output schema relieves it from covering the return shape, and the description covers the workflow context, row layout, and protected-file handling. The main completeness gap is the undocumented 'max_depth' parameter, which could affect the scope of a listing and deserves clarification.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
While schema description coverage is 0%, the description adds substantial semantics for most parameters: defaults, unit semantics for 'not_opened_days' and 'min_size_mb', allowed categories for 'file_type', and the cap at 100 for 'limit'. However, 'max_depth' appears in the schema but is not described at all, so the compensation is incomplete.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and a clear resource ('individual files in a folder'), then enumerates the four filters: age, size, type, and subfolder. It distinguishes itself from scan_folder by positioning itself as the drill-down step 'to see the actual files behind a summary line'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly tells the agent when to use this tool: 'Use after scan_folder to see the actual files behind a summary line.' It even gives concrete examples, such as 'the ones not opened in over a year, or the largest videos,' which makes the selection condition unambiguous relative to its sibling.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
scan_folderA
Summarize a folder: what dominates it, how old everything is, and where the bulk sits.
Call this first. It returns a rollup rather than a file list, so it stays cheap on folders with tens of thousands of files. Follow with list_files to see individual files matching whatever the summary suggests is worth looking at.
Two things to keep in mind. Size does not imply disposability: large media is often what the user most wants to keep, so age matters more than size. And files matching identity, legal, tax, or medical naming are counted here but marked protected; never suggest removing them.
Cloud-synced folders, system folders, app bundles, and build directories are excluded; the output reports how many were skipped.
path: absolute path to the folder, for example /Users/you/Downloads max_depth: how many levels of subfolder to descend. Default 3.
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | ||
| max_depth | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations present, the description carries full behavioral disclosure. It states the tool returns an aggregated rollup, remains cheap for large folders, skips specific folder types and reports how many were skipped, and counts protected files without exposing them as removable. This goes well beyond the input schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is efficient, with the primary purpose captured in a single opening sentence, added guidance in short dense paragraphs, and parameter documentation at the end. Every sentence contributes a concrete behavioral or usage detail; there is no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema exists and sibling list_files is named, the description provides all necessary context: when to invoke it, what to do after, what is excluded, how protected files are handled, and full parameter semantics. An agent has enough to select and invoke it correctly without further inference.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate fully, and it does. It explains path with a realistic example and describes max_depth as 'how many levels of subfolder to descend' along with its default, which gives an agent actionable meaning beyond the bare schema types.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Starts with a specific verb-resource pairing, 'Summarize a folder', and names what is summarized: what dominates, how old the contents are, and where data sits. It also distinguishes itself from the sibling list_files by stating it returns a rollup rather than a file list, so an agent can tell which tool fits.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description is explicit: 'Call this first' and 'Follow with list_files' to inspect what the summary flags. It also gives rejection criteria — protected files should never be suggested for removal and certain folders are excluded — making usage boundaries and downstream actions clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
2 tool updates
v0.1.0- First observed
list_files - First observed
scan_folder
TDQS
Scored across 2 tools
scan_folder and list_files have cleanly distinct purposes: one summarizes the whole folder, the other enumerates specific files. They form a clear two-step workflow with no boundary ambiguity.
Question: scan_folder and list_files both follow a predictable verb_noun snake_case pattern, with imperative verbs and noun objects. Naming styles are perfectly aligned across both tool names.
Question: two tools is a bit below the typical robust set size, but for a metadata-only folder inspector the prior pair covers the two natural tasks at equal scope, so the count is reasonable.
The domain is folder inspection, and the set covers both approximate information: list_files lets you go from a summary clue to the difficult actual matching set. The two tools form a complete read-only scanning lifecycle.
Maintenance
Related MCP Connectors
Read and search folders on your own computer with explicit consent. Files are never uploaded.
Your own computer's files from ChatGPT or Claude: folder rules, confirmations and undo.
1Safe folder access for ChatGPT and Claude: read, write and search files, risky tools opt-in.
Search photos and video moments by visual meaning, people, dates, and folders across local libraries, Apple Photos, and OneDrive. Manage collections, groups, favorites, people, and duplicate review. Synced metadata remains searchable while the desktop is offline; local and Apple Photos media access needs the owning device online with remote access enabled. OneDrive media can be accessed directly from the cloud. OAuth or Bearer API keys. Paid Cloud Access required; hosted visual search uses prepaid credits. Text-in-image search is semantic matching, not guaranteed exact OCR. Setup: https://organizewith.ai/en/guides/connect-ai-assistants
Related MCP Servers
- AlicenseBqualityCmaintenanceEnables read-only analysis of local disk usage to identify cleanup targets by size, type, recency, and duplicates.68 npm1MIT
- AlicenseAqualityCmaintenanceEnables real-time Windows storage analysis, deep folder scanning, safety tiering, and protected cleanup operations through natural language.41MIT
- FlicenseAqualityCmaintenanceEnables read-only analysis of local unstructured documents by scanning a folder, extracting text and structural metadata, and passing content with truncation and error-awareness to an LLM for summarization.91-
- FlicenseNot gradedqualityCmaintenanceEnables local folder analysis of unstructured documents (PDF, DOCX, PPTX, TXT, SVG, PNG, CSV, XLSX) by extracting structure, reading content, and generating reports, with a strict approval gate before any save operation.-