Клод исправляет и отлаживает собственную ошибку в сервере файловой системы MCP, связанную с UNC-путями в Windows.

Разработчик задокументировал использование Claude Opus для отладки и исправления ошибки в MCP Filesystem Server (версия Desktop Extension) в Windows. Проблема затрагивала пути к сетевым ресурсам UNC (например, \\server\share\).
Проблема
При использовании сетевого ресурса UNC в качестве разрешённого каталога, list_directory в корне ресурса работал, но любые операции с подкаталогами или файлами завершались ошибкой "Доступ запрещён - путь находится вне разрешённых каталогов". Запись файлов в корень также не работала, несмотря на полную доступность ресурса из проводника Windows и через подключённые диски.
Процесс отладки
Claude помог выявить, что:
- Конфигурация для версии Desktop Extension хранится в
%APPDATA%\Claude\Claude Extensions Settings\ant.dir.ant.anthropic.filesystem.json, а не вclaude_desktop_config.json. - Переключение на букву подключённого диска не сработало, потому что Node.js
fs.realpath()разрешает подключённые диски обратно в пути UNC при запуске сервера. - Исходные файлы сервера (
index.js→lib.js→path-validation.js) были изучены для поиска первопричины.
Первопричина
В path-validation.js функция isPathWithinAllowedDirectories() проверяет принадлежность подкаталога с помощью:
return normalizedPath.startsWith(normalizedDir + path.sep);Корни сетевых ресурсов UNC являются корнями файловой системы (как C:\) и сохраняют завершающую обратную косую черту после нормализации: \\server\share\. Это создаёт двойную завершающую обратную косую черту (\\server\share\\), которая никогда не совпадает с реальными путями. В коде была специальная обработка для корней дисков, таких как C:\, но не для корней UNC.
Исправление
Замените проблемную строку на:
const dirWithSep = normalizedDir.endsWith(path.sep) ? normalizedDir : normalizedDir + path.sep;
return normalizedPath.startsWith(dirWithSep);Примените патч с помощью этой однострочной команды PowerShell:
$file = "$env:APPDATA\Claude\Claude Extensions\ant.dir.ant.anthropic.filesystem\node_modules\@modelcontextprotocol\server-filesystem\dist\path-validation.js"
Copy-Item $file "$HOME\Desktop\path-validation.js.backup"
$content = Get-Content $file -Raw
$content = $content.Replace(
'return normalizedPath.startsWith(normalizedDir + path.sep);',
'const dirWithSep = normalizedDir.endsWith(path.sep) ? normalizedDir : normalizedDir + path.sep; return normalizedPath.startsWith(dirWithSep);'
)
[System.IO.File]::WriteAllText($file, $content)Затем полностью закройте и перезапустите Claude Desktop. Claude сам протестировал исправление с помощью инструментов MCP после перезапуска — перечислив подкаталоги и записав тестовый файл для подтверждения работоспособности.
Примечание: Этот патч будет перезаписан, если расширение обновится автоматически. Исправление должно быть реализовано на уровне исходного кода в @modelcontextprotocol/server-filesystem. Связанные проблемы на GitHub: #1838, #470.
📖 Read the full source: r/ClaudeAI
👀 Смотрите также

Claude AI Opus отключает авторегулировку яркости Intel DPST через редактирование реестра в ключе 0002
Пользователь Reddit автоматизировал исправление автоматического затемнения Intel Display Power Saving Technology, позволив Claude AI Opus отредактировать реестр — ИИ нашел правильное значение FeatureTestControl и расположение ключа.

civStation: Система VLM для игры в Civilization VI с помощью естественно-языковых команд
civStation — это система компьютерного использования VLM, которая играет в Civilization VI, преобразуя высокоуровневые команды на естественном языке в игровые действия. Система использует трёхуровневую архитектуру, разделяющую стратегию и исполнение, с поддержкой вмешательства человека в процесс.

Claude-Code версии 2.1.63 добавляет HTTP-хуки, слеш-команды и исправляет утечки памяти.
Claude-Code v2.1.63 представляет HTTP-хуки для JSON-вызовов к внешним системам, добавляет слеш-команды /simplify и /batch, а также исправляет несколько утечек памяти в длительных сессиях. В релизе также улучшена обработка MCP-серверов и интеграция с VSCode.

Функции ИИ: Генерация кода в реальном времени с автоматической проверкой
AI Functions — это библиотека на Python, которая позволяет определять функции с помощью спецификаций на естественном языке вместо кода реализации, выполняет код, сгенерированный LLM, во время выполнения и проверяет выходные данные с помощью постусловий, которые запускают автоматические повторные попытки при сбое.