一个桌面MCP服务,提供工具来扫描、分析和清理垃圾文件,主要针对macOS进行了优化。
注意: 大部分清理工具(如cleanAppCaches、cleanTempFiles、cleanAppRemnants、smartCleanSystem)是专门为macOS设计和测试的。在其他系统上运行可能会导致无法正常工作或出现意外行为。
[Audit]工具跟踪操作。toolName)或自然语言查询(toolQuery)创建/更新任务。此服务器注册了多个可通过MCP协议调用的工具:
macOS 清理工具(针对macOS优化):
macOSWarning:如果在非macOS系统上运行,则显示警告。cleanAppCaches:清理各种应用程序缓存(用户缓存、保存的应用程序状态)。
dryRun(布尔值,默认:true),olderThan(整数,可选 - 天数)。cleanTempFiles:清理系统临时文件。
dryRun(布尔值,默认:true),olderThan(整数,可选,默认:7天)。cleanAppRemnants:扫描并清理卸载应用程序留下的配置/缓存文件。
appName(字符串,可选 - 部分名称匹配),dryRun(布尔值,默认:true)。smartCleanSystem:根据预定义级别执行系统清理(针对常见的垃圾位置)。
cleanLevel(枚举:"safe","normal","deep",默认:"safe"),dryRun(布尔值,默认:true)。跨平台工具(扫描、文件系统、操作系统):
cleanVSCodeExtensions:清理过时版本的VS Code(以及兼容编辑器如VSCodium、Cursor)扩展。
editorPath(字符串,可选 - 特定编辑器扩展路径,默认:扫描所有已知位置),dryRun(布尔值,默认:true)。reportVSCodeExtensions:生成报告列出可以清理的过时VS Code扩展。
editorPath(字符串,可选)。findLargeFiles:查找超过指定大小的文件。
path(字符串),minSize(整数,默认:100MB),maxDepth(整数,默认:3)。scanFullSystem:扫描整个系统的文件结构(尊重排除项)以报告空间使用情况。
excludePaths(字符串数组,可选),maxDepth(整数,默认:1_0)。scanDirectory:分析特定目录的内容和大小分布。
path(字符串),excludePaths(字符串数组,可选),maxDepth(整数,默认:10),includeSubdirs(布尔值,默认:true)。getFolderSize:计算并返回文件夹的总大小。
path(字符串)。listDirectory:列出指定路径下的文件和子目录。
path(字符串),showHidden(布尔值,默认:false)。findFiles:搜索与特定模式匹配的文件(支持通配符)。
path(字符串),pattern(字符串),maxDepth(整数,默认:5)。analyzeDirectory:提供目录内文件类型和大小分布的统计信息。
path(字符串),includeSubdirs(布尔值,默认:true)。getFileHash:计算文件的MD5、SHA1或SHA256哈希值。
path(字符串),algorithm(枚举:"md5","sha1","sha256",默认:"md5")。getFileType:检索基本文件信息,包括MIME类型。
path(字符串)。deletePath:删除指定的文件或文件夹(需要显式确认,对于危险路径有额外检查)。
path(字符串),confirm(布尔值,必须为true),dangerConfirm(布尔值,可选 - 对于潜在风险较大的删除操作)。checkPathExists:检查给定路径是否存在,并确定其是文件还是目录。
path(字符串)。getSystemType:返回操作系统标识符(例如,'darwin','win32','linux')。审计工具:
viewAuditLog:查看应用主日志文件(combined.log)中的最新几行。
lines(整数,默认:100,最大:1000)。clearAuditLog:删除主应用日志文件(combined.log)。需要确认。
confirm(布尔值,必须为true)。TrashCleaner_Scheduler工具)提供了功能以安排其他已注册工具的执行。
TrashCleaner_Scheduler_CreateTask:创建新的定时任务。
name,cronExpression。toolName(确切的工具名称,如"TrashCleaner_CleanAppCaches")或者 toolQuery(模糊描述,如"clean app caches")。toolParams,enabled。TrashCleaner_Scheduler_ListTasks:列出所有配置的定时任务及其状态。TrashCleaner_Scheduler_GetTaskDetails:通过ID获取特定任务的详细信息。TrashCleaner_Scheduler_UpdateTask:更新现有任务。可以修改名称、计划、目标工具(通过toolName或toolQuery)、参数和启用状态。TrashCleaner_Scheduler_EnableTask:启用已禁用的任务。TrashCleaner_Scheduler_DisableTask:禁用已启用的任务。TrashCleaner_Scheduler_DeleteTask:永久删除定时任务。TrashCleaner_Scheduler_RunTaskNow:手动触发任务立即执行。TrashCleaner_Scheduler_GetTaskHistory:检索任务的最近执行历史(成功/失败)。发布到npm后,您可以使用Bun或npm运行MCP服务器:
使用Bun:
bunx @childhoodandy/trash-cleaner-mcp-server
# 或自动安装
bunx -y @childhoodandy/trash-cleaner-mcp-server
使用npm:
npx @childhoodandy/trash-cleaner-mcp-server
# 或自动安装
npx -y @childhoodandy/trash-cleaner-mcp-server
# 克隆仓库
git clone <repository-url>
cd trash-cleaner-mcp-server
# 安装依赖(使用Bun)
bun install
bun start
src/utils/logger.ts。~/.trash-cleaner/schedules.json。(开发指南保持不变...)