article
README
🚀 Tafa MCP 服务器
Tafa(在几种非洲语言中意为“快速”)是一个可用于生产环境的模型上下文协议(MCP)服务器,它具备全面的文件系统管理能力,可与 Claude Desktop 无缝集成。
🚀 快速开始
你可以通过以下步骤快速安装并配置 Tafa MCP 服务器,以实现与 Claude Desktop 的无缝集成。
安装
快速安装(NPM)
npm install -g tafa-mcp
手动安装
git clone https://github.com/your-org/tafa-mcp.git
cd tafa-mcp
npm install
npm run install-global
配置
Claude Desktop 配置
将以下内容添加到你的 Claude Desktop 配置文件中:
- macOS/Linux:
~/.config/claude/claude_desktop_config.json - Windows:
%APPDATA%\claude\claude_desktop_config.json
{
"mcpServers": {
"tafa-mcp": {
"command": "tafa-mcp",
"args": [
"/Users/username/Documents",
"/Users/username/Desktop",
"/Users/username/Downloads"
]
}
}
}
Docker 配置
{
"mcpServers": {
"tafa-mcp": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"--mount", "type=bind,src=/Users/username/Documents,dst=/workspace/Documents",
"--mount", "type=bind,src=/Users/username/Desktop,dst=/workspace/Desktop",
"tafa-mcp",
"/workspace"
]
}
}
}
启动服务器
tafa-mcp /path/to/directory1 /path/to/directory2
✨ 主要特性
🗂️ 文件操作
- read_file - 以 UTF-8 编码读取完整的文件内容
- write_file - 创建新文件或覆盖现有文件(带备份)
- append_file - 向现有文件追加内容
- copy_file - 将文件复制到新位置
- move_file - 移动/重命名文件
- delete_file - 确认并备份后删除文件
- get_file_info - 获取详细的文件元数据(大小、日期、权限、哈希值)
📁 目录操作
- create_directory - 创建目录,可自动创建父目录
- list_directory - 列出目录内容,带有文件/目录标识(支持递归选项)
- delete_directory - 确认并备份后删除目录
- get_directory_info - 获取目录元数据和统计信息
🔍 搜索操作
- search_files - 递归搜索文件,支持模式匹配
- search_content - 在文件内容中搜索(类似 grep 的功能)
- find_duplicates - 通过内容哈希查找重复文件
🔒 安全特性
- 沙盒操作 - 仅允许在指定目录内进行操作
- 自动备份 - 在进行破坏性操作前创建备份
- 路径验证 - 防止目录遍历攻击
- 文件大小限制 - 防止对超大文件进行操作
- 权限检查 - 在操作前验证读写权限
📦 安装指南
快速安装(NPM)
npm install -g tafa-mcp
手动安装
git clone https://github.com/your-org/tafa-mcp.git
cd tafa-mcp
npm install
npm run install-global
💻 使用示例
与 Claude 配合使用示例
配置完成后,你可以使用 Claude 执行文件操作:
"Can you read the contents of my README.md file?"
"Please create a new file called notes.txt with some sample content"
"Search for all JavaScript files in my project directory"
"Find duplicate files in my Downloads folder"
📚 详细文档
可用工具
文件操作
read_file(path)- 读取文件内容write_file(path, content, backup=true)- 写入文件,可选备份append_file(path, content)- 向文件追加内容copy_file(source, destination)- 复制文件move_file(source, destination)- 移动/重命名文件delete_file(path, backup=true)- 删除文件,可选备份get_file_info(path)- 获取文件元数据
目录操作
create_directory(path)- 创建目录list_directory(path, recursive=false, showHidden=false)- 列出目录内容delete_directory(path, backup=true)- 备份后删除目录
搜索操作
search_files(directory, pattern, recursive=true)- 按文件名模式搜索文件search_content(directory, searchTerm, filePattern="*", recursive=true)- 搜索文件内容
实用工具
get_server_info()- 获取服务器信息和可用工具
安全措施
Tafa MCP 实施了多项安全措施:
- 目录沙盒:操作限制在指定目录内
- 路径验证:防止目录遍历攻击
- 权限检查:验证文件系统权限
- 文件大小限制:防止对超大文件进行操作(默认 100MB)
- 自动备份:在进行破坏性操作前创建备份
项目结构
tafa-mcp/
├── package.json
├── README.md
├── src/
│ ├── index.js # 主服务器入口点
│ └── tools/
│ ├── fileOperations.js # 文件操作处理程序
│ ├── directoryOperations.js # 目录操作处理程序
│ ├── searchOperations.js # 搜索操作处理程序
│ └── securityManager.js # 安全和验证
├── config/
│ └── claude_desktop_config.example.json
└── tests/
└── basic-tests.js
测试
运行基本测试:
npm test
贡献代码
- 分叉仓库
- 创建功能分支
- 进行更改
- 为新功能添加测试
- 提交拉取请求
许可证
本项目采用 MIT 许可证,详情请参阅 LICENSE 文件。
支持
如有问题或需要支持:
路线图
- [ ] 归档操作(ZIP/TAR)
- [ ] 文件同步
- [ ] 批量操作
- [ ] 文件组织工具
- [ ] Git 集成
- [ ] 扩展搜索功能
Tafa MCP - 为 Claude Desktop 提供快速高效的文件系统操作! 🚀
微信扫一扫