mcpField
F
Filesystem MCP Server

Filesystem MCP Server

本地服务
github.com/javillegasna文件与存储2170 周前更新

关于 Filesystem MCP Server

Filesystem MCP Server 是用 Python 实现的文件系统 MCP 服务,提供文件读写、目录管理、搜索和元数据查询等操作。服务只允许访问启动时通过参数指定的目录,适合需要让 AI 安全访问本地文件的用户。

主要功能

  1. 01读取、写入与编辑文件
  2. 02创建、列出与移动目录和文件
  3. 03按模式递归搜索文件
  4. 04查询文件元数据
  5. 05限制访问指定目录范围

适用场景

  1. 01让 AI 客户端读取并修改项目文件
  2. 02在指定目录内批量搜索文件
  3. 03编辑前使用 dryRun 预览文件修改

MCP 相关

该项目是 MCP 服务,向 MCP 客户端暴露 read_file、edit_file、search_files 等工具,并通过 list_allowed_directories 提供可访问目录列表。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

文件系统 MCP 服务

使用 Python 实现的文件系统操作 Model Context Protocol (MCP) 服务。

功能

  • 读取/写入文件
  • 创建/列出/删除目录
  • 移动文件/目录
  • 搜索文件
  • 获取文件元数据

注意:此服务只允许在通过 args 指定的目录中执行操作。

API

资源
  • file://system:文件系统操作接口
工具
  • read_file

    • 读取文件的完整内容
    • 输入:path(字符串)
    • 使用 UTF-8 编码读取文件的完整内容
  • read_multiple_files

    • 同时读取多个文件
    • 输入:paths(字符串数组)
    • 读取失败不会中断整个操作
  • write_file

    • 创建新文件或覆盖现有文件(使用时请谨慎)
    • 输入:
      • path(字符串):文件位置
      • content(字符串):文件内容
  • edit_file

    • 使用高级模式匹配和格式化进行选择性编辑
    • 功能:
      • 按行和多行内容匹配
      • 保留缩进的空白字符规范化
      • 正确定位并同时进行多项编辑
      • 检测并保留缩进样式
      • 输出带上下文的 Git 样式差异
      • 使用试运行模式预览更改
    • 输入:
      • path(字符串):要编辑的文件
      • edits(数组):编辑操作列表
        • oldText(字符串):要搜索的文本(可以是子字符串)
        • newText(字符串):用于替换的文本
      • dryRun(布尔值):预览更改但不应用(默认值:false)
    • 试运行时返回详细的差异和匹配信息,否则应用更改
    • 最佳实践:应用更改前,请务必先使用 dryRun 预览
  • create_directory

    • 创建新目录或确保目录存在
    • 输入:path(字符串)
    • 如有需要,会创建父目录
    • 如果目录已存在,则静默成功
  • list_directory

    • 列出目录内容,条目带有 [FILE] 或 [DIR] 前缀
    • 输入:path(字符串)
  • move_file

    • 移动或重命名文件和目录
    • 输入:
      • source(字符串)
      • destination(字符串)
    • 如果目标已存在则失败
  • search_files

    • 递归搜索文件/目录
    • 输入:
      • path(字符串):起始目录
      • pattern(字符串):搜索模式
      • excludePatterns(字符串数组):排除匹配的模式。支持 Glob 格式。
    • 不区分大小写匹配
    • 返回匹配项的完整路径
  • get_file_info

    • 获取文件/目录的详细元数据
    • 输入:path(字符串)
    • 返回:
      • 大小
      • 创建时间
      • 修改时间
      • 访问时间
      • 类型(文件/目录)
      • 权限
  • list_allowed_directories

    • 列出此服务获准访问的所有目录
    • 无需输入
    • 返回:
      • 此服务可读写的目录

安装

git + Python
# Clone the repository
git clone https://github.com/MarcusJellinghaus/mcp_server_filesystem
cd filesystem

# Create and activate a virtual environment (optional but recommended)
python -m venv .venv
source .venv/bin/activate  # On Windows: venv\Scripts\activate

# Install dependencies using pip with pyproject.toml
pip install -e .

运行服务

需要先完成安装

# Enable virtual env 
source .venv/bin/activate 
# Run server with allowed paths (paths optional but recommended)
python ./src/main.py  /path/to/home /path/to/project

或者,你可以使用 uvx 直接从 GH 仓库运行 需要安装 uv:https://docs.astral.sh/uv/getting-started/installation/

uvx --from git+https://github.com/javillegasna/filesystem filesystem /Users/username/Desktop

在不同平台上使用

Claude Desktop
{
  "mcpServers": {
    "filesystem": {
      "command": "uvx",
      "args": [
        "--from",
        "git+https://github.com/javillegasna/filesystem",
        "filesystem",
        "/Users/username/Desktop",
        "/path/to/other/allowed/dir",
      ]
    }
  }
}

vscode
{
  "mcp": {
    "servers": {
      "filesystem": {
        "command": "uvx",
        "args": [
        "--from",
        "git+https://github.com/javillegasna/filesystem",
        "filesystem",
        "/Users/username/Desktop",
        "/path/to/other/allowed/dir",
      ]
      }
    }
  }
}

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。