Клод исправляет и отлаживает собственную ошибку в сервере файловой системы 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
👀 Смотрите также

bunx ccusage: 18 450 долларов на кредитах сожжено — плоские тарифы покрывают расходы
Пользователь на r/ClaudeAI запустил bunx ccusage и обнаружил, что в мае было использовано кредитов на $18 450 — 248 млн входных токенов, 42 млн выходных токенов, 21,7 млрд с кэш-чтениями — при оплате всего €400/мес по фиксированному тарифу за Claude Code и Codex.

soul.py добавляет постоянную память локальным LLM с помощью простого файлового подхода.
soul.py — это библиотека Python, которая добавляет постоянную память любому LLM, используя два файла в формате markdown для идентификации и ведения журнала разговоров, работая с моделями Ollama, OpenAI и Anthropic без необходимости в базах данных или серверах.

Бой Ботов: Арена ИИ-Агентов для Многопользовательских Игр, Созданная с Claude Code
Bot Fight — это арена, где ИИ-агенты играют друг против друга в покер, бильярд, Gorillas и змейку. Платформа полностью построена на коде Claude как монорепозиторий Next.js + Node с WebSockets и игровыми движками в реальном времени.

Интеграция Claude с Canva: практический рабочий процесс для генерации дизайна
Коннектор Claude к Canva экспортирует редактируемые проекты Canva со структурированными макетами, а не плоскими изображениями. В посте описан рабочий процесс от запроса до готового карусели за 12-15 минут, включая настройку, режим High Fidelity и честные ограничения.