윈도우 11에서 클로드 mcp 연결 성공기
윈도우 11을 사용하는데
자꾸 오류 메시지가 나서 반포기 하고 있었다.
그러다가 마지막으로 해보자! 시도
주 오류 메시지는
trouble shooting debugging 어쩌고 저쩌고...였다.
주로 났던 오류
일단 Node.js 설치를 했다.
그리고 Powershell을 사용했다.(윈도우 검색창에 powershell)
그리고 파워셸을 켜고 아래처럼 mcp 서버 설치를 했다.(아래 명령 복사 붙여넣기)
npm install -g @modelcontextprotocol/server-filesystem
하지만 그럼에도 오류가 났다.
npm : 이 시스템에서 스크립트를 실행할 수 없으므로 C:\Program Files\nodejs\npm.ps1 파일을 로드할 수 없습니다. 자세한 내 용은 about_Execution_Policies(https://go.microsoft.com/fwlink/?LinkID=135170)를%EB%A5%BC) 참조하십시오. 위치 줄:1 문자:1 + npm install -g @modelcontextprotocol/server-filesystem + ~~~ + CategoryInfo : 보안 오류: (:) [], PSSecurityException + FullyQualifiedErrorId : UnauthorizedAccess
그래서 클로드에게 위 오류 체크해달라고 했다.
클로드는 파워셸(관리자권한)에서 아래와 같이 하라고 했다.
Set-ExecutionPolicy RemoteSigned 실행
npm install -g @modelcontextprotocol/server-filesystem 실행
이후에 변경 확인 메시지가 나오면 "Y"누르고 다시
npm install -g @modelcontextprotocol/server-filesystem 을 파워셸에 실행
그리고 달의이성님의 글을 보고 프로세스 관리에 대해 클로드에 물어봤다.
"아래는 프로세스 관리라고 하는데 어떤 의미인지 모르겠어."
Get-Process -Name "node" | Stop-Process -Force Get-Process | Where-Object {$_.ProcessName -like "*claude*"} | Stop-Process -Force
일단 전후 생략하고 클로드는
Get-Process -Name "node" | Stop-Process -Force
Get-Process | Where-Object {$_.ProcessName -like "*claude*"} | Stop-Process -Force
위와 같은 메시지를 전해주었다.
에라 모르겠어서 일단 파워셸에서 실행했다.
그럼에도 불구하고 클로드 앱을 켜니 오류가 생성되었다.
명령어 node 인수 C:\Users\(이건 내 폴더 이름)\AppData\Roaming\npm\node_modules\@modelcontextprotocol\server-filesystem\dist\index.js C:\Users\jsbanmcp\Desktop 오류 Server disconnected
그래서 클로드에 물어보았고
Node.js 버전 확인
복사
node -v
최신 LTS 버전의 Node.js를 사용하고 있는지 확인하세요 (v16 이상 권장).
MCP 서버 재설치
복사
npm uninstall -g @modelcontextprotocol/server-filesystem npm install -g @modelcontextprotocol/server-filesystem
직접 서버 실행 테스트
다음 명령어로 서버를 직접 실행하여 오류 메시지를 확인하세요:
복사
node node C:\Users\jsbanmcp\AppData\Roaming\npm\node_modules\@modelcontextprotocol\server-filesystem\dist\index.js C:\Users\jsbanmcp\Desktop
모든 관련 프로세스 종료 후 재시도
Get-Process -Name "node" | Stop-Process -Force
Get-Process | Where-Object {$_.ProcessName -like "*claude*"} | Stop-Process -Force
위의 해결책을 주었다.
달의이성님의 클로드 파일 지정 방법을 참고해서 클로드가 아래의 명령어를 만들어주었다.
{
"mcpServers": {
"filesystem": {
"command": "C:\\\\Program Files\\\\nodejs\\\\node.exe",
"args": \[
"C:\\\\Users\\\\(내 폴더 이름)\\\\AppData\\\\Roaming\\\\npm\\\\node_modules\\\\@modelcontextprotocol\\\\server-filesystem\\\\dist\\\\index.js",
"C:\\\\Users\\\\jsbanmcp\\\\Desktop"
\]
}
}
}
근데 또 아래의 오류가 나서 오류내용을 복붙해서 클로드에 물어보았다.
오류내용
node:internal/modules/cjs/loader:1228 throw err; ^ Error: Cannot find module 'C:\Users\내 폴더 이름\AppData\Roaming\npm\node_modules\@modelcontextprotocol\server-filesystem\dist\index.js' at Function._resolveFilename (node:internal/modules/cjs/loader:1225:15) at Function._load (node:internal/modules/cjs/loader:1055:27) at TracingChannel.traceSync (node:diagnostics_channel:322:14) at wrapModuleLoad (node:internal/modules/cjs/loader:220:24) at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:170:5) at node:internal/main/run_main_module:36:49 { code: 'MODULE_NOT_FOUND', requireStack: []
이 오류 메시지는 Node.js가 지정된 파일을 찾지 못하고 있음을 나타냅니다. @modelcontextprotocol/server-filesystem
모듈이 설치되지 않았거나 경로가 잘못되었을 가능성이 큽니다.
해결 방법
모듈 설치 확인 먼저 MCP 서버 모듈이 실제로 설치되어 있는지 확인합니다:
npm list -g | grep modelcontextprotocol
MCP 서버 모듈 설치 모듈이 없다면 설치합니다:
npm install -g @modelcontextprotocol/server-filesystem
설치 경로 확인 npm의 전역 설치 경로를 확인합니다:
npm root -g
이 명령어의 출력 결과를 통해 실제 모듈이 설치된 정확한 경로를 알 수 있습니다.
설정 파일 업데이트 확인된 정확한 경로로 Claude 설정 파일을 업데이트합니다:
$npmRoot = (npm root -g) $jsonContent = @" { "mcpServers": { "filesystem": { "command": "node", "args": [ "$npmRoot\\@modelcontextprotocol\\server-filesystem\\dist\\index.js", "C:\\Users\\내 폴더 이름\\Desktop" ] } } } "@ Set-Content "$env:APPDATA\\Claude\\claude_desktop_config.json" $jsonContent
다른 가능성 확인
패키지 이름이나 경로 구조가 변경되었을 수 있습니다. 최신 문서를 확인하세요.
Node.js 버전이 너무 낮거나 높아서 호환성 문제가 있을 수 있습니다.
npm 캐시를 정리해 보세요:
npm cache clean --force
MCP 연결에 관한 공식 문서를 확인하면 더 정확한 설치 방법과 현재 지원되는 패키지 이름을 알 수 있습니다. 위의 단계를 따라도 문제가 해결되지 않으면 Claude 지원팀에 문의하는 것이 좋습니다.
위의 오류로 인해 내 폴더 이름 뒤에 Desktop 폴더가 없어서 "C:\\Users\\내 폴더 이름 까지만 바꿔주고 위의 내용을 실행했는데 그 과정에서 파워셸에서 아래의 오류가 발생했다.
grep : 'grep' 용어가 cmdlet, 함수, 스크립트 파일 또는 실행할 수 있는 프로그램 이름으로 인식되지 않습니다. 이름이 정확한 지 확인하고 경로가 포함된 경우 경로가 올바른지 검증한 다음 다시 시도하십시오. 위치 줄:1 문자:15 + npm list -g | grep modelcontextprotocol + ~~~~ + CategoryInfo : ObjectNotFound: (grep:String) [], CommandNotFoundException + FullyQualifiedErrorId : CommandNotFoundException
나는 클로드에 복붙해서 물어봤고 클로드는 아래 내역을 다시 가르쳐주었다.
Windows PowerShell에서는 grep
명령어가 기본적으로 제공되지 않습니다. Windows에서는 findstr
또는 PowerShell의 Select-String
명령어를 사용해야 합니다. 아래와 같이 대체하여 사용해보세요:
npm list -g | Select-String "modelcontextprotocol"
또는 더 직접적으로 패키지가 설치되어 있는지 확인하려면:
npm list -g @modelcontextprotocol/server-filesystem
이 문제를 해결하기 위한 전체 과정을 순서대로 정리해드리겠습니다:
MCP 서버 모듈 설치 여부 확인
npm list -g | Select-String "modelcontextprotocol"
패키지가 없다면 설치
npm install -g @modelcontextprotocol/server-filesystem
npm 전역 설치 경로 확인
npm root -g
확인된 경로로 설정 파일 업데이트
$npmRoot = (npm root -g) $jsonContent = @" { "mcpServers": { "filesystem": { "command": "node", "args": [ "$($npmRoot -replace '\\', '\\')\\@modelcontextprotocol\\server-filesystem\\dist\\index.js", "C:\\Users\\내 폴더 이름" ] } } } "@ Set-Content "$env:APPDATA\Claude\claude_desktop_config.json" $jsonContent
모든 관련 프로세스 종료
Get-Process -Name "node" -ErrorAction SilentlyContinue | Stop-Process -Force Get-Process | Where-Object {$_.ProcessName -like "*claude*"} | Stop-Process -Force
Claude 재시작 설정 변경 후 Claude 앱을 다시 시작하여 새 설정이 적용되도록 합니다.
이 문제는 MCP 서버 모듈이 설치되지 않았거나, 경로가 잘못되었을 가능성이 높습니다. 위 과정을 통해 모듈을 설치하고 정확한 경로를 설정 파일에 반영하면 해결될 것입니다.
이 과정을 마치니 성공했다.
일단 두서 없게 작성했지만
기본적으로는 달의 이성님의 글을 참고했고
오류가 날 때마다 클로드에 물어보았다. 클로드에 물어볼 때 오류는 오류가 나면 클로드 앱에 설정 편집이 있는데 그것을 복사 붙여넣기 해서 클로드에 다시 물어보면 어떻게든 해결이 되었다는 점이다.
다시 시도하라면 또 성공할 수 있겠느냐 하면... 음 반반이다.


