关于 Filesystem MCP Server (@shtse8/filesystem-mcp)
Filesystem MCP Server 是一款已归档的文件系统 MCP 服务,面向需要在项目目录内读取和修改文件的 Agent。它提供批量操作,并将路径限制在启动时指定的工作目录中。
主要功能
- 01批量读取和写入文件
- 02应用差异并替换内容
- 03正则搜索文件
- 04管理目录与文件
- 05将操作限制在工作目录
适用场景
- 01批量查看项目文件
- 02跨文件执行代码修改
- 03在项目目录中搜索内容
MCP 相关
它通过 MCP 工具提供文件读取、写入、搜索和管理操作;路径限制在服务启动时的工作目录内。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Filesystem MCP — 已归档
已归档/非主推产品
此产品不是活跃的 Sylphx Agent 工具。
请优先选择独立产品:Citra、Iris、Cue、Prism、Spine、Lookout。
历史源码仅供参考。请勿将下方的 npm/Docker 徽章或安装行动号召视为当前安装依据。
历史 README(已归档产品)
Filesystem MCP
你的 Agent 操作了代码仓库。它还在项目里吗?
为 AI Agent 提供安全、节省 token 的文件系统操作——批量读取、精准编辑,并将操作限制在项目根目录内,无需承受启动 shell 的开销。
批量操作 · 项目根目录安全 · Zod 验证 · 13 个 MCP 工具 · 支持 Docker
⭐ 为此仓库点星,让 Agent 能安全地读取和编辑你的代码库,而不是为每个文件都启动 shell。 · 快速开始 · 查看运行效果 · 为什么不用 shell 命令? · 路线图
问题所在
Agent 需要访问文件系统,才能读取代码、应用编辑并搜索代码仓库。默认方式是使用shell 命令——每项操作都要启动一次进程,无法批量处理,还要解析 stderr,并且路径可能超出项目范围。
这会消耗 token、增加延迟,还会让每次文件操作都变成一次信任考验。
Filesystem MCP 专为 Agent 需要快速、受限且便于批量处理的文件操作而打造,所有操作都限制在项目根目录内。
为什么不用 shell 命令?
| 每个文件都用 shell 命令 | Filesystem MCP |
|---|---|
| 每次启动进程只执行一项操作 | 一次 MCP 调用即可批量处理 10 个以上的文件 |
| 可访问完整 shell | 操作限制在启动时的服务 cwd 目录内 |
| 需要解析 stderr | 以结构化 JSON 返回每项操作的成功或失败状态 |
| token 往返开销高 | 减少主机↔服务调用次数 |
| 存在路径遍历风险 | 仅支持相对路径;禁止路径遍历 |
| 没有 schema | 每个工具的参数都经过 Zod 验证 |
完整的基准测试说明:docs/benchmark.md。
查看运行效果
配置一次,即可在一次调用中读取多个文件。
claude mcp add filesystem -- npx @sylphx/filesystem-mcp
{
"paths": ["src/index.ts", "package.json", "README.md"]
}
read_content 会在一次响应中返回每个文件的结果:
{
"results": [
{ "path": "src/index.ts", "content": "...", "success": true },
{ "path": "package.json", "content": "...", "success": true },
{ "path": "README.md", "content": "...", "success": true }
]
}
**重要:**启动 MCP 服务时,请将 cwd 设置为项目根目录。所有路径都相对于该目录。
Agent 为什么会使用它
| 需求 | 可获得的功能 |
|---|---|
| 读取多个文件 | read_content — 批量指定路径,可选行范围 |
| 写入或追加 | write_content — 每次调用可处理多个文件 |
| 精准编辑 | apply_diff、replace_content — 差异输出和逐文件状态 |
| 搜索目录树 | search_files — 使用正则表达式并提供上下文 |
| 跨文件重构 | replace_content — 多文件搜索与替换 |
| 浏览结构 | list_files — 递归列出文件,可选统计信息 |
| 移动/复制/删除 | move_items、copy_items、delete_items |
| 权限 | chmod_items、chown_items |
| 检查元数据 | stat_items、create_directories |
快速开始
Claude Code
claude mcp add filesystem -- npx @sylphx/filesystem-mcp
请从项目目录运行,以便 cwd 指向仓库根目录。
Claude Desktop/任何 MCP 主机
{
"mcpServers": {
"filesystem-mcp": {
"command": "npx",
"args": ["@sylphx/filesystem-mcp"]
}
}
}
将主机的工作目录设为项目根目录。
Docker
{
"mcpServers": {
"filesystem-mcp": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-v", "/path/to/your/project:/app",
"sylphx/filesystem-mcp:latest"
]
}
}
}
本地开发
git clone https://github.com/SylphxAI/filesystem-mcp.git
cd filesystem-mcp
bun install
bun run build
bun run test
MCP 工具一览
| 工具 | 在 Agent 需要以下操作时使用…… |
|---|---|
read_content | 读取一个或多个文件(可选行范围) |
write_content | 写入或追加文件内容 |
apply_diff | 跨文件应用结构化差异 |
search_files | 使用正则表达式搜索并显示上下文行 |
replace_content | 多文件搜索与替换 |
list_files | 列出目录树(可选统计信息) |
stat_items | 获取文件/目录的详细元数据 |
create_directories | 创建目录(包括父目录) |
delete_items | 删除文件或目录 |
move_items | 移动或重命名项目 |
copy_items | 复制文件或目录 |
chmod_items | 更改 POSIX 权限 |
chown_items | 更改所有权 |
发布验证
相关声明由 CI benchmark:release-gate、安全测试语料库和已发布路径矩阵(主要工具默认使用 Rust)提供支持。
bun run benchmark:release-gate
构件:benchmark-artifacts/filesystem_release_gate.json — 发布前必须报告 status: passed。
性能基准测试
在已发布的 Rust CLI 路径上复现本地吞吐量:
bunx vitest bench __tests__/benchmarks/throughput.bench.ts --run
有关测试场景、设计目标以及结果解读方法,请参阅 docs/benchmark.md。
安全模型
- 所有操作都限制在服务启动时的
cwd中。 - 拒绝绝对路径;阻止路径遍历。
- Zod 模式会验证每个工具参数。
- 批处理工具会返回逐项状态 — 一项失败不会掩盖其余结果。
文档
| 主题 | 链接 |
|---|---|
| 文档站点 | sylphxai.github.io/filesystem-mcp |
| 介绍 | docs/guide/introduction.md |
| 基准测试 | docs/benchmark.md |
开发
bun run validate # lint + typecheck + test
bun run docs:build # VitePress + API docs
bun run benchmark # vitest bench
支持
帮助更多开发者发现这个项目
如果按文件调用 shell 的 Agent 工作流耗费了你的 token,或让你对路径安全失去信心,那么这个项目正适合你。
⭐ 为仓库点星 — 这有助于更多 Agent 构建者找到安全、适合批处理的文件系统访问方式。
收录情况(进行中)
| 渠道 | 状态 |
|---|---|
| Glama MCP 目录 | 已收录 — 认领服务,以便完整展示 |
| 官方 MCP 注册表 | 尚未收录 |
| 提交至 mcp.so | 尚未收录 — 提交至目录 |
| 提交至 mcpservers.org | 尚未收录 — 免费网页表单提交 |
知道其他 MCP 目录吗?请通过 提交问题 告知我们链接。
许可证
MIT © Sylphx
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。