MCP只读文件系统
实现模型上下文协议的 Node.js 服务器,用于安全的只读文件系统操作,允许克劳德在指定目录内读取文件、列出目录、搜索文件和获取文件元数据。
服务介绍
只读文件系统 MCP 服务器
Node.js 服务器实现用于只读文件系统操作的 Model Context Protocol (MCP)。克隆自 modelcontextprotocol/server-filesystem。
功能
- 读取文件
- 列出目录
- 搜索文件
- 获取文件元数据
注意:服务器将仅允许在通过 args 指定的目录内进行操作。
API
资源
file://system: 文件系统操作接口
工具
-
read_file
- 读取文件的完整内容
- 输入:
path(字符串): 要读取的文件路径from(数字): 可选。开始读取的行号,默认为 0。to(数字): 可选。结束行号。如果未设置,则读取到文件末尾。
- 以 UTF-8 编码读取文件内容(全部或部分)
-
read_multiple_files
- 同时读取多个文件
- 输入:
paths(字符串数组) - 失败的读取不会停止整个操作
-
list_directory
- 列出带有 [FILE] 或 [DIR] 前缀的目录内容
- 输入:
path(字符串)
-
search_files
- 递归搜索文件/目录
- 输入:
path(字符串): 起始目录pattern(字符串): 搜索模式excludePatterns(字符串数组): 排除任何模式。支持 glob 格式。
- 不区分大小写的匹配
- 返回匹配项的完整路径
-
get_file_info
- 获取详细的文件/目录元数据
- 输入:
path(字符串) - 返回:
- 大小
- 创建时间
- 修改时间
- 访问时间
- 类型 (文件/目录)
- 权限
-
list_allowed_directories
- 列出服务器允许访问的所有目录
- 无需输入
- 返回:
- 该服务器可以从中读取/写入的目录
与 Claude Desktop 的使用
将以下内容添加到您的 claude_desktop_config.json 中:
注意:您可以通过将它们挂载到 /projects 来向服务器提供沙箱化的目录。添加 ro 标志会使目录对服务器来说是只读的。
NPX
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": [
"-y",
"@danielsuguimoto/readonly-server-filesystem",
"/Users/username/Desktop",
"/path/to/other/allowed/dir"
]
}
}
}
许可证
此 MCP 服务器根据 MIT 许可证授权。这意味着您可以自由地使用、修改和分发该软件,但需遵守 MIT 许可证的条款和条件。更多详情,请参阅项目仓库中的 LICENSE 文件。