Mcp Filesystem

Mcp Filesystem

🚀 MCP 文件系统协议服务器

MCP 文件系统协议服务器是一个能为每个工作目录提供文件资源,并及时发送文件更改通知的模型上下文协议 (MCP) 服务器。它极大地提升了文件管理与监控的效率,为开发者带来便利。

🚀 快速开始

状态

⚠️ 预 Beta 质量 ⚠️

“在我的机器上运行正常”。欢迎提出问题 ❤️

✨ 主要特性

  • 资源创建:为工作区中的每个文件创建一个 MCP 资源。
  • .gitignore 支持:严格遵循 .gitignore 规则,精准过滤文件。
  • 更改通知:实时检测文件的更改、添加和删除操作,让您及时掌握文件动态。
  • MIME 类型识别与编码处理:准确识别文件类型,并能处理多种文本编码。

📦 安装指南

安装 Go

按照 https://golang.org/doc/install 的说明进行操作。

获取或更新此服务器

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

客户端配置

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

{
"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 之外)
  • [ ] 延迟通知以处理高频率文件更改
  • [ ] info, create, editdelete 工具
  • 0 关注
  • 0 收藏,8 浏览
  • system 提出于 2025-09-29 10:03

相似服务问题