DEV Community

Cojiroooo
Cojiroooo

Posted on

6 1

MCP using node on asdf

What happend?

I tried this tutorial( 👉https://modelcontextprotocol.io/quickstart ) , and encountered following error in MCP log when I started the Claude Desktop App.

2024-12-12T07:24:00.201Z [error] Could not start MCP server weather: Error: spawn node ENOENT
    at ChildProcess._handle.onexit (node:internal/child_process:286:19)
    at onErrorNT (node:internal/child_process:484:16)
    at process.processTicksAndRejections (node:internal/process/task_queues:82:21) {
  errno: -2,
  code: 'ENOENT',
  syscall: 'spawn node',
  path: 'node',
  spawnargs: [Array]
}
Enter fullscreen mode Exit fullscreen mode

Environment

macOS 14.3.1(Sonoma)
asdf v0.13.1
node v20.11.0

% which node
/Users/user_name/.asdf/shims/node
Enter fullscreen mode Exit fullscreen mode

Solution

My claude_desktop_config.json has problems.
I changed laude_desktop_config.json like "after" and restarted the Claude Desktop App.

  • before
{
    "mcpServers": {
        "weather": {
            "command": "node",
            "args": [
                "/Users/user_name/develop/mcp/tutorial/weather-server/build/index.js"
            ]
        }
    }
}
Enter fullscreen mode Exit fullscreen mode
  • after
{
  "mcpServers": {
    "weather": {
      "command": "node",
      "args": ["/Users/user_name/develop/mcp/tutorial/weather-server/build/index.js"],
      "env": {
        "PATH": "/Users/user_name/.asdf/shims:/usr/bin:/bin",
        "ASDF_DIR": "/opt/homebrew/opt/asdf/libexec",
        "ASDF_DATA_DIR": "/Users/user_name/.asdf",
        "ASDF_NODEJS_VERSION": "20.11.0"
      }
    }
  }
}
Enter fullscreen mode Exit fullscreen mode

I add "env" key.
ASDF_DIR is set this(↓) value.

% echo $ASDF_DIR                             
/opt/homebrew/opt/asdf/libexec
Enter fullscreen mode Exit fullscreen mode

ACI image

ACI.dev: The Only MCP Server Your AI Agents Need

ACI.dev’s open-source tool-use platform and Unified MCP Server turns 600+ functions into two simple MCP tools on one server—search and execute. Comes with multi-tenant auth and natural-language permission scopes. 100% open-source under Apache 2.0.

Star our GitHub!

Top comments (3)

Collapse
 
hyperfocus profile image
Hyperfocus

OMG you really saved me there, thanks!!!

Collapse
 
vertis profile image
Luke Chadwick

Thank you!

Collapse
 
mikaoelitiana profile image
Mika Andrianarijaona

Thank you, this was really helpful

Survey image

Calling All Cloud Developers - Your Insights Matter

Take the Developer Nation Survey and help shape cloud development trends. Prizes await!

Join Today