問題の概要
macOSのバージョンを更新した後、VS CodeでMCP(Model Context Protocol)の設定を使用してDockerコンテナを実行しようとした際に以下のエラーが発生しました。
2025-09-16 17:18:41.145 [info] Starting server backlog
2025-09-16 17:18:41.146 [info] Connection state: Starting
2025-09-16 17:18:41.151 [info] Starting server from LocalProcess extension host
2025-09-16 17:18:41.278 [info] Connection state: Starting
2025-09-16 17:18:41.280 [info] Connection state: Error spawn docker ENOENT
エラーの詳細
-
エラーコード:
ENOENT
(No such file or directory) -
原因: システムが
docker
コマンドを見つけられない状態 - 発生タイミング: macOS更新後にMCPサーバーを起動しようとした時
環境
- macOS: バージョン更新後
- VS Code: MCP設定使用
-
設定ファイル:
.vscode/mcp.json
{
"servers": {
"backlog": {
"command": "docker",
"args": [
"run",
"--pull", "always",
"-i",
"--rm",
"-e", "BACKLOG_DOMAIN",
"-e", "BACKLOG_API_KEY",
"ghcr.io/nulab/backlog-mcp-server"
],
"envFile": "${workspaceFolder}/.vscode/.env"
}
}
}
解決方法
1. Dockerの状態確認
まず、Dockerが正常に動作しているか確認します:
docker --version
docker ps
2. Docker Desktopの再インストール
今回のケースでは、Docker Desktopの再インストールで解決しました:
-
現在のDocker Desktopをアンインストール
- アプリケーションフォルダからDocker.appをゴミ箱に移動
- 設定ファイルもクリーンアップする場合は以下を実行:
rm -rf ~/.docker rm -rf ~/Library/Group\ Containers/group.com.docker rm -rf ~/Library/Containers/com.docker.docker
-
最新版をダウンロード・インストール
- Docker公式サイトから最新版をダウンロード
- インストール後、Docker Desktopを起動
-
動作確認
docker --version docker run hello-world
3. VS Codeの再起動
Docker Desktop再インストール後、VS Codeを完全に再起動します:
# VS Codeを完全に終了
Command + Q
# 再起動後、MCPサーバーが正常に動作することを確認
なぜこの問題が発生するのか
macOSのバージョンアップ時に以下の問題が発生することがあります:
- パス設定のリセット: システムパスの設定が変更される
- アプリケーション関連付けの破綻: 既存アプリとシステムの関連付けが切れる
- セキュリティ設定の変更: 新しいセキュリティ機能によりアクセス権限が変更される
特にDockerのようなシステムレベルで動作するツールは影響を受けやすいです。
その他の解決方法(再インストールが不要な場合)
もし再インストールを避けたい場合は、以下も試してみてください:
パスの確認と修正
# Dockerの場所を確認
which docker
ls -la /usr/local/bin/docker
# パスを確認
echo $PATH
シェル設定ファイルにパスを追加:
# ~/.zshrc または ~/.bash_profile に追加
export PATH="/usr/local/bin:$PATH"
# 設定を反映
source ~/.zshrc
VS Codeの設定リロード
-
Command + Shift + P
でコマンドパレットを開く - "Developer: Reload Window" を実行
予防策
今後同様の問題を避けるために:
- macOS更新前のバックアップ: 重要な設定ファイルをバックアップ
- 更新後の動作確認: Docker Desktopの動作を確認
- 定期的なアップデート: Docker Desktopを最新バージョンに保つ
まとめ
macOS更新後にMCP設定でDockerエラーが発生した場合、Docker Desktopの再インストールが効果的な解決方法です。システムレベルの変更により既存のツールが影響を受けることは珍しくないため、重要なツールは更新後に動作確認を行うことをおすすめします。
MCP(Model Context Protocol)を使用した開発環境では、このようなシステム依存の問題が発生することがあるため、トラブルシューティングの参考になれば幸いです。