logo
0
0
WeChat Login
cnb<cnb@cnb.cool>
feat: 初始化文件管理 MCP Server,支持 16 个工具和批量操作

文件管理 MCP Server

一个基于 TypeScript 的 Model Context Protocol (MCP) 文件管理服务器,提供文件系统操作能力。

功能

Tools(工具)

基础操作

工具名描述
read_file读取文件内容(支持文本和二进制)
write_file写入/创建文件,自动创建父目录
list_directory列出目录内容(包含大小、时间等信息)
create_directory创建目录(支持递归创建)
delete_file删除文件
delete_directory删除目录(支持递归删除)
move_file移动/重命名文件或目录
copy_file复制文件或目录
get_file_info获取文件元信息(大小、时间、权限等)

批量操作(支持 Glob 模式)

工具名描述
batch_delete批量删除文件/目录(支持 dryRun 试运行)
batch_copy批量复制文件/目录到指定目录
batch_move批量移动文件/目录到指定目录
batch_read批量读取多个文件内容
batch_rename批量重命名(支持正则表达式)
batch_get_info批量获取文件/目录元信息

Glob 模式示例

模式匹配
*.txt当前目录下所有 txt 文件
src/**/*.jssrc 目录下所有 js 文件(递归)
**/*.md所有目录下的 md 文件
test?.logtest1.log, testA.log 等

Resources(资源)

资源名描述
current-directory当前工作目录信息
directory-structure工作目录顶层结构

安全特性

  • 路径遍历保护:所有路径操作限制在工作目录内
  • 文件大小限制:读取文件上限 10MB,防止内存溢出
  • 文本/二进制识别:自动识别文件类型并适当处理

安装与使用

安装依赖

npm install

编译

npm run build

启动

npm start

配置 MCP 客户端

在 Claude Desktop 或其他 MCP 客户端的配置文件中添加:

{ "mcpServers": { "filemanagermcp": { "command": "node", "args": ["/绝对路径/filemanagermcp/build/index.js"] } } }

项目结构

filemanagermcp/ ├── package.json ├── tsconfig.json ├── .gitignore ├── src/ │ └── index.ts # 核心源码 ├── build/ # 编译输出 └── node_modules/

技术栈

  • TypeScript 5.8 (ES2022, ES Module)
  • @modelcontextprotocol/sdk
  • Zod(参数验证)