文件管理系统

一个基于Python的文件管理系统,利用模型上下文协议(MCP)安全地组织和跨目录管理文件。

  • by diganto-deb
  • Python
  • 本地部署
  • 5 星标
  • 更新于
在 GitHub 查看 diganto-deb/local_file_organizer

使用说明

本地文件管理器

一个基于Python的文件组织系统,利用模型上下文协议(MCP)跨目录安全地组织和管理文件。

概述

该项目使用模型上下文协议(MCP)框架实现了一个文件组织系统,以:

  1. 通过强大的权限检查安全访问用户指定的目录
  2. 按类型自动将文件组织到分类目录中
  3. 在允许的目录中搜索文件
  4. 分析目录内容并提供详细的文件信息

主要特点

  • 目录安全性:仅在明确允许的目录上操作
  • 智能分类:按扩展名将文件组织到类别中:
    • 文档(PDF、DOC、DOCX、TXT、RTF、MD、HTML、JSON、CSV等)
    • 图像(JPG、PNG、GIF、SVG、WEBP、HEIC等)
    • 视频(MP4、MOV、AVI、MKV等)
    • 音频(MP3、WAV、OGG、FLAC等)
    • 档案 (ZIP, RAR, 7Z, TAR 等)
    • 代码(PY、JS、HTML、CSS、Java等)
    • 应用程序(DMG、EXE、MSI等)
    • 其他(未分类的文件类型)
  • 项目检测:标识项目目录以避免中断代码存储库
  • 递归处理:可以分析和组织嵌套目录结构
  • 资源利用率:针对大型目录结构的性能进行了优化
  • 详细分析:按类型提供文件分发的见解

安装

# Clone the repository
git clone https://github.com/diganto-deb/local_file_organizer.git
cd local_file_organizer

# Install requirements
pip install -r requirements.txt

用法

1.配置允许的目录

创建或修改 .cursor/mcp.json 项目目录中的文件:

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-filesystem",
        "/path/to/organize/dir1",
        "/path/to/organize/dir2"
      ]
    }
  }
}

将路径替换为您希望允许MCP服务器访问的目录。

2.启用MCP服务器

配置后 .cursor/mcp.json 文件:

  1. 重新启动游标
  2. 打开光标设置(⚙️)
  3. 引导到 MCP
  4. 你应该看看 filesystem MCP服务器列表中的服务器
    • 服务器应该以“文件系统”的名称出现。
  5. 通过单击服务器名称旁边的切换开关启用它

3.使用文件组织命令

启用MCP服务器后,您可以直接在Cursor的代理中使用文件组织命令:

# List all available categories
list_categories

# Analyze a directory without making changes
analyze_directory /path/to/directory

# Create category folders in a target directory
create_category_directories /path/to/target

# Organize files by type
organize_files /path/to/directory

# Search for files
search_files /path/to/directory "*.jpg"

技术实现

该系统使用:

  • MCP Python SDK:用于核心服务器实现
  • 文件系统MCP服务器:用于安全的文件操作
  • Pathlib:用于跨平台路径处理
  • 类型注解:提高代码质量和IDE支持

计划的功能

计划在即将发布的版本中提供以下功能:

  1. 文件写入和编辑功能:添加以下功能:
    • 直接修改文件内容
    • 使用模板创建新文件
    • 使用模式批量重命名文件
    • 编辑文件元数据

贡献

欢迎投稿!请随时提交拉取请求。

许可证

此项目根据MIT许可证获得许可-有关详细信息,请参阅许可证文件。

致谢

  • 模型上下文协议(MCP)团队
  • 用于MCP集成的游标IDE