СтатьяГайдCline не видит MCP сервер: как починить конфиг в VS Code
В чем суть проблемы с Cline и MCP сервером
Короче, сидел вчера настраивал связку VS Code плюс Cline, чтобы агент сам дергал нужные локальные инструменты через Model Context Protocol. И всё сломалось на ровном месте. В логах Cline висит банальное connection refused, хотя сам сервер из терминала поднимается нормально и по curl отвечает.
У меня в репе лежал кастомный JSON-сервер для работы с базой. Cline упорно делал вид, что его не существует, или падал по таймауту. Если у вас то же самое — cline mcp connection refused или cline не подключается к mcp, дело почти всегда в путях внутри конфига и том, как VS Code передает переменные окружения.
VS Code terminal error log
Где искать этот проклятый mcp server json config cline
Вся эта кухня живет не в корне проекта, как я сначала наивно думал, а в глобальной директории пользователя. Cline хранит настройки MCP в отдельном файле. Если вы на маке или линуксе, то путь будет примерно такой:
~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json. На винде путь ведет в AppData/Roaming. Откройте этот файл и посмотрите, что у вас прописано в секции mcpServers.
Разбор типичной ошибки в конфиге
У меня ошибка крылась в путях к интерпретатору Node.js. Я указал просто node, надеясь на глобальный PATH. Но у VS Code, когда его запускаешь через графический интерфейс macOS, свой собственный усеченный PATH, который понятия не имеет о ваших nvm или fnm.
В итоге агент пытался запустить скрипт через системную ноду, у которой не было нужных зависимостей, и сервер молча дох при старте. Cline при этом просто галлюцинировал ошибки связи, потому что процесс падал моментально.
Рабочий патч конфига без воды
Вот рабочий вариант, который завелся у меня после всех танцев с бубном. Обратите внимание: пути к исполняемым файлам прописаны абсолютные, а не через относительные сокращения.
Сохраните этот JSON в свой cline_mcp_settings.json, перезапустите VS Code, и сервер обязан подхватиться.
Чек-лист: проверяем, почему всё еще может не работать
Если вы поменяли конфиг, а Cline всё равно делает вид, что ничего не изменилось, пройдитесь по этому списку. Я наступил на каждые из этих граблей.
Скомпилирован ли проект сервера? Если у вас TypeScript, убедитесь, что вы сделали npm run build и файлы в dist лежат на месте.
Абсолютные пути. Замените все тильды ~ и относительные пути на полные системные пути от корня диска.
Логи. Откройте панель Output в VS Code, выберите в выпадающем списке Cline и смотрите сырые stderr процессы.
Версии протокола. Убедитесь, что сам пакет @modelcontextprotocol/sdk актуален и у вас не развязались версии на клиенте и сервере.
Рестарт расширения. Иногда просто перезагрузки окна VS Code (Command Palette -> Developer: Reload Window) недостаточно, проще полностью убить процесс IDE.