Filesystem MCP Server

local-only server

The server can only run on the client’s local machine because it depends on local resources.

Integrations

  • Provides containerization for the filesystem MCP server, allowing secure access to specified directories through Docker mounts. The README includes Docker configuration examples.

  • The MCP server is implemented in Node.js, providing filesystem access capabilities through a standardized protocol.

文件系统 MCP 服务器

Node.js 服务器为文件系统操作实现模型上下文协议 (MCP)。

特征

  • 读/写文件
  • 创建/列出/删除目录
  • 移动文件/目录
  • 搜索文件
  • 获取文件元数据

注意:服务器只允许在通过args指定的目录内进行操作。

API

资源

  • file://system :文件系统操作接口

工具

  • 读取文件
    • 读取文件的完整内容
    • 输入: path (字符串)
    • 使用 UTF-8 编码读取完整的文件内容
  • 读取多个文件
    • 同时读取多个文件
    • 输入: paths (字符串[])
    • 读取失败不会停止整个操作
  • 写入文件
    • 创建新文件或覆盖现有文件(请谨慎操作)
    • 输入:
      • path (字符串):文件位置
      • content (字符串):文件内容
  • 编辑文件
    • 使用高级模式匹配和格式进行选择性编辑
    • 特征:
      • 基于行和多行的内容匹配
      • 保留缩进的空白规范化
      • 多个同时编辑且定位正确
      • 缩进样式检测和保存
      • 带有上下文的 Git 风格差异输出
      • 使用试运行模式预览更改
    • 输入:
      • path (字符串):要编辑的文件
      • edits (数组):编辑操作列表
        • oldText (字符串):要搜索的文本(可以是子字符串)
        • newText (字符串):要替换的文本
      • dryRun (布尔值):预览更改而不应用(默认值:false)
    • 返回试运行的详细差异和匹配信息,否则应用更改
    • 最佳实践:在应用更改之前,务必先使用 dryRun 预览更改
  • 创建目录
    • 创建新目录或确保其存在
    • 输入: path (字符串)
    • 如果需要,创建父目录
    • 如果目录存在,则静默成功
  • 列表目录
    • 列出带有 [FILE] 或 [DIR] 前缀的目录内容
    • 输入: path (字符串)
  • 移动文件
    • 移动或重命名文件和目录
    • 输入:
      • source (字符串)
      • destination (字符串)
    • 如果目标存在则失败
  • 搜索文件
    • 递归搜索文件/目录
    • 输入:
      • path (字符串):起始目录
      • pattern (字符串):搜索模式
      • excludePatterns (string[]):排除任何模式。支持 Glob 格式。
    • 不区分大小写的匹配
    • 返回匹配的完整路径
  • 获取文件信息
    • 获取详细的文件/目录元数据
    • 输入: path (字符串)
    • 返回:
      • 尺寸
      • 创建时间
      • 修改时间
      • 访问时间
      • 类型(文件/目录)
      • 权限
  • 列出允许的目录
    • 列出服务器允许访问的所有目录
    • 无需输入
    • 返回:
      • 该服务器可以读取/写入的目录

与 Claude Desktop 一起使用

将其添加到您的claude_desktop_config.json中:

注意:您可以通过将沙盒目录挂载到/projects来为服务器提供沙盒目录。添加ro标志将使服务器只读该目录。

Docker

注意:所有目录必须默认挂载到/projects

{ "mcpServers": { "filesystem": { "command": "docker", "args": [ "run", "-i", "--rm", "--mount", "type=bind,src=/Users/username/Desktop,dst=/projects/Desktop", "--mount", "type=bind,src=/path/to/other/allowed/dir,dst=/projects/other/allowed/dir,ro", "--mount", "type=bind,src=/path/to/file.txt,dst=/projects/path/to/file.txt", "mcp/filesystem", "/projects" ] } } }

NPX

{ "mcpServers": { "filesystem": { "command": "npx", "args": [ "-y", "@modelcontextprotocol/server-filesystem", "/Users/username/Desktop", "/path/to/other/allowed/dir" ] } } }

建造

Docker 构建:

docker build -t mcp/filesystem -f src/filesystem/Dockerfile .

执照

此 MCP 服务器采用 MIT 许可证。这意味着您可以自由使用、修改和分发该软件,但须遵守 MIT 许可证的条款和条件。更多详情,请参阅项目仓库中的 LICENSE 文件。

-
security - not tested
A
license - permissive license
-
quality - not tested

Node.js 服务器为文件系统操作实现模型上下文协议 (MCP)。

  1. Features
    1. API
      1. Resources
      2. Tools
    2. Usage with Claude Desktop
      1. Docker
      2. NPX
    3. Build
      1. License
        ID: s4jc7g4hn2