MCPサーバーで詰まったことまとめ

IT・プログラミング

MCPサーバーが起動しない

spawn npx ENOENT

Clineの自動InstallでMCPサーバーをインストールしようとしたとき、Dockerではうまくいくのに、npxではうまくいかなかったので、その解決用を紹介します。

Windows限定での問題かもしれません。
エラーはspawn npx ENOENTです。

npxコマンドがうまく認識されないことが原因でした。
npxを絶対パスにするとうまくいくという情報もありましたが、Windows11ではうまくいきませんでした。

一般的なMCPサーバーの場合以下のようになっていますが、(例slack)

{
  "mcpServers": {
    "slack": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-slack"
      ],
      "env": {
        "SLACK_BOT_TOKEN": "xoxb-your-bot-token",
        "SLACK_TEAM_ID": "T01234567"
      }
    }
  }
}
{
  "mcpServers": {
    "slack": {
      "command": "cmd",
      "args": [
        "/c",
        "npx",
        "-y",
        "@modelcontextprotocol/server-slack"
      ],
      "env": {
        "SLACK_BOT_TOKEN": "xoxb-your-bot-token",
        "SLACK_TEAM_ID": "T01234567"
      }
    }
  }
}

のようにする必要があります。

これは、npxコマンドはPowerShellではセキュリティの問題で実行できず、コマンドプロンプトで実行できるので、コマンドプロンプトで実行させる必要があるからです。

以下のissueを参考にしています。

MCPサーバーは起動しているのに使えない

MCPサーバーがグリーンではなく、オレンジになっている

APIキーなどが間違っている可能性があります。
上記の場合はTEAM IDを間違えていました。

タイトルとURLをコピーしました