mcpField
M
MCP Filesystem

MCP Filesystem

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

关于 MCP Filesystem

MCP Filesystem 是一个 Go 编写的 MCP 服务,用于向 MCP 客户端提供工作区文件。它为每个未被忽略的文件创建资源,并发送文件变更通知。

主要功能

  1. 01为每个工作区文件创建资源
  2. 02遵循 .gitignore 规则
  3. 03通知客户端文件变更
  4. 04识别 MIME 类型和文本编码

适用场景

  1. 01通过 MCP 客户端浏览仓库文件
  2. 02跟踪工作区文件的新增、修改和删除

MCP 相关

它将每个未被忽略的工作区文件作为 MCP 资源提供,并在文件新增、修改或删除时发送通知。

配置

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

暂未收录安装方式

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

代码仓库

工具

还没有获取到工具列表

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

详细介绍

MCP Filesystem

一个模型上下文协议(MCP)服务,为工作目录中的每个文件提供资源,并发送变更通知。

状态

⚠️ 预 Beta 质量 ⚠️

“在我的机器上能用。”欢迎反馈问题 ❤️

功能

  • 资源:为工作区中的每个文件创建一个 MCP 资源
  • Gitignore 支持:遵循 .gitignore 规则
  • 变更通知:检测文件变更、新增和删除
  • MIME 类型检测和编码处理:识别文件类型并处理各种文本编码

设置

安装 Go:按照 https://golang.org/doc/install 上的说明操作

获取或更新此服务:

go install github.com/isaacphi/mcp-filesystem@latest

将以下内容添加到客户端配置中(Claude Desktop 的配置文件位于 ~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "filesystem": {
      "command": "mcp-filesystem",
      "args": ["--workspace", "/path/to/your/repository"]
    }
  }
}

将 /path/to/your/repository 替换为项目目录的绝对路径。

用法

客户端将能够以 MCP 资源的形式访问和引用仓库中所有未被忽略的文件。每个文件都会注册为单独的资源,并进行相应的 MIME 类型检测。

客户端要求

客户端需要支持以下 MCP 功能:

  • 资源列表:列出并访问服务提供的资源
  • 变更通知:支持接收 notifications/resources/list_changed 事件
  • 资源内容访问:能够请求并呈现具有相应 MIME 类型的资源内容

关于

本项目使用:

开发

克隆仓库:

git clone https://github.com/isaacphi/mcp-filesystem.git
cd mcp-filesystem

安装依赖:

go mod download

构建:

go build

配置客户端以使用本地构建版本:

{
  "mcpServers": {
    "filesystem": {
      "command": "/full/path/to/your/mcp-filesystem/mcp-filesystem",
      "args": ["--workspace", "/path/to/repository"],
      "env": {
        "DEBUG": "1"
      }
    }
  }
}

反馈

提交问题时,请尽可能提供详细信息。

设置 DEBUG 环境变量以启用详细日志记录:

"env": {
  "DEBUG": "1"
}

我计划添加的功能

  • 为工作区中的每个文件提供资源
  • 支持 .gitignore
  • 变更通知
  • 标准化 MCP 协议的使用,以支持更多客户端(Claude Desktop)
  • 支持配置行号
  • 资源更新订阅
  • 其他忽略模式(除 .gitignore 之外)
  • 针对大量文件变更的防抖通知
  • info、create、edit 和 delete 工具

评论

支持 Markdown

第一次接触 MCP?

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

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