项目简介

Cursor文件整理MCP服务器是一个基于Model Context Protocol (MCP) 的后端应用,旨在帮助用户自动化整理电脑Downloads文件夹中的文件。它通过文件类型识别,将不同类型的文件(如图片、文档、压缩包等)自动分类并移动到预先设定的目录,从而保持Downloads文件夹的整洁有序。该服务器设计为Cursor IDE的扩展,通过MCP协议与Cursor IDE进行通信,提供文件管理能力。

主要功能点

  • 自动化文件分类: 根据文件扩展名自动识别文件类型,并将其归类到预设的类别中。
  • 可配置的整理规则: 允许用户自定义文件分类规则,包括文件类型、目标文件夹等。
  • 实时文件监控: (根据描述)可能具备实时监控Downloads文件夹文件变动并自动整理的能力。
  • 多种文件类型支持: 支持图片、文档、压缩文件、代码文件、媒体文件、设计文件、数据库文件、字体文件等多种常见文件类型。
  • 文件操作: 提供列出目录、读取文件、写入文件、移动文件、创建目录等基础文件系统操作。

安装步骤

  1. 克隆仓库:
    git clone https://github.com/AlexanderVTr/cursor-mcp-file-organizer.git
    cd cursor-mcp-file-organizer
  2. 安装依赖:
    npm install
  3. 构建项目:
    npm run build

服务器配置

为了让Cursor IDE能够连接到此MCP服务器,您需要在Cursor IDE的MCP服务器设置中添加如下配置。请注意,这里的配置是JSON格式,用于告知Cursor客户端如何找到并连接到服务器,无需修改代码

{
  "mcpServers": {
    "file-organizer": {  // 服务器名称,可以自定义,用于在Cursor IDE中标识
      "url": "http://localhost:3001", // 服务器URL,如果服务器运行在本地默认端口,则无需修改
      "port": 3001,       // 服务器端口,默认为3001,与服务器实际运行端口一致
      "enabled": true,     // 启用此MCP服务器,设置为true表示启用
      "description": "文件整理MCP服务器" // 服务器描述,用于在Cursor IDE中显示
    }
  }
}

您还需要配置文件整理规则,编辑项目根目录下的 'mcp-config.json' 文件。您可以根据需要自定义要整理的文件类型、目标文件夹等。例如:

{
  "version": "1.0",
  "rules": {
    "downloads": {
      "path": "~/Downloads", // 监控的文件夹路径,默认为用户Downloads目录
      "organizeBy": {
        "images": {         // 文件类别名称,可以自定义
          "extensions": [".jpg", ".jpeg", ".png", ".gif", ".webp", ".svg"], // 此类别包含的文件扩展名
          "destination": "~/Downloads/Pictures" // 此类别文件的目标文件夹
        },
        "documents": {      // 另一个文件类别
          "extensions": [".pdf", ".doc", ".docx", ".txt"],
          "destination": "~/Downloads/Documents"
        },
        // ... 可以添加更多文件类别的规则
      }
    }
  }
}

基本使用方法

  1. 启动服务器: 在项目根目录下,运行以下命令启动MCP服务器:

    npm start

    服务器默认会在 'http://localhost:3001' 启动。

  2. 在Cursor IDE中使用: 启动服务器后,Cursor IDE应该能够自动连接到该MCP服务器。您可以通过Cursor IDE向服务器发送命令,例如,使用 'organizeFiles' 命令来整理Downloads文件夹的文件。

    例如,您可以在Cursor IDE的交互界面中发送如下命令 (这是一个假设的Cursor IDE命令示例,具体使用方式请参考Cursor IDE的文档):

    // 假设的Cursor IDE命令示例,用于触发文件整理
    await cursor.mcp.sendCommand("file-organizer", "organizeFiles", { path: "~/Downloads" });

    或者,您可以直接向服务器发送HTTP POST请求到 '/mcp' 端点,例如使用 'curl' 命令:

    curl -X POST -H "Content-Type: application/json" -d '{"command": "organizeFiles", "args": {"path": "~/Downloads"}}' http://localhost:3001/mcp

    其他可用的命令包括 'listDir', 'readFile', 'writeFile', 'moveFile', 'createDir',您可以根据需要使用这些命令进行文件操作。

信息

分类

数据库与文件