MCP文件系统服务器目录访问失败:ENOENT错误排查
问题分析与修复方案
核心问题定位
从错误日志可以看出两个关键异常:
- 配置中的包名
@modelcontextprotocol/server-filesystem被错误解析为u/modelcontextprotocol/server-filesystem,可能是@字符在配置解析时被异常处理; - 服务器同时出现Unix风格路径
/Users/umaan/Desktop和Windows路径C:\Users\umaan\Desktop的矛盾提示,说明路径解析逻辑在Windows环境下存在兼容性问题。
修复步骤
1. 改用正斜杠路径格式
Node.js在Windows环境下支持正斜杠作为路径分隔符,可避免双反斜杠转义可能带来的解析问题:
{ "mcpServers": { "filesystem": { "command": "npx", "args": [ "-y", "@modelcontextprotocol/server-filesystem", "C:/Users/umaan/Desktop", "C:/Users/umaan/Downloads" ] } } }
2. 全局安装后直接调用本地服务器
跳过npx的远程调用逻辑,避免包名解析错误:
首先全局安装服务器包:
npm install -g @modelcontextprotocol/server-filesystem
然后修改配置文件,直接调用本地可执行文件:
{ "mcpServers": { "filesystem": { "command": "@modelcontextprotocol/server-filesystem", "args": [ "C:/Users/umaan/Desktop", "C:/Users/umaan/Downloads" ] } } }
3. 用完整路径指定服务器执行文件
如果上述方法仍无效,直接使用服务器的绝对路径调用:
{ "mcpServers": { "filesystem": { "command": "C:/Users/umaan/AppData/Roaming/npm/node_modules/@modelcontextprotocol/server-filesystem/dist/index.js", "args": [ "C:/Users/umaan/Desktop", "C:/Users/umaan/Downloads" ] } } }
4. 权限排查
右键Claude Desktop选择「以管理员身份运行」,排除权限不足导致的目录访问失败。
内容的提问来源于stack exchange,提问作者VirtualSquares
相关产品推荐
相关产品推荐

