- 
          
 - 
                Notifications
    
You must be signed in to change notification settings  - Fork 5.3k
 
Description
It's great that AnythingLLM now supports MCP servers. This opens up a world of possibilities. Thank you. However, I'm having a hard time getting it to work as expected.
How are you running AnythingLLM?
AnythingLLM desktop app
What happened?
My installation of AnythingLLM (v1.8.2) for macOS (v15.5) can only connect to MCP servers (both local and remote) if I launch AnythingLLM it from the command-line.
I don't have this issue with Claude desktop app and BoltAI app, using the same servers.
It suggests to me that there's something particular about AnythingLLM that is resulting in it having an incomplete Node/npx environment when launched as an app.
Front-end Errors are:
Failed to start MCP server: desktop-commander [-32000] MCP error -32000: Connection closed
Failed to start MCP server: monday-api-mcp-hosted [-32000] MCP error -32000: Connection closed
etc.
Related logs:
{"level":"info","message":"\u001b[36m[r]\u001b[0m Failed to start MCP server: iMCP {\"error\":\"spawn /private/var/folders/f5/xj8j7h19193_32dbgh9sfwgr0000gn/T/AppTranslocation/D3E2387F-2F04-42B1-BFD2-82A30E386F32/d/iMCP.app/Contents/MacOS/imcp-server ENOENT\",\"code\":\"ENOENT\",\"syscall\":\"spawn /private/var/folders/f5/xj8j7h19193_32dbgh9sfwgr0000gn/T/AppTranslocation/D3E2387F-2F04-42B1-BFD2-82A30E386F32/d/iMCP.app/Contents/MacOS/imcp-server\",\"path\":\"/private/var/folders/f5/xj8j7h19193_32dbgh9sfwgr0000gn/T/AppTranslocation/D3E2387F-2F04-42B1-BFD2-82A30E386F32/d/iMCP.app/Contents/MacOS/imcp-server\",\"stack\":\"Error: spawn /private/var/folders/f5/xj8j7h19193_32dbgh9sfwgr0000gn/T/AppTranslocation/D3E2387F-2F04-42B1-BFD2-82A30E386F32/d/iMCP.app/Contents/MacOS/imcp-server ENOENT\\n    at ChildProcess._handle.onexit (node:internal/child_process:283:19)\\n    at onErrorNT (node:internal/child_process:476:16)\\n    at process.processTicksAndRejections (node:internal/process/task_queues:82:21)\"}","service":"backend"}
{"level":"info","message":"\u001b[36m[r]\u001b[0m Attempting to start MCP server: monday-api-mcp-hosted","service":"backend"}
{"level":"info","message":"\u001b[36m[r]\u001b[0m Failed to start MCP server: monday-api-mcp-hosted {\"error\":\"MCP error -32000: Connection closed\",\"code\":-32000,\"stack\":\"McpError: MCP error -32000: Connection closed\\n    at Client._onclose (/Applications/AnythingLLM.app/Contents/Resources/backend/node_modules/@modelcontextprotocol/sdk/dist/cjs/shared/protocol.js:101:23)\\n    at _transport.onclose (/Applications/AnythingLLM.app/Contents/Resources/backend/node_modules/@modelcontextprotocol/sdk/dist/cjs/shared/protocol.js:73:18)\\n    at ChildProcess.<anonymous> (/Applications/AnythingLLM.app/Contents/Resources/backend/node_modules/@modelcontextprotocol/sdk/dist/cjs/client/stdio.js:97:77)\\n    at ChildProcess.emit (node:events:513:28)\\n    at maybeClose (node:internal/child_process:1091:16)\\n    at Socket.<anonymous> (node:internal/child_process:449:11)\\n    at Socket.emit (node:events:513:28)\\n    at Pipe.<anonymous> (node:net:322:12)\"}","service":"backend"}
{"level":"info","message":"\u001b[36m[r]\u001b[0m Attempting to start MCP server: monday-api-mcp","service":"backend"}
{"level":"info","message":"\u001b[36m[r]\u001b[0m Failed to start MCP server: monday-api-mcp {\"error\":\"MCP error -32000: Connection closed\",\"code\":-32000,\"stack\":\"McpError: MCP error -32000: Connection closed\\n    at Client._onclose (/Applications/AnythingLLM.app/Contents/Resources/backend/node_modules/@modelcontextprotocol/sdk/dist/cjs/shared/protocol.js:101:23)\\n    at _transport.onclose (/Applications/AnythingLLM.app/Contents/Resources/backend/node_modules/@modelcontextprotocol/sdk/dist/cjs/shared/protocol.js:73:18)\\n    at ChildProcess.<anonymous> (/Applications/AnythingLLM.app/Contents/Resources/backend/node_modules/@modelcontextprotocol/sdk/dist/cjs/client/stdio.js:97:77)\\n    at ChildProcess.emit (node:events:513:28)\\n    at maybeClose (node:internal/child_process:1091:16)\\n    at Socket.<anonymous> (node:internal/child_process:449:11)\\n    at Socket.emit (node:events:513:28)\\n    at Pipe.<anonymous> (node:net:322:12)\"}","service":"backend"}
{"level":"info","message":"\u001b[36m[r]\u001b[0m Successfully started 0 MCP servers: []","service":"backend"}
{"level":"info","message":"\u001b[36m[r]\u001b[0m Attempting to start MCP server: desktop-commander","service":"backend"}
{"level":"info","message":"\u001b[36m[r]\u001b[0m Failed to start MCP server: desktop-commander {\"error\":\"MCP error -32000: Connection closed\",\"code\":-32000,\"stack\":\"McpError: MCP error -32000: Connection closed\\n    at Client._onclose (/Applications/AnythingLLM.app/Contents/Resources/backend/node_modules/@modelcontextprotocol/sdk/dist/cjs/shared/protocol.js:101:23)\\n    at _transport.onclose (/Applications/AnythingLLM.app/Contents/Resources/backend/node_modules/@modelcontextprotocol/sdk/dist/cjs/shared/protocol.js:73:18)\\n    at ChildProcess.<anonymous> (/Applications/AnythingLLM.app/Contents/Resources/backend/node_modules/@modelcontextprotocol/sdk/dist/cjs/client/stdio.js:97:77)\\n    at ChildProcess.emit (node:events:513:28)\\n    at maybeClose (node:internal/child_process:1091:16)\\n    at Socket.<anonymous> (node:internal/child_process:449:11)\\n    at Socket.emit (node:events:513:28)\\n    at Pipe.<anonymous> (node:net:322:12)\"}","service":"backend"}
{"level":"info","message":"\u001b[36m[r]\u001b[0m Attempting to start MCP server: iMCP","service":"backend"}
{"level":"info","message":"\u001b[36m[r]\u001b[0m Failed to start MCP server: iMCP {\"error\":\"spawn /private/var/folders/f5/xj8j7h19193_32dbgh9sfwgr0000gn/T/AppTranslocation/D3E2387F-2F04-42B1-BFD2-82A30E386F32/d/iMCP.app/Contents/MacOS/imcp-server ENOENT\",\"code\":\"ENOENT\",\"syscall\":\"spawn /private/var/folders/f5/xj8j7h19193_32dbgh9sfwgr0000gn/T/AppTranslocation/D3E2387F-2F04-42B1-BFD2-82A30E386F32/d/iMCP.app/Contents/MacOS/imcp-server\",\"path\":\"/private/var/folders/f5/xj8j7h19193_32dbgh9sfwgr0000gn/T/AppTranslocation/D3E2387F-2F04-42B1-BFD2-82A30E386F32/d/iMCP.app/Contents/MacOS/imcp-server\",\"stack\":\"Error: spawn /private/var/folders/f5/xj8j7h19193_32dbgh9sfwgr0000gn/T/AppTranslocation/D3E2387F-2F04-42B1-BFD2-82A30E386F32/d/iMCP.app/Contents/MacOS/imcp-server ENOENT\\n    at ChildProcess._handle.onexit (node:internal/child_process:283:19)\\n    at onErrorNT (node:internal/child_process:476:16)\\n    at process.processTicksAndRejections (node:internal/process/task_queues:82:21)\"}","service":"backend"}
{"level":"info","message":"\u001b[36m[r]\u001b[0m Attempting to start MCP server: monday-api-mcp-hosted","service":"backend"}
{"level":"info","message":"\u001b[36m[r]\u001b[0m Failed to start MCP server: monday-api-mcp-hosted {\"error\":\"MCP error -32000: Connection closed\",\"code\":-32000,\"stack\":\"McpError: MCP error -32000: Connection closed\\n    at Client._onclose (/Applications/AnythingLLM.app/Contents/Resources/backend/node_modules/@modelcontextprotocol/sdk/dist/cjs/shared/protocol.js:101:23)\\n    at _transport.onclose (/Applications/AnythingLLM.app/Contents/Resources/backend/node_modules/@modelcontextprotocol/sdk/dist/cjs/shared/protocol.js:73:18)\\n    at ChildProcess.<anonymous> (/Applications/AnythingLLM.app/Contents/Resources/backend/node_modules/@modelcontextprotocol/sdk/dist/cjs/client/stdio.js:97:77)\\n    at ChildProcess.emit (node:events:513:28)\\n    at maybeClose (node:internal/child_process:1091:16)\\n    at ChildProcess._handle.onexit (node:internal/child_process:302:5)\"}","service":"backend"}
Please advise if there is some way to make AnythingLLM connect to MCP servers without to launch AnythingLLM via command line (i.e. when it is launched from the Desktop GUI)
Are there known steps to reproduce?
No response