Filesystem MCP Server 使用说明

项目简介

Filesystem MCP Server 是一个基于 Model Context Protocol (MCP) 构建的 Go 语言服务器,旨在为大型语言模型 (LLM) 提供安全可控的文件系统访问能力。该服务器允许 LLM 客户端通过标准化的 MCP 协议,在预先配置的允许目录范围内,执行文件读取、写入、目录创建、文件搜索等操作,从而扩展 LLM 的应用场景,例如文件处理、数据分析等。

主要功能点

  • 文件读写: 支持读取文件内容和写入文件内容。
  • 目录管理: 支持创建、列出和删除目录。
  • 文件移动: 支持移动或重命名文件和目录。
  • 文件搜索: 支持在指定目录下递归搜索文件。
  • 文件元数据: 获取文件或目录的详细元数据信息。
  • 安全控制: 所有文件操作都被限制在服务器启动时通过参数指定的允许目录内,确保安全性。
  • 资源和工具: 实现了 MCP 协议定义的资源 (Resources) 和工具 (Tools) 接口,方便 LLM 客户端调用。

安装步骤

  1. 安装 Go 环境: 确保您的系统已安装 Go 语言环境 (版本 1.16 或更高版本)。
  2. 安装服务器: 打开终端,运行以下命令安装 Filesystem MCP Server:
    go install github.com/mark3labs/mcp-filesystem-server
    安装成功后,'mcp-filesystem-server' 可执行文件通常会位于 '$GOPATH/bin' 或 '$HOME/go/bin' 目录下,请确保该目录已添加到系统的 PATH 环境变量中。

服务器配置

Filesystem MCP Server 需要在 MCP 客户端(例如 Claude Desktop)的配置文件中进行配置。以下是 Claude Desktop 的 'claude_desktop_config.json' 配置文件示例,展示了如何配置 Filesystem MCP Server:

{
  "mcpServers": {
    "filesystem": {
      "command": "mcp-filesystem-server",
      "args": [
        "/Users/username/Desktop",  // 允许访问的目录 1: 用户桌面
        "/path/to/other/allowed/dir" // 允许访问的目录 2: 其他允许目录的路径
      ]
    }
  }
}

配置说明:

  • '"filesystem"': 服务器名称,可以自定义,用于在客户端中引用该服务器。
  • '"command": "mcp-filesystem-server"': 启动 Filesystem MCP Server 的命令。
  • '"args": [...]"': 传递给服务器的启动参数,必须 至少包含一个允许访问的根目录路径。可以配置多个允许访问的目录,服务器将只允许操作这些目录及其子目录下的文件。请将示例中的 '/Users/username/Desktop' 和 '/path/to/other/allowed/dir' 替换为您实际希望允许 LLM 访问的目录路径。

基本使用方法

  1. 启动服务器: 当 MCP 客户端(如 Claude Desktop)启动并加载配置文件后,Filesystem MCP Server 会自动启动。
  2. 客户端调用: LLM 客户端可以通过 MCP 协议调用 Filesystem MCP Server 提供的工具 (Tools) 来执行文件系统操作。例如,可以使用 'read_file' 工具读取文件内容,使用 'list_directory' 工具列出目录内容等。具体的工具调用方式和参数请参考仓库 README.md 文件中 "API" 部分的工具描述。
  3. 资源访问: LLM 客户端可以通过 'file://' 协议访问文件系统资源 (Resources)。例如,'file:///Users/username/Desktop/example.txt' 可以用来访问桌面上的 'example.txt' 文件。服务器会根据文件类型和大小,以文本、Base64 编码或资源链接的形式返回文件内容或文件引用。

注意: Filesystem MCP Server 旨在提供安全的文件系统访问,请务必仔细配置允许访问的目录,避免泄露敏感信息或造成安全风险。

信息

分类

数据库与文件