文件系统MCP服务器简介
'filesystem-mcp' 是一个实现了 Model Context Protocol (MCP) 的服务器,旨在为 AI 代理(如 Cline/Claude)提供安全、高效且节省 tokens 的项目文件访问能力。它提供了一系列文件系统工具,所有操作都严格限制在项目根目录内,确保安全性。
主要功能点:
- 安全的项目根目录访问: 所有文件操作都限定在服务器启动时的工作目录(CWD)所确定的项目根目录下,防止未授权访问。
- 优化的批量操作工具: 大多数工具支持批量操作,例如一次读取多个文件,减少 AI 服务器的往返次数,降低 token 消耗和延迟。
- 全面的文件系统功能: 提供丰富的文件操作工具,包括文件和目录的浏览、内容读写、编辑、搜索、创建、删除、移动、复制以及权限管理等。
- 易于集成和使用: 可以通过 'npx' 快速启动,也可以使用 Docker 容器部署。
- 参数校验: 使用 Zod 进行输入参数校验,确保请求的有效性。
安装步骤:
本服务器主要通过 'npx' 或 Docker 镜像运行,无需本地安装。
服务器配置:
您需要在 MCP 客户端(例如 Roo/Cline)的配置文件中添加 'filesystem-mcp' 服务器的配置信息。以下是使用 'npx' 和 Docker 的配置示例:
1. 使用 'npx' (推荐):
这种方式最简单,无需本地安装,直接使用 npm registry 上的最新版本。
在 MCP 客户端的配置文件(如 'mcp_settings.json')中添加以下配置:
{ "mcpServers": { "filesystem-mcp": { "command": "npx", "args": [ "@shtse8/filesystem-mcp" ], "name": "Filesystem (npx)" } } }
- 'command': 设置为 'npx',用于执行 npm 包。
- 'args': 设置为 '["@shtse8/filesystem-mcp"]',指定要执行的 npm 包名称。
- 'name': 服务器名称,可以自定义,例如 "Filesystem (npx)"。
2. 使用 'bunx' (可选):
如果您使用 Bun 运行时,可以使用 'bunx' 替代 'npx'。
{ "mcpServers": { "filesystem-mcp": { "command": "bunx", "args": [ "@shtse8/filesystem-mcp" ], "name": "Filesystem (bunx)" } } }
- 'command': 设置为 'bunx',用于执行 Bun 包。
- 'args': 设置为 '["@shtse8/filesystem-mcp"]',指定要执行的 Bun 包名称。
- 'name': 服务器名称,可以自定义,例如 "Filesystem (bunx)"。
3. 使用 Docker 镜像:
如果您希望使用 Docker 容器运行,可以使用预构建的 Docker 镜像。
确保 Docker 正在运行,然后在 MCP 客户端的配置文件中添加以下配置:
{ "mcpServers": { "filesystem-mcp": { "command": "docker", "args": [ "run", "-i", "--rm", "-v", "/path/to/your/project:/app", "shtse8/filesystem-mcp:latest" ], "name": "Filesystem (Docker)" } } }
- 'command': 设置为 'docker',用于执行 Docker 命令。
- 'args': 设置为 Docker 运行参数,
- 'run -i --rm': 运行容器,'-i' 保持 STDIN 打开,'--rm' 容器退出后自动删除。
- '-v /path/to/your/project:/app': 重要: 将您的本地项目目录挂载到容器内的 '/app' 目录。请将 '/path/to/your/project' 替换为您实际的项目根目录的绝对路径。 服务器在容器内会将 '/app' 视为项目根目录。
- 'shtse8/filesystem-mcp:latest': Docker 镜像名称和 tag。
- 'name': 服务器名称,可以自定义,例如 "Filesystem (Docker)"。
重要提示:
- 项目根目录 (Project Root): 服务器根据其当前工作目录(CWD)确定项目根目录。 使用 'npx' 或 'bunx' 时,请确保您的 MCP 客户端配置为在您的项目根目录下启动 'npx' 或 'bunx' 命令。 使用 Docker 时,务必通过 '-v' 参数挂载您的项目目录到容器内的 '/app' 目录。
- 相对路径: 所有文件路径参数都应该是相对于项目根目录的相对路径。
基本使用方法:
配置完成后,重启您的 MCP 客户端环境。您的 AI 代理即可通过 MCP 协议调用 'filesystem-mcp' 服务器提供的各种文件系统工具,例如 'list_files' (列出文件), 'read_content' (读取文件内容), 'write_content' (写入文件内容) 等。 具体的工具和参数请参考仓库 README 文档中 “✨ Amazing Features & Tools” 章节的详细描述。
信息
分类
数据库与文件