SecureMCPFilesystem Server

SecureMCPFilesystem Server

site icon
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 工具获取服务器性能指标

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。