安全文件系统服务器

一个基于Python实现的Secure Filesystem MCP Server,提供文件读写、编辑、移动、搜索等功能,并强制执行严格的安全目录限制。

  • by CreatorOfMia
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 CreatorOfMia/MCP_FileSystem

使用说明

安全文件系统MCP服务器(Python)

用Python重新实现的 安全文件系统MCP服务器 来自官方 模型上下文协议(MCP) 项目。

这个版本将原始的TypeScript/Node服务器移植到了 python 使用 FastMCP, 保持相同的核心功能(文件读取/写入/编辑/移动/搜索,目录列表) (包含大小、元数据、JSON树视图)并强制执行严格的 允许的目录 安全。


这个仓库里有什么?

  • 功能对等性 与原始文件系统服务器一起:
    • read_text_file (与 head/tail)
    • read_media_file (Base64 + MIME)
    • write_file, edit_file (差异预览), move_file
    • create_directory, list_directory, list_directory_with_sizes
    • directory_tree (JavaScript 对象表示法,简称 JSON), search_files, get_file_info
    • list_allowed_directories
  • Python原生的 使用(某方法/技术/工具)进行实施 FastMCP
  • 安全至上 路径验证与配置的允许目录进行比对
  • 最小依赖,可跨平台运行 stdio(标准输入输出) 便于MCP客户端集成

为什么要用Python重写它?

  • 提供一个 原生Python MCP服务器 对于偏好使用Python的团队/环境
  • 展示一个干净(的环境/事物) 从官方TypeScript服务器移植 到FastMCP
  • 减少运行时/依赖项的占用(无需Node.js)

快速入门

# Recommended: uv
uv run fileServer.py /path/to/allowed/dir [more/dirs...]

# Or plain Python
python3 fileServer.py /path/to/allowed/dir [more/dirs...]

服务器通过(某种方式)进行通信 **stdio(标准输入输出)**因此,它与任何支持MCP(可能是指某种通信协议或客户端平台)的客户端完全兼容。


将文件系统MCP服务器连接到Claude桌面(此示例在Mac上完成)

要将这个基于Python的Secure Filesystem MCP服务器连接到 Claude Desktop(可译为“Claude桌面版”或保持原样,根据上下文判断是否需要具体化为某个产品名称或保持通用性),请按照以下步骤操作:

  1. 确保服务器能够独立正常运行:
    uv run /absolute/path/to/fileServer.py /absolute/path/to/allowed/directory
    
  2. 打开你的 Claude MCP 配置文件:
    • 打开Claud桌面(注:原文中的“Claud”可能是一个拼写错误,通常我们可能指的是“Claudia”或其他类似名称,但在此直接按照原文翻译,实际应用时请根据上下文确认正确名称)
    • 进入设置
    • 前往开发者(页面/选项)
    • 点击编辑配置
    • 打开 claude_desktop_config.json 文件
    • 粘贴/添加以下配置:
      {
        "mcpServers": {
          "filesystem": {
            "command": "/Users/USERNAME/.local/bin/uv",
              "args": [
                "run",
                "/absolute/path/to/fileServer.py",
                "/absolute/path/to/allowed/directory"
              ]
          }
        }
      }
      
  3. 保存文件。
  4. 完全重启克劳德 重新加载您更新的MCP配置。
  5. 开始一个新的聊天——Claude 现在应该会自动检测到您的 MCP 文件系统服务器,并将其列为您可用的工具之一。

提示:
使用绝对路径,并选择您愿意授予完全读/写访问权限的目录。


安全模型

  • 您必须指定一个或多个 允许的目录 在启动时。
  • 所有操作都会验证和解析路径(包括符号链接),并拒绝访问配置目录之外的区域。
  • 未经授权的路径会返回描述性错误。