
SecureMCPFilesystem Server

2025.04.16
6
TypeScript文件系统服务安全访问控制文件管理
MCP Filesystem Server 是一个基于 Model Context Protocol (MCP) 的安全文件系统服务,提供对预定义目录的安全访问。它通过严格的路径验证和访问控制,确保只有授权的目录可以被访问和操作。该服务支持多种文件系统操作,包括文件读写、目录管理、元数据访问等,并且提供了 Docker 支持以便于部署。
View on GitHub
Overview
基本能力
产品定位
MCP Filesystem Server 是一个安全文件系统服务,为 AI 模型提供通过 Model Context Protocol (MCP) 访问文件系统的能力。
核心功能
- 安全访问:严格的路径验证防止未授权访问
- 文件操作:读取、写入、编辑和移动文件
- 目录操作:创建、列出、获取树视图和搜索目录
- 元数据访问:查看文件和目录信息
- 命令执行:安全执行系统命令并进行严格验证
- Docker 支持:通过 Docker 和 Docker Compose 轻松部署
适用场景
- AI 模型需要安全访问文件系统的场景
- 需要限制访问特定目录的应用
- 需要自动化文件操作的工作流程
工具列表
- File System Operations
- read_file: 读取文件内容
- read_multiple_files: 同时读取多个文件
- write_file: 创建或覆盖文件
- edit_file: 通过差异预览进行精确编辑
- create_directory: 递归创建目录
- list_directory: 列出目录内容
- directory_tree: 获取递归树视图
- move_file: 移动或重命名文件
- search_files: 查找匹配模式的文件
- get_file_info: 获取文件元数据
-
list_allowed_directories: 查看可访问目录
-
System & Network Operations
- get_metrics: 查看服务器性能指标 (v0.3.0+)
- execute_command: 安全执行系统命令 (v0.3.1+)
- curl_request: 向外部 API 执行 HTTP 请求 (即将在 v1.2.0 中推出)
常见问题解答
- 如何配置允许访问的目录? 可以通过命令行参数或配置文件指定允许访问的目录。
- 是否支持 Docker 部署? 是的,支持通过 Docker 和 Docker Compose 部署。
- 如何限制文件大小? 可以在配置文件中设置 maxFileSize 参数来限制文件大小。
使用教程
使用依赖
安装以下软件:
- Node.js (>=18.0.0)
- Git
- pnpm (>=8.0.0)
- Docker (可选)
- Docker Compose (可选)
安装教程
克隆仓库
$ git clone https://github.com/gabrielmaialva33/mcp-filesystem.git
$ cd mcp-filesystem
本地开发
# 安装依赖
$ pnpm install
# 构建应用
$ pnpm build
# 运行服务器
$ pnpm start /path/to/allowed/directory
# 或使用配置文件
$ pnpm start --config=config.json
使用 NPM 包
# 全局安装
$ npm install -g @gabrielmaialva33/mcp-filesystem
# 运行服务器
$ mcp-filesystem /path/to/allowed/directory
# 或使用 npx
$ npx @gabrielmaialva33/mcp-filesystem /path/to/allowed/directory
# 创建示例配置文件
$ npx @gabrielmaialva33/mcp-filesystem --create-config=config.json
使用 Docker
# 构建 Docker 镜像
$ docker build -t gabrielmaialva33/mcp-filesystem .
# 运行
$ docker run -i --rm -v /path/to/data:/data:ro gabrielmaialva33/mcp-filesystem /data
# 使用配置文件
$ docker run -i --rm -v /path/to/config.json:/app/config.json -v /path/to/data:/data gabrielmaialva33/mcp-filesystem --config=/app/config.json
使用 Docker Compose
# 创建数据目录
$ mkdir -p data
# 启动服务器
$ docker-compose up -d
调试方式
查看日志
日志级别可以通过配置文件中的 logLevel 参数设置,支持 debug、info、warn 和 error 级别。
获取性能指标
# 使用 get_metrics 工具获取服务器性能指标