← 返回公开榜单
mc

mark3labs/mcp-filesystem-server

Go server implementing Model Context Protocol (MCP) for filesystem operations.

本周新增
17 星
近 3 周倍数
—
距上次推送
348 天
距上次发布
503 天
许可证
MIT

星标增长

每根柱子是这个周期记录下来的 star 增长:优先取逐个 stargazer 到达时间分桶的到达数,还没被 stargazer 扫描覆盖的仓库改用该周期的 star 净增;两个写者都没记录的周期画成虚线空档,而不是当成 0。柱高按各自窗口的峰值归一,两张图不共用坐标轴。指向任意一根柱子, tooltip 里是该周期的九项指标:当前值与周期内的净增。

指向或点击一根柱子,看当天的九项指标。

12/1712/301/111/242/62/193/33/16

2026 年 1 月 15 日 新增 22 个星标; 2026 年 1 月 18 日 新增 1 个星标; 2026 年 2 月 1 日 新增 7 个星标; 2026 年 2 月 9 日 新增 4 个星标; 2026 年 2 月 13 日 新增 2 个星标; 2026 年 2 月 14 日 新增 3 个星标; 2026 年 2 月 16 日 新增 0 个星标; 2026 年 2 月 17 日 新增 1 个星标; 2026 年 2 月 21 日 新增 1 个星标; 2026 年 3 月 16 日 新增 17 个星标

窗口内最高的一天是 2026 年 1 月 15 日,新增 22 个星标。

证据时间轴

这个项目还没有记录到异动、发布或许可证变化。

README
该仓库存储的文档,若已生成中文翻译则一并显示

MCP 文件系统服务器

该MCP服务器通过模型上下文协议(MCP)提供对本地文件系统的安全访问。

组件

资源

  • file://
    • 名称:文件系统
    • 描述:访问本地文件系统上的文件和目录

工具

文件操作

  • read_file

    • 从文件系统中读取文件的全部内容
    • 参数:path(必填):要读取的文件路径
  • read_multiple_files

    • 单次操作读取多个文件的内容
    • 参数:paths(必填):要读取的文件路径列表
  • write_file

    • 创建新文件或覆盖现有文件内容
    • 参数:path(必填):文件写入路径,content(必填):要写入文件的内容
  • copy_file

    • 复制文件和目录
    • 参数:source(必填):源文件或目录路径,destination(必填):目标路径
  • move_file

    • 移动或重命名文件和目录
    • 参数:source(必填):源文件或目录路径,destination(必填):目标路径
  • delete_file

    • 从文件系统中删除文件或目录
    • 参数:path(必填):要删除的文件或目录路径,recursive(可选):是否递归删除目录(默认:false)
  • modify_file

    • 通过字符串匹配或正则表达式查找并替换文本来更新文件
    • 参数:path(必填):要修改的文件路径,find(必填):要查找的文本,replace(必填):要替换的文本,all_occurrences(可选):替换所有出现(默认:true),regex(可选):将查找模式视为正则表达式(默认:false)

目录操作

  • list_directory

    • 获取指定路径下所有文件和目录的详细列表
    • 参数:path(必填):要列出目录的路径
  • create_directory

    • 创建新目录或确保目录存在
    • 参数:path(必填):要创建的目录路径
  • tree

    • 返回目录结构的层次化JSON表示
    • 参数:path(必填):要遍历的目录路径,depth(可选):最大遍历深度(默认:3),follow_symlinks(可选):是否跟随符号链接(默认:false)

搜索和信息

  • search_files

    • 递归搜索匹配模式的文件和目录
    • 参数:path(必填):搜索起始路径,pattern(必填):要匹配的文件名搜索模式
  • search_within_files

    • 在目录树中的文件内容中搜索文本
    • 参数:path(必填):搜索起始目录,substring(必填):要在文件内容中搜索的文本,depth(可选):最大目录深度,max_results(可选):最大返回结果数量(默认:1000)
  • get_file_info

    • 获取文件或目录的详细元数据
    • 参数:path(必填):文件或目录路径
  • list_allowed_directories

    • 返回该服务器被允许访问的目录列表
    • 参数:无

功能

  • 对指定目录的安全访问
  • 路径验证以防止目录遍历攻击
  • 带安全检查的符号链接解析
  • MIME类型检测
  • 支持文本、二进制和图像文件
  • 内联内容和base64编码的大小限制

入门指南

安装

使用Go安装

go install github.com/mark3labs/mcp-filesystem-server@latest

使用

作为独立服务器

使用允许的目录启动MCP服务器:

mcp-filesystem-server /path/to/allowed/directory [/another/allowed/directory ...]

作为Go项目中的库

package main

import (
	"log"
	"os"

	"github.com/mark3labs/mcp-filesystem-server/filesystemserver"
)

func main() {
	// 创建新的文件系统服务器,指定允许的目录
	allowedDirs := []string{"/path/to/allowed/directory", "/another/allowed/directory"}
	fs, err := filesystemserver.NewFilesystemServer(allowedDirs)
	if err != nil {
		log.Fatalf("Failed to create server: %v", err)
	}

	// 处理请求
	if err := fs.Serve(); err != nil {
		log.Fatalf("Server error: %v", err)
	}
}

与模型上下文协议一起使用

要将此服务器集成到支持MCP的应用中:

{
  "mcpServers": {
    "filesystem": {
      "command": "mcp-filesystem-server",
      "args": ["/path/to/allowed/directory", "/another/allowed/directory"]
    }
  }
}

Docker

使用Docker运行

您可以使用Docker运行文件系统MCP服务器:

docker run -i --rm ghcr.io/mark3labs/mcp-filesystem-server:latest /path/to/allowed/directory

带MCP的Docker配置

要将Docker镜像集成到支持MCP的应用中:

{
  "mcpServers": {
    "filesystem": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "ghcr.io/mark3labs/mcp-filesystem-server:latest",
        "/path/to/allowed/directory"
      ]
    }
  }
}

如果您需要在容器内进行的更改反映到主机文件系统,可以挂载卷。这允许容器访问和修改主机系统上的文件。以下是一个示例:

{
  "mcpServers": {
    "filesystem": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "--volume=/allowed/directory/in/host:/allowed/directory/in/container",
        "ghcr.io/mark3labs/mcp-filesystem-server:latest",
        "/allowed/directory/in/container"
      ]
    }
  }
}

许可证

详情请参阅LICENSE文件。

页面上的每个数字都来自记录下来的 stargazer 到达时间,没有评分公式,也没有 AI 判定。 任何结论都可以用 /api/v1/repos/{id}/stats 里的原始增量自己重算。