MCP Filesystem

MCP Filesystem

具有模型上下文协议 (MCP) 服务器,工作区中的每个文件都有一个资源

isaacphi

文件系统
访问服务器

README

MCP 文件系统

一个模型上下文协议 (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"
}

我关注的功能

  • [x] 工作区中每个文件的资源
  • [x] .gitignore 支持
  • [x] 更改通知
  • [ ] 标准化 MCP 协议的使用,以与更多客户端(Claude Desktop)一起使用
  • [ ] 可配置的行号支持
  • [ ] 资源更新订阅
  • [ ] 其他忽略模式(超出 .gitignore
  • [ ] 用于高容量文件更改的防抖通知
  • [ ] infocreateeditdelete 工具

推荐服务器

Excel MCP Server

Excel MCP Server

一个模型上下文协议服务器,使 AI 助手能够读取和写入 Microsoft Excel 文件,支持诸如 xlsx、xlsm、xltx 和 xltm 等格式。

精选
本地
Go
Claude Code MCP

Claude Code MCP

一个实现了 Claude Code 作为模型上下文协议(Model Context Protocol, MCP)服务器的方案,它可以通过标准化的 MCP 接口来使用 Claude 的软件工程能力(代码生成、编辑、审查和文件操作)。

精选
本地
JavaScript
Crawlab MCP Server

Crawlab MCP Server

官方
Python
Edit File Lines MCP Server

Edit File Lines MCP Server

一个基于 TypeScript 的 MCP 服务器,它提供工具,用于对允许目录内的文本文件进行精确的、基于行的编辑。

本地
TypeScript
mcp-server-code-assist

mcp-server-code-assist

一个模型上下文协议服务器,它通过大型语言模型提供代码修改和生成工具,允许用户使用结构化的 XML 指令来创建、修改、重写和删除文件。

本地
Python
Terminal Controller for MCP

Terminal Controller for MCP

一个 MCP 服务器,它通过一个标准化的接口,使 LLM 能够安全地执行终端命令、进行目录导航和进行文件系统操作。

本地
Python
Obsidian MCP REST Server

Obsidian MCP REST Server

为人工智能助手提供一个标准化的接口,通过本地 REST API 与 Obsidian vault 进行交互,从而实现笔记的读取、写入、搜索和管理。

本地
TypeScript
MCP Tasks Organizer

MCP Tasks Organizer

一个 MCP 服务器,可以将 Cursor agent 计划转换为结构化的 Markdown 任务列表,并将其组织在您的存储库中,帮助您将 AI 生成的计划和建议作为可执行的规范进行跟踪。

本地
Python
MCP PDF Forms

MCP PDF Forms

一个服务器,通过 MCP 的 API 提供 PDF 表单操作工具,允许用户在目录中查找 PDF 文件、提取表单字段信息,并在文档中可视化表单字段。

本地
Python
Google Drive MCP Server

Google Drive MCP Server

启用与 Google Drive 的集成,用于列出、读取和搜索文件,支持各种文件类型,并为 Google Workspace 文件提供自动导出功能。

本地
JavaScript