Skip to main content
Glama
tjws

disk-cleanup

by tjws

mcp-disk-cleanup

Lokaler MCP-Server für Festplatten-Bereinigungsscans (stdio-Transport, kein API-Key, keine Internetverbindung, rein lesender Scan).

Lassen Sie MCP-fähige Clients wie Qoder / Qodo / Claude / Cursor direkt für Sie die Festplatte scannen, große Dateien, doppelte Dateien, Dateien mit Junk-Endungen und lange nicht mehr aufgerufene Dateien finden und eine Aufräumliste erstellen – nur auflisten, nicht löschen.

Verfügbare Tools

Tool

Status

Beschreibung

scan_large

✅ verfügbar

Listet Dateien über dem Schwellenwert auf, absteigend nach Größe

scan_duplicates

✅ verfügbar

Findet doppelte Dateien anhand des Inhalts-Hash

scan_by_ext

✅ verfügbar

Scannt nach Dateiendungen (.tmp/.log/.cache…)

scan_old

✅ verfügbar

Scannt Dateien, die lange nicht geändert wurden

summarize

✅ verfügbar

Verzeichnis-Zusammenfassung: Gesamtgröße/Dateianzahl/Typanteile

Related MCP server: redis-mcp

Lokale Einbindung (Entwicklungsphase)

Fügen Sie in der mcp.json des Clients einen Eintrag hinzu, der auf den lokalen venv-Interpreter verweist:

{
  "mcpServers": {
    "disk-cleanup": {
      "command": "E:/pycharm/mcp-disk-cleanup/.venv/Scripts/python.exe",
      "args": ["E:/pycharm/mcp-disk-cleanup/server.py"]
    }
  }
}

Einbindung nach der Veröffentlichung (PyPI / uvx)

{
  "mcpServers": {
    "disk-cleanup": {
      "command": "uvx",
      "args": ["mcp-disk-cleanup"]
    }
  }
}

Lokale Ausführung / Debugging

.venv/Scripts/python.exe server.py
# 或用官方 Inspector 可视化调试:
npx @modelcontextprotocol/inspector .venv/Scripts/python.exe server.py

Sicherheit

  • Alle Tools führen nur lesende Scans durch; sie löschen, verschieben oder ändern keine Dateien.

  • Löschaktionen sind standardmäßig nicht freigeschaltet; wenn Sie aufräumen möchten, bestätigen Sie die Aktion anhand der Scanliste manuell und führen Sie sie dann aus.

Available Tools

5 tools
scan_by_extB

按文件后缀扫描(默认扫常见垃圾后缀 .tmp/.log/.cache/.bak/.old)。

ParametersJSON Schema
NameRequiredDescriptionDefault
dirsYes要扫描的一个或多个目录绝对路径
extsNo目标后缀列表,可自定义,如 [".tmp", ".log"]

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states the scanning criterion and default extensions; it does not mention recursion, read-only behavior, symbolic link handling, or what the scan actually returns. For an agent, this is a notable gap in understanding side effects and scope.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single front-loaded sentence with no filler. It immediately conveys the action and scope, so it earns full marks for conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With only 2 parameters, 100% schema coverage, and an output schema present, the description plus schema covers the fundamental inputs and defaults. Still, the lack of behavioral context (e.g., recursion, non-modification) and alternative routing leaves some ambiguity for an agent deciding whether this tool fits.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%: both dirs and exts have explicit descriptions, and exts includes the same default list. The tool description adds no new semantic meaning beyond the schema; it essentially restates the default extensions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb and resource: '按文件后缀扫描' (scan by file extension) and lists the default junk extensions. It is unambiguous in its main function, though it does not explicitly mention sibling tools to distinguish itself from scan_large, scan_duplicates, scan_old, or summarize.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The default suffix list (.tmp/.log/.cache/.bak/.old) implies a cleanup/junk-file use case, which provides some contextual guidance. However, the description gives no explicit direction on when to prefer this tool over alternatives like scan_large or scan_old, and no exclusion criteria are stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

scan_duplicatesA

按内容 hash 找出重复文件,按重复组返回(含可释放空间估算)。

先按文件大小初筛,仅对"大小相同"的文件做内容 hash,性能更友好。

ParametersJSON Schema
NameRequiredDescriptionDefault
dirsYes要扫描的一个或多个目录绝对路径
min_size_mbNo仅考虑大于此大小(MB)的文件,默认 1

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

在没有任何 annotations 的情况下,描述额外披露了内部执行逻辑:先按文件大小初筛,只对大小相同的文件做内容 hash,并说明这是为了性能更友好。这比单纯的 '扫描重复文件' 提供了更多行为预期。

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

描述只有两句话,第一句直接说明结果形式和核心功能,第二句补充关键算法优化,信息密度高且没有冗余。可释放空间估算和性能提示都服务于调用决策。

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

有输出 schema,因此返回结构不需要额外解释。描述覆盖了功能、输出形式、性能行为和基本输入场景,整体足够完整;唯一略缺的是与兄弟工具的显式对比。

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

输入 schema 覆盖了全部参数(dirs、min_size_mb),描述本身没有新增参数语义。按照 schema_description_coverage 100% 的基线,评为 3 分是合适的。

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

描述明确说明了工具行为:按内容 hash 查找重复文件,并按重复组返回且附带可释放空间估算。它与 scan_large、scan_by_ext 等兄弟工具形成清晰区分,核心是 'duplicate' 而不是大小、扩展名或旧文件。动词和资源都具体,意图一目了然。

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

描述隐含了使用场景:当需要查找重复文件并估算可释放空间时使用。但没有显式说明何时不应使用本工具,或与其他 scan_* 兄弟工具的替代关系,缺乏明确的选择边界。

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

scan_largeA

列出指定目录下体积大于 min_mb MB 的文件,按大小降序返回前 top_n 个。

ParametersJSON Schema
NameRequiredDescriptionDefault
dirYes要扫描的目录绝对路径(如 E:/pycharm/PythonProject)
top_nNo最多返回的文件数,默认 50
min_mbNo仅列出大于此大小(MB)的文件,默认 100

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It does disclose the filter threshold, sorting order, and result cap, which are useful. However, it does not clarify whether the scan is recursive or only top-level, what file types are included, or how errors/permission issues are handled. These are meaningful ambiguities for a directory scan tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence conveys the core behavior with no filler. The filter, sort direction, and result count are all included in a compact and readable structure. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The presence of an output schema means return value details are covered elsewhere. However, the description lacks important contextual details such as whether subdirectories are scanned recursively, and it gives no guidance on when to prefer sibling scan tools. For a tool that does one focused task, this is adequate but not fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents dir, top_n, and min_mb. The description adds a little value by tying min_mb and top_n into the behavior (filter and limit), but it does not provide additional semantics beyond what the schema already states. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

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 specific resource (files in a directory larger than min_mb MB), and adds distinguishing behavior: sort by size descending and return top_n. This clearly separates it from sibling scan tools such as scan_duplicates, scan_by_ext, and scan_old.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly implies when to use it: when you need to find the largest files in a directory. However, it does not explicitly compare against sibling tools or state when not to use it, such as when scanning for duplicates, extensions, or old files. No exclusions or alternatives are mentioned, leaving the routing to the agent's inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

scan_oldB

扫描多久未修改过的文件(默认 90 天)。

ParametersJSON Schema
NameRequiredDescriptionDefault
daysNo修改时间早于该天数的文件会被列出,默认 90
dirsYes要扫描的一个或多个目录绝对路径

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the behavioral burden. It communicates the key behavior: files are selected based on modification time older than a configurable number of days. However, it does not mention whether the operation is read-only, how errors or missing directories are handled, or any other scan behavior, leaving some ambiguity.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single short sentence with no filler. It is front-loaded with the action and subject, and the default value is included as a helpful parenthetical.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-parameter tool with an output schema, the description is mostly sufficient for basic invocation. It falls short on contextual completeness because it fails to explain when to use this tool over its siblings and does not describe any edge-case behavior or expectations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents both parameters. The description adds a default value that is also present in the schema, and it clarifies the meaning of 'old' in terms of modification time, but it does not add substantial semantic value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific action (scan) and resource (files not modified), with an explicit time criterion and default (90 days). It is clear enough to distinguish from sibling tools like scan_large or scan_by_ext, though it does not explicitly name the distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus the sibling tools scan_large, scan_duplicates, scan_by_ext, or summarize. The description only explains what it does, not when it should be selected or when an alternative would be better.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

summarizeB

目录体检:总大小、文件数、按类型(后缀)占比 Top10。

ParametersJSON Schema
NameRequiredDescriptionDefault
dirYes要体检的目录绝对路径

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations are absent entirely, so the description carries the full behavioral burden. It does disclose what the tool computes (total size, file count, top-10 by extension), which is useful. However, it does not explicitly state that the operation is read-only/non-destructive, nor does it mention recursion scope or performance implications on large trees; '体检' only implies inspection.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One short sentence that is densely informative and front-loaded with the purpose. Every element — total size, file count, top-10 extension ratio — earns its place, with zero filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a low-complexity, single-parameter tool with an existing output schema, the description covers the core behavior adequately. The gaps are meaningful but not severe: no tool-selection guidance against the scan siblings, and no explicit non-destructive/safety disclosure given the absence of annotations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%: the sole param 'dir' is already documented as a required absolute path in the schema. The description adds nothing new about the parameter, but none is needed at full coverage. Baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb-action ('目录体检' directory checkup) and resource (directory), and enumerates concrete outputs: total size, file count, and top-10 extension share. This distinguishes it from the scan siblings in terms of aggregation level, though it never explicitly calls out the overlap with scan_by_ext.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus alternatives. The sibling tools scan_large, scan_duplicates, scan_by_ext, and scan_old are all plausible competitors, and an agent is given no criteria for choosing summarize over, say, scan_by_ext when extension breakdowns matter.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

A3.6/5.0
Disambiguation5/5

Each tool targets a uniquely identifiable scan dimension: large files, duplicates, extension-based, old files, and summary. Even the four scan_* tools are clearly distinct by their filtering criteria, leaving no real ambiguity for an agent.

Naming Consistency4/5

The scan_* prefix creates a predictable pattern for the four scanning tools, and the criterion is clear in each name. summarize deviates from the prefix pattern but is still a sensible, readable action name rather than a random inconsistency.

Tool Count5/5

Five tools is well-scoped for a disk cleanup helper: the main scan dimensions are covered, and there is no redundant bloat. The set feels complete enough to be useful without overwhelming an agent.

Completeness2/5

The server can identify cleanup candidates but offers no cleanup action such as delete or move-to-trash, so an agent cannot complete an actual disk cleanup workflow. This is a significant functional gap given the server name and stated purpose.

Maintenance

ActivityMaintained
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    B
    maintenance
    Read-only MCP server that wraps WizTree's CSV export and adds disk-usage analysis tools, enabling file system scanning and analysis via natural language.
    6
    3
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Enables exploring and diagnosing a Redis instance from MCP clients with read-only safety, using SCAN instead of KEYS for safe key enumeration.
    7
    365
    1
    MIT
  • F
    license
    Not graded
    quality
    B
    maintenance
    Enables AI agents to clean disk space by scanning and removing temporary files, caches, and duplicates through natural language commands via MCP protocol.
    1

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/tjws/mcp-disk-cleanup'

If you have feedback or need assistance with the MCP directory API, please join our Discord server