Filesystem MCP Server

Filesystem MCP Server

site icon
2025.03.23 0
Go文件系统操作文件管理文件管理
mcp-server-filesystem 是一个基于 Go 语言实现的 Model Context Protocol (MCP) 服务器,专注于文件系统操作。它提供了丰富的工具集,用于创建、读取、编辑、搜索和管理文件系统中的文件和目录。该服务器支持 JSON 数据格式的输出,并提供了 gitignore 风格的排除模式支持。
View on GitHub

Overview

基本能力

产品定位

mcp-server-filesystem 是一个专注于文件系统操作的 MCP 服务器,提供了丰富的文件管理功能。

核心功能

  • 创建目录或确保目录存在 (create_directory)
  • 获取文件和目录的递归树形视图 (directory_tree)
  • 对文本文件进行基于行的编辑 (edit_file)
  • 检索文件或目录的详细元数据 (get_file_info)
  • 列出服务器允许访问的目录 (list_allowed_directories)
  • 获取指定路径中所有文件和目录的详细列表 (list_directory)
  • 移动或重命名文件和目录 (move_file)
  • 读取文件的完整内容 (read_file)
  • 同时读取多个文件的内容 (read_multiple_files)
  • 递归搜索匹配模式的文件和目录 (search_files)
  • 创建新文件或完全覆盖现有文件 (write_file)

适用场景

  • 文件系统的自动化管理
  • 批量文件操作
  • 文件内容的搜索和编辑
  • 文件系统的元数据查询

工具列表

  • create_directory: 创建新目录或确保目录存在
  • directory_tree: 获取文件和目录的递归树形视图
  • edit_file: 对文本文件进行基于行的编辑
  • get_file_info: 检索文件或目录的详细元数据
  • list_allowed_directories: 列出服务器允许访问的目录
  • list_directory: 获取指定路径中所有文件和目录的详细列表
  • move_file: 移动或重命名文件和目录
  • read_file: 读取文件的完整内容
  • read_multiple_files: 同时读取多个文件的内容
  • search_files: 递归搜索匹配模式的文件和目录
  • write_file: 创建新文件或完全覆盖现有文件

常见问题解答

  • 安装后无法运行:请确保 Go bin 目录已添加到 PATH 环境变量中
  • 文件操作权限问题:检查服务器允许访问的目录列表

使用教程

使用依赖

  • 需要安装 Go 语言环境

安装教程

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

调试方式

  • 运行测试套件:
go test
  • 使用 tester 命令测试 MCP 服务器:
mcp-server-filesystem tester

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。