요즘 Claude Desktop을 매일 켜두고 쓰는 분들이 많을 겁니다. 저도 그런데, 어느 날부터 노트북 팬이 미친듯이 돌고 다른 앱이 버벅거리기 시작했습니다.

작업 관리자(맥에서는 활성 상태 보기)를 열어보니 범인은 Claude Desktop이었습니다. 메인 프로세스 하나가 1.8GB, 자식 프로세스까지 합치면 2.5GB를 넘기고 있었습니다.
이 글은 Claude Desktop 메모리 사용량이 비정상적으로 높을 때 비개발자도 따라할 수 있는 수준에서 단계별로 줄이는 방법을 정리한 것입니다. 제가 1.8GB를 약 600MB까지 떨어뜨린 실제 과정 그대로입니다.
Claude Desktop이 메모리를 많이 먹는 이유
Claude Desktop은 일렉트론(Electron)으로 만든 앱이라 기본적으로 크롬 브라우저 한 통을 통째로 띄우는 구조입니다. 채팅창 하나만 열어도 내부적으로는 브라우저 + Node.js 엔진 + 각종 백그라운드 프로세스가 동시에 돕니다.
여기에 MCP(Model Context Protocol) 서버가 붙으면 메모리는 더 늘어납니다. MCP는 Claude가 외부 도구(파일 시스템, 브라우저, 데이터베이스 등)와 연결되는 일종의 어댑터인데, 서버 하나당 별도 프로세스가 떠서 각자 메모리를 잡아먹습니다.
저는 MCP 서버를 5개 붙여 두고 있었는데, 이것만 정리해도 효과가 큽니다.
| 메모리 점유 요소 | 일반적 사용량 | 비고 |
|---|---|---|
| 메인 윈도우 (UI) | 300~500MB | Electron 기본 |
| 렌더러 프로세스 | 200~400MB | 채팅 세션당 누적 |
| MCP 서버 1개 | 50~200MB | 도구 종류에 따라 |
| GPU 프로세스 | 100~300MB | 하드웨어 가속 |
글 작성 시점(2025년 초) Claude Desktop 정식 빌드 기준입니다. 버전 업데이트로 수치는 달라질 수 있습니다.
먼저 현재 상태부터 확인하기
뭐가 메모리를 먹는지 모른 채 끄기부터 하면 안 됩니다. 어떤 프로세스가 얼마나 쓰는지 보는 게 먼저입니다.
맥(macOS)의 경우:
Cmd + Space→ "활성 상태 보기" 입력 → 실행- 상단 "메모리" 탭 클릭 → 검색창에 "Claude" 입력
- Claude Helper, Claude Helper (GPU), Claude Helper (Renderer) 같은 항목들이 줄줄이 뜹니다
윈도우의 경우:
Ctrl + Shift + Esc→ 작업 관리자- "세부 정보" 탭에서 "Claude.exe"로 시작하는 항목 모두 확인
저는 처음 봤을 때 이런 상태였습니다.
Claude (메인) 1,820 MB Claude Helper (Renderer) 410 MB Claude Helper (GPU) 280 MB Claude Helper (MCP-fs) 180 MB Claude Helper (MCP-github) 220 MB Claude Helper (MCP-puppeteer) 340 MB ───────────────────────────────── 총합 3,250 MB
3GB가 넘었습니다. 16GB 노트북에서 이 정도면 다른 앱이 느려질 만한 수준입니다.
MCP 서버 정리 — 가장 큰 효과
메모리를 가장 많이 줄여주는 건 안 쓰는 MCP 서버 끄기입니다. 저는 깔아만 두고 거의 안 쓰던 puppeteer MCP(브라우저 자동화 도구)를 빼니 한 번에 340MB가 사라졌습니다.
설정 파일은 다음 위치에 있습니다.
맥: ~/Library/Application Support/Claude/claude_desktop_config.json 윈도우: %APPDATA%\Claude\claude_desktop_config.json
경로가 어렵게 보이지만 그냥 텍스트 파일입니다. 메모장이나 텍스트 편집기로 열면 됩니다.
파일을 열면 mcpServers 항목 아래에 서버 목록이 쭉 들어 있을 겁니다. 안 쓰는 서버는 통째로 지우거나, 보관하고 싶다면 서버 이름 앞에 밑줄(_)을 붙여 비활성화하는 식으로 처리합니다.
{
"mcpServers": {
"filesystem": { ... },
"_puppeteer": { ... },
"_github": { ... }
}
}
이렇게 두면 puppeteer와 github MCP가 임시로 꺼집니다(이름이 정확히 일치하지 않으면 Claude가 못 알아보거든요). 저장하고 Claude Desktop을 완전히 종료한 뒤 다시 켜면 적용됩니다.
💡 "완전히 종료"가 중요합니다. 맥에서 창만 닫으면 백그라운드에 그대로 남아있어요. Cmd + Q로 끄거나, 메뉴 바 아이콘에서 종료하세요.
V8 힙 메모리 제한 걸기
MCP를 정리해도 메인 프로세스 자체가 1GB 넘게 쓰고 있다면, Node.js 엔진의 메모리 한도를 직접 걸어줄 수 있습니다.
Claude Desktop은 내부적으로 V8(자바스크립트 실행 엔진)을 쓰는데, 이 엔진은 기본적으로 "필요한 만큼 무한정 쓰는" 동작을 합니다. 환경 변수로 상한선을 지정하면 그 이상 못 쓰게 막을 수 있습니다.
맥/리눅스에서 적용하기:
터미널(검은 화면에 명령어를 입력하는 프로그램, 맥에서는 Cmd + Space → "터미널" 검색)을 열고 다음을 실행합니다.
launchctl setenv NODE_OPTIONS "--max-old-space-size=1024"
이 명령은 Claude를 포함한 Node 기반 앱들이 최대 1024MB(1GB)까지만 쓰도록 제한하는 설정입니다. 숫자를 더 줄이고 싶으면 768이나 512로 바꿔도 됩니다.
윈도우의 경우:
시스템 환경 변수 편집 검색 → 환경 변수 버튼 → 사용자 변수에 NODE_OPTIONS 추가 → 값에 --max-old-space-size=1024 입력.
변수 이름: NODE_OPTIONS 변수 값: --max-old-space-size=1024
설정 후 Claude를 재시작해야 적용됩니다. 너무 작게 잡으면(예: 256) 무거운 작업 중 앱이 강제 종료될 수 있으니 1024 → 768 → 512 순으로 천천히 내리며 안정성을 확인하는 걸 권합니다.
하드웨어 가속 끄기 (선택)
GPU 프로세스가 200~300MB씩 쓰고 있다면 하드웨어 가속을 꺼볼 수 있습니다. 단, 끄면 스크롤·애니메이션이 약간 둔해지므로 메모리가 정말 급할 때만 추천합니다.
Claude Desktop 자체엔 이 옵션이 없어서, 실행 인자(앱을 실행할 때 같이 넘기는 옵션)로 처리해야 합니다.
맥: 터미널에서
open -a "Claude" --args --disable-gpu
윈도우: 바탕화면 Claude 바로가기 우클릭 → 속성 → "대상" 끝에 --disable-gpu 추가
"C:\Users\사용자\AppData\Local\AnthropicClaude\Claude.exe" --disable-gpu
저는 이걸로 약 250MB를 추가로 줄였습니다. 다만 코드 블록 스크롤할 때 살짝 끊기는 느낌이 있어서, 평소엔 켜두고 무거운 작업 직전에만 끕니다.
캐시·세션 정리
장기간 쓰다 보면 채팅 캐시·이미지 캐시가 쌓여 렌더러 프로세스 메모리를 야금야금 늘립니다. 정리 위치는 다음과 같습니다.
| OS | 캐시 폴더 경로 |
|---|---|
| 맥 | ~/Library/Application Support/Claude/Cache |
| 맥 | ~/Library/Application Support/Claude/Code Cache |
| 윈도우 | %APPDATA%\Claude\Cache |
| 윈도우 | %APPDATA%\Claude\Code Cache |
Claude를 완전히 종료한 뒤 위 폴더 안의 내용물만 삭제하면 됩니다(폴더 자체는 그대로 두세요). 다음 실행 시 자동으로 다시 만들어집니다.
저는 한 달에 한 번씩 이걸 비우는데, 매번 200~400MB 정도 줄어듭니다. 채팅 기록이 사라지지는 않아요(기록은 서버에 있고 캐시는 임시 파일이라).
⚠️ 다른 폴더(특히IndexedDB,Local Storage)는 건드리지 마세요. 로그인 정보나 설정이 날아갑니다.
자주 막히는 부분
1. 설정 파일을 고쳤는데 적용이 안 됨
99% 확률로 Claude Desktop이 완전히 종료되지 않은 상태에서 다시 켠 경우입니다. 맥은 메뉴바 → Claude → "Claude 종료"(Cmd + Q), 윈도우는 트레이 아이콘 우클릭 → 종료를 꼭 누르고 다시 실행하세요.
2. JSON 파일을 고치니 Claude가 아예 안 켜짐
JSON 문법이 깨진 경우입니다. 콤마(,) 빠짐, 따옴표 짝 안 맞음이 흔한 실수예요. JSONLint 같은 무료 검증 사이트에 붙여 넣으면 어디가 문제인지 빨간 줄로 알려줍니다.
3. NODE_OPTIONS 걸었더니 다른 앱이 이상해짐
launchctl setenv나 시스템 환경 변수는 모든 Node 기반 앱에 영향을 줍니다. VS Code 확장 같은 게 메모리 부족으로 죽을 수 있어요. 이 경우 환경 변수를 빼고(launchctl unsetenv NODE_OPTIONS), Claude Desktop만 별도로 실행 스크립트로 띄우는 방식이 안전합니다.
4. 메모리는 줄었는데 여전히 느림
메모리가 아니라 CPU 문제일 가능성이 큽니다. 특히 긴 채팅(메시지 200개 넘는)을 열어두면 매 입력마다 전체를 다시 렌더링하느라 느려져요. 새 채팅으로 옮기는 게 가장 빠른 해결책입니다.
적용 후 결과 비교
제 환경(맥북 프로 M2, 16GB) 기준으로 정리 전후를 비교하면 이렇습니다.
| 항목 | 정리 전 | 정리 후 |
|---|---|---|
| 메인 프로세스 | 1,820 MB | 580 MB |
| 렌더러 합계 | 410 MB | 290 MB |
| GPU 프로세스 | 280 MB | 0 MB (끔) |
| MCP 서버 합계 | 740 MB (3개) | 180 MB (1개) |
| 총합 | 약 3.25 GB | 약 1.05 GB |
정리 전: ████████████████████████████ 3.25 GB
정리 후: █████████ 1.05 GB
↑ 약 67% 감소
가장 효과 큰 순서는 MCP 정리 → V8 힙 제한 → 캐시 비우기 → GPU 끄기였습니다. 시간이 없다면 첫 두 개만 해도 충분히 체감됩니다.
마무리
Claude Desktop 메모리 문제는 대부분 MCP 서버 누적과 Node 엔진의 무제한 메모리 사용 때문이라, 이 두 가지만 손봐도 1GB 가까이 줄어듭니다.
오늘 당장 해볼 만한 건 이겁니다. 작업 관리자로 현재 사용량부터 찍어두고, MCP 설정 파일에서 안 쓰는 서버 한두 개 빼본 뒤, 재시작 후 얼마나 줄었는지 비교해 보세요. 이 한 사이클이면 효과가 보입니다.
그래도 부족하면 V8 힙 제한을 1024MB로 걸고, 마지막 수단으로 GPU 가속을 끕니다. 저는 이 조합으로 한 달째 안정적으로 쓰고 있고, 노트북 팬도 조용해졌습니다.
'개발 & 기술 > DevOps·인프라' 카테고리의 다른 글
| Proxmox 홈서버로 구글포토 대신 무제한 사진 백업하기 (0) | 2026.06.13 |
|---|---|
| GitHub Actions 입문, 비개발자도 자동화 1개 만들기 (0) | 2026.06.11 |
| Docker Compose 5분 입문, 컨테이너 여러 개 한 번에 띄우기 (0) | 2026.06.03 |
| Docker 입문, 처음 쓰는 사람을 위한 5분 개념 정리 (0) | 2026.05.25 |
| 우분투 14.04 설치 후 사용하지 않는 프로그램을 제거 (0) | 2015.10.14 |