项目简介
本项目 'WSL文件系统MCP服务器' 是一个基于 Model Context Protocol (MCP) 构建的应用后端,专为 Windows Subsystem for Linux (WSL) 环境设计。它允许LLM客户端通过标准化的MCP协议,安全、便捷地访问和操作WSL文件系统中的文件和目录。此服务器是原始 Filesystem MCP Server 的一个分支,针对WSL环境进行了深度优化和定制。
主要功能点
- 跨系统访问: 从Windows主机直接访问任何已安装的WSL发行版。
- 文件读写: 在Windows环境下读写WSL中的文件。
- 目录管理: 在WSL中创建、列出和删除目录。
- 文件移动: 在WSL文件系统内移动文件和目录。
- 文件搜索: 在WSL文件系统中搜索文件。
- 元数据获取: 获取WSL文件系统中文件和目录的详细元数据。
- 多发行版支持: 支持同时管理多个WSL发行版。
- 权限控制: 服务器仅允许操作通过启动参数指定的目录及其子目录,保障安全性。
安装步骤
- 安装Node.js: 确保您的Windows系统已安装Node.js (v14.0.0 或更高版本)。您可以从 Node.js官网 下载安装程序。
- 安装项目依赖并构建: 打开命令提示符或PowerShell,导航到您克隆的仓库目录,并执行以下命令:
这两个命令会安装项目所需的依赖包,并编译TypeScript代码生成可执行的JavaScript文件。npm install npm run build
服务器配置
MCP服务器需要配置在MCP客户端中才能使用,例如 Claude Desktop。以下是配置 'WSL文件系统MCP服务器' 的JSON格式配置信息,您需要将其添加到您的MCP客户端配置文件中(例如 'claude_desktop_config.json'):
选项 1:使用特定的WSL发行版
{ "mcpServers": { "wsl-filesystem": { "command": "npx", "args": [ "-y", "mcp-server-wsl-filesystem", "--distro=Ubuntu-20.04", // 指定要使用的WSL发行版名称,例如 Ubuntu-20.04 "/home/user/documents" // 指定允许访问的WSL目录,可以添加多个目录 ] } } }
选项 2:使用默认的WSL发行版
{ "mcpServers": { "wsl-filesystem": { "command": "npx", "args": [ "-y", "mcp-server-wsl-filesystem", "/home/user/documents" // 指定允许访问的WSL目录,可以添加多个目录 ] } } }
- 'server name': 'wsl-filesystem' (服务器名称,客户端配置中用于标识和调用)
- 'command': 'npx' (用于执行Node.js包的命令)
- 'args': 启动服务器的参数列表
- '-y': 'npx' 参数,自动确认执行包安装(如果需要)。
- 'mcp-server-wsl-filesystem': 要执行的npm包名称,'npx' 会自动查找并执行本地或全局安装的此包。
- '--distro=Ubuntu-20.04' (可选): 指定要连接的WSL发行版。如果省略,则使用默认WSL发行版。
- '/home/user/documents' (必选): 指定允许MCP客户端访问的WSL目录。可以添加多个目录,空格分隔。请务必根据您的实际WSL目录路径进行修改。
注意:
- 'command' 和 'args' 定义了MCP客户端启动和连接MCP服务器的方式。
- 请确保根据您的实际WSL环境和需要访问的目录,正确配置 'args' 中的参数。
- MCP客户端会读取以上配置信息,并根据 'command' 和 'args' 启动 'WSL文件系统MCP服务器',建立连接后即可通过MCP协议调用服务器提供的文件系统工具。
基本使用方法
-
启动服务器: 在完成安装和配置后,MCP客户端(如 Claude Desktop)会自动根据您提供的配置信息启动 'WSL文件系统MCP服务器'。您也可以在命令行手动启动服务器进行测试:
node dist/index.js [--distro=发行版名称] <允许访问的目录> [更多允许访问的目录...]例如:
node dist/index.js --distro=Ubuntu-20.04 /home/user/documents /mnt/c/data -
在MCP客户端中使用: 一旦服务器成功启动并与MCP客户端建立连接,您就可以在MCP客户端中,通过调用服务器提供的工具(例如 'read_file', 'write_file' 等)来操作WSL文件系统。具体的调用方式和工具使用方法请参考您的MCP客户端文档。
信息
分类
桌面与硬件