article
README
🚀 文件系统 MCP 服务器
文件系统 MCP 服务器是基于 FastMCP 构建的现代化文件管理系统。它具备丰富的文件与目录操作功能,能满足常见的文件管理需求。同时,系统信息部分还可提供计算机硬件、存储设备及目录统计等信息。
🚀 快速开始
依赖项安装
安装所需的 Python 包,在终端中执行以下命令:
pip install -r requirements.txt
配置设置
- 配置 Claude
- 编辑
claude_desktop_config.json文件。 - 添加以下内容:
{ "file_system_tools": { "command": "/usr/bin/python3", "args": [ "/path/to/fs_server.py" ] } }- 保存文件并重启 Claude。
- 编辑
✨ 主要特性
- 丰富的文件和目录操作:支持复制、移动、删除文件,读取和写入文件内容,获取文件信息、搜索文件,创建和删除目录,列出目录内容等功能。
- 多平台支持:支持 Windows、macOS 和 Linux 系统。
- 详细的系统信息:可提供计算机硬件、存储设备和目录统计信息。
- 完善的错误处理:所有操作均带有详细的错误捕获和日志记录机制,提供统一的异常处理接口。
- 安全保障:文件操作默认启用路径验证功能,系统信息检索经过严格的安全审查。
📦 安装指南
安装 Python 包
pip install -r requirements.txt
💻 使用示例
文件操作
copy_file:复制文件,可选是否创建备份。move_file:移动文件,可选是否创建备份。delete_file:安全删除文件(带确认机制)。read_file:读取文件内容并返回字符串。write_file:将内容写入文件。get_file_info:获取文件详细信息。search_files:根据名称搜索文件。create_collection:创建文件集合。
目录操作
list_directory:列出目录内容。create_directory:创建新目录。delete_directory:删除目录。list_directory_recursively:以树状格式显示目录结构。search_directories:根据名称搜索目录。
系统信息
get_system_info:获取系统硬件和软件信息。get_disk_info:获取磁盘使用情况。get_directory_info:获取目录统计信息。
📚 详细文档
平台支持
Windows
- 支持所有 Windows 操作系统版本。
- 提供完整的文件和目录操作功能。
- 支持驱动器列表显示和路径处理。
macOS/Linux
- 支持 macOS 和 Linux 系统。
- 提供基本的文件和目录操作功能。
- 部分与平台相关的功能可能受限。
未来计划
功能开发路线图
-
第一阶段:基本的跨平台兼容性改进
- 完善文件路径处理逻辑。
- 提高系统信息检索的安全性和准确性。
- 修复已知问题,如文件删除失败和驱动器列表不完整的问题。
-
第二阶段:增强功能开发
- 实现平台间的统一错误处理机制。
- 增加对更多文件操作的路径验证。
- 开发新的系统信息检索接口。
-
第三阶段:扩展功能实现
- 引入驱动器映射和网络共享支持(适用于 Windows)。
- 增强目录树结构显示功能。
- 实现更高级的文件搜索算法。
项目结构
- README.md:项目介绍和使用说明
- LICENSE:MIT 许可证
- requirements.txt:Python 依赖项列表
- fs_server.py:主服务器文件
- schemas:Pydantic 数据验证模型
- tools:功能实现工具模块
🔧 技术细节
错误处理
- 所有文件和目录操作均带有详细的错误捕获和日志记录机制。
- 提供统一的异常处理接口,确保用户能够准确获取错误信息。
安全性
- 文件操作默认启用路径验证功能,防止恶意路径注入攻击。
- 系统信息检索经过严格的安全审查,确保不会泄露敏感信息。
📄 许可证
本项目遵循 MIT 许可证协议。请在使用和分发时遵守相关条款。
⚠️ 重要提示
已知问题
-
文件删除功能
delete_file函数在某些情况下可能无法正常工作,建议手动验证或使用其他方法进行删除。
-
驱动器列表功能
list_drives函数可能无法正确检测所有可用驱动器,部分驱动器可能会缺失或显示错误信息。
-
平台限制
- Windows 独有功能在 macOS/Linux 上不可用。
- 不同平台之间的路径处理和系统信息检索可能存在差异。
Scan to join WeChat group