使用说明
文件系统MCP
一个用于文件系统访问的本地、可定制的MCP(模型上下文协议)服务器——从官方的Anthropic实现中分叉出来,并扩展了额外的功能。
学分
该项目基于官方 @modelcontextprotocol/server-filesystem 包裹由 人类,根据原始存储库中的条款获得许可。原始代码库为通过MCP访问文件系统提供了一个安全、结构良好的基础。
为什么是这个叉子?
这个分叉的目标是用额外的工具和定制来扩展原始服务器,以供个人/本地使用,同时保持核心安全模型(允许的目录、路径验证)的完整性。
设置
1.安装依赖项
cd FilesystemMCP
npm install
2.建造
npm run build
3.配置Claude
在你的 claude_desktop_config.json,将文件系统服务器指向您的本地版本:
{
"mcpServers": {
"filesystem": {
"command": "node",
"args": [
"/path/to/FilesystemMCP/dist/index.js",
"/your/allowed/directory"
]
}
}
}
保存后重新启动Claude。
工具
文件管理
read_text_file/read_file--将文件内容读取为文本(支持head/tail)read_media_file--以base64格式读取图像或音频文件read_multiple_files--在一次调用中读取多个文件write_file— 创建 一个新文件。从不覆盖:如果path已存在,内容将自动保存为递增的文件名(name (1).ext,name (2).ext, ...),响应被标记为指向您的错误copy_lines_between_files/move_lines_between_files/append_to_file正确地将其合并。copy_file--在服务器端复制文件delete_file--永久删除文件create_directory--递归创建目录list_directory--列出目录内容list_directory_with_sizes--列出文件大小和排序directory_tree--递归JSON树视图move_file--移动或重命名文件search_files--基于Glob的递归文件搜索get_file_info--文件元数据(大小、时间戳、权限)file_stats--快速调整大小/行数/预览,无需完整阅读list_allowed_directories--显示已配置的允许路径
目标编辑(更喜欢这些 write_file 对于现有文件)
edit_file--行范围替换(每次调用多次编辑),返回git风格的diff,支持dryRunreplace_lines--直接替换已知的行范围(令牌效率比edit_file一旦你有了行号)insert_lines--在给定行号后插入内容delete_lines--删除行范围append_to_file--附加到文件末尾(始终安全,从不触及现有内容)
重组而不重写
copy_lines--复制一个行范围,并将副本插入到 相同 档案;原件保存move_lines--剪切一个线条范围并将其粘贴到 相同 档案;如果目标落在源范围内,则抛出copy_lines_between_files--将一个文件中的行范围复制到 不同的 文件(如果丢失则创建);源未触及move_lines_between_files--将一个文件中的行范围剪切成 不同的 档案;首先写入目标,只有成功后才会从源中删除块,因此失败的移动永远不会丢失数据
搜索
find_in_file--在一个文件中搜索短语(空白已标准化,因此换行短语仍然匹配);回报startLine/endLine用于链接到上述工具find_in_files--同样,递归遍历目录,使用glob过滤
JavaScript感知助手
list_js_functions--列出具有行范围的函数/类定义get_js_function/replace_js_function--按名称提取或替换命名函数(不需要知道行号)get_js_imports/replace_js_imports/add_js_import--检查或修改导入块
推荐工作流程
要从头开始构建新文件或组合其他地方的内容,而无需重写大块: write_file (或 append_to_file 在现有文件上)放置原始内容,然后 find_in_file 要定位行号,则 copy_lines/move_lines/copy_lines_between_files/move_lines_between_files 重组。达到 edit_file/replace_lines 只适用于小的、有针对性的更改——永远不要重写整个文件。
许可证
请参阅 原始存储库 有关许可证的详细信息。