mcpField
F
Filesystem MCP Server SSE

Filesystem MCP Server SSE

本地服务
github.com/ysthink文件与存储1775 周前更新

关于 Filesystem MCP Server SSE

Filesystem MCP Server SSE 是一个基于 Node.js 的 MCP 服务,可在指定目录中读取和管理文件。它通过 SSE 提供文件系统操作,并将访问限制在启动时配置的目录内。

主要功能

  1. 01读取和写入文件
  2. 02创建、列出和删除目录
  3. 03移动文件和目录
  4. 04搜索路径并查看元数据
  5. 05预览编辑并生成差异

适用场景

  1. 01通过 MCP 客户端读取或更新项目文件
  2. 02在允许的目录中搜索匹配文件
  3. 03应用前检查文件编辑内容

MCP 相关

它通过 SSE 向 MCP 客户端提供文件系统资源和工具,包括文件读写、编辑、目录管理、搜索及元数据查询。操作范围仅限启动时配置的目录。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"Filesystem-MCP-Server-SSE": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"build"
]
}
}
}
启动命令docker run -i --rm build

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
ocibuild

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

MseeP.ai Security Assessment Badge

Filesystem MCP 服务 SSE

使用 Node.js 实现的服务器 SSE,为文件系统操作实现 Model Context Protocol(MCP)。

功能

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

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

API

资源
  • file://system:文件系统操作接口
工具
  • read_file

    • 读取文件的完整内容
    • 输入:path(string)
    • 使用 UTF-8 编码读取文件的完整内容
  • read_multiple_files

    • 同时读取多个文件
    • 输入:paths(string[])
    • 读取失败不会中止整个操作
  • write_file

    • 创建新文件或覆盖现有文件(请谨慎使用)
    • 输入:
      • path(string):文件位置
      • content(string):文件内容
  • edit_file

    • 使用高级模式匹配和格式处理进行选择性编辑
    • 功能:
      • 按行和跨多行匹配内容
      • 规范化空白并保留缩进
      • 同时执行多个编辑并确保位置正确
      • 检测并保留缩进样式
      • 输出带上下文的 Git 风格差异
      • 使用试运行模式预览更改
    • 输入:
      • path(string):要编辑的文件
      • edits(array):编辑操作列表
        • oldText(string):要搜索的文本(可以是子字符串)
        • newText(string):要替换成的文本
      • dryRun(boolean):预览更改但不应用(默认值:false)
    • 试运行时返回详细的差异和匹配信息,否则应用更改
    • 最佳实践:应用更改前,务必先使用 dryRun 预览更改
  • create_directory

    • 创建新目录或确保目录存在
    • 输入:path(string)
    • 如有需要,会创建父目录
    • 如果目录已存在,则静默成功
  • list_directory

    • 使用 [FILE] 或 [DIR] 前缀列出目录内容
    • 输入:path(string)
  • move_file

    • 移动或重命名文件和目录
    • 输入:
      • source(string)
      • destination(string)
    • 如果目标已存在,则操作失败
  • search_files

    • 递归搜索文件/目录
    • 输入:
      • path(string):起始目录
      • pattern(string):搜索模式
      • excludePatterns(string[]):要排除的模式。支持 Glob 格式。
    • 不区分大小写
    • 返回匹配项的完整路径
  • get_file_info

    • 获取文件/目录的详细元数据
    • 输入:path(string)
    • 返回:
      • 大小
      • 创建时间
      • 修改时间
      • 访问时间
      • 类型(文件/目录)
      • 权限
  • list_allowed_directories

    • 列出服务器获准访问的所有目录
    • 无需输入
    • 返回:
      • 此服务器可读写的目录

在 Cherry Stdio Desktop 中使用

注意:可通过将沙盒目录挂载到 /projects,将其提供给服务器。添加 ro 标志会使服务器对该目录具有只读权限。

Docker

注意:默认情况下,所有目录都必须挂载到 /projects。

1. Docker 构建:
docker build -t mcp/filesystem -f Dockerfile .
2. Docker 运行:
docker run -i --mount type=bind,src=type=bind,src=/path/to/other/allowed/dir,dst=/projects/other/allowed/dir,ro -p 3001:3001 mcp/filesystem /projects
3. 配置:
{
  "mcpServers": {
    "file_system": {
      "name": "file_system",
      "baseUrl": "http://ip:3001/sse"
    }
  }
}
本地
1. 构建:
npm install
2. 运行:
node .\dist\index.js C:\Users\User\Desktop\project

允许的目录:C:\Users\User\Desktop\project

3. 配置:
{
  "mcpServers": {
    "file_system": {
      "name": "file_system",
      "baseUrl": "http://127.0.0.1:3001/sse"
    }
  }
}

许可证

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

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。