클로드 데스크톱 MCP 가이드
클로드 데스크톱과 MCP를 활용하여 웹 브라우징, 코드 디버깅, 데이터베이스 연동 등 다양한 작업을 자동화하세요.
개요
MCP(Model Context Protocol)는 클로드 데스크톱에서 웹 브라우징, 프로그램 실행, 코딩, 디버깅, 테스트 등의 작업을 자동화할 수 있게 해주는 프로토콜입니다.
웹 브라우징
Playwright를 통해 웹 페이지 접속, 클릭, 폼 작성 등의 작업 자동화
터미널 명령 실행
Terminal을 통해 다양한 명령어 실행 및 결과 확인
검색 및 정보 수집
Google Search를 통해 최신 정보 검색 및 수집
파일 시스템 접근
Filesystem을 통해 파일 생성, 읽기, 쓰기, 삭제 등의 작업 수행
설치 방법
간단한 설정으로 클로드 데스크톱에 MCP를 연결하고 사용하세요.
필수 프로그램 설치
작업을 시작하기 전 필요한 프로그램을 설치합니다.
- Node.js - https://nodejs.org에서 다운로드 및 설치
- Claude Desktop - 구독 필요
- XAMPP (웹 개발 환경을 설정하는 경우) - https://www.apachefriends.org
기본 설정 방법
- Claude Desktop 설치 및 실행
- 파일 > 설정 > 개발자 > 설정 편집 클릭
claude_desktop_config.json
파일이 열리면 MCP 설정 내용 붙여넣기- Claude Desktop 재시작 (Windows의 경우 컴퓨터 재부팅 필요할 수 있음)
- 정상적으로 설정되면 Claude Desktop에 망치 아이콘과 숫자(33 또는 42)가 표시됨
MCP 설정 파일 구성
아래 내용을 claude_desktop_config.json 파일에 복사하세요. C:\\xampp\\htdocs\\mysite 부분은 원하는 작업 폴더 경로로 변경하세요.
{
"mcpServers": {
"playwright": {
"command": "npx",
"args": [
"-y",
"@executeautomation/playwright-mcp-server"
]
},
"terminal": {
"command": "npx",
"args": [
"-y",
"@dillip285/mcp-terminal"
],
"config": {
"allowedCommands": [
"npm","npx","node","git","python","pip","pipx","pipenv","poetry",
"pytest","tox","flake8","pylint","black","isort","mypy",
"coverage","cProfile","pyinstrument","ab","wrk","siege",
"locust","k6","hey","pytest-benchmark","curl","http","ls","dir", "mysql"
],
"defaultTimeout": 30000
}
},
"googleSearch": {
"command": "npx",
"args": [
"-y",
"g-search-mcp"
]
},
"filesystem": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-filesystem",
"C:\\xampp\\htdocs\\mysite"
]
}
}
}
사용법
클로드 데스크톱 MCP를 활용하기 위한 다양한 방법을 알아보세요.
프로젝트 지침 설정
Claude Desktop에서 새 프로젝트를 생성한 후, 프로젝트 지침에 다음과 같은 내용을 포함시켜 MCP 기능을 활성화할 수 있습니다:
너는 MCP를 사용할 수 있어.
다음 예시들을 살펴보고 적절히 활용해줘.
Node.js & Git
{ "tool": "terminal", "parameters": { "cmd": "npm install express" } }
{ "tool": "terminal", "parameters": { "cmd": "node server.js" } }
{ "tool": "terminal", "parameters": { "cmd": "git clone https://github.com/user/repo.git" } }
파이썬 개발 도구
{ "tool": "terminal", "parameters": { "cmd": "python --version" } }
{ "tool": "terminal", "parameters": { "cmd": "pip install requests" } }
{ "tool": "terminal", "parameters": { "cmd": "pipx install black" } }
{ "tool": "terminal", "parameters": { "cmd": "pipenv install" } }
{ "tool": "terminal", "parameters": { "cmd": "poetry add numpy" } }
{ "tool": "terminal", "parameters": { "cmd": "pytest tests/" } }
{ "tool": "terminal", "parameters": { "cmd": "tox" } }
{ "tool": "terminal", "parameters": { "cmd": "flake8 src/" } }
{ "tool": "terminal", "parameters": { "cmd": "pylint module.py" } }
{ "tool": "terminal", "parameters": { "cmd": "black ." } }
{ "tool": "terminal", "parameters": { "cmd": "isort ." } }
{ "tool": "terminal", "parameters": { "cmd": "mypy app.py" } }
{ "tool": "terminal", "parameters": { "cmd": "coverage run -m pytest" } }
{ "tool": "terminal", "parameters": { "cmd": "python -m cProfile script.py" } }
{ "tool": "terminal", "parameters": { "cmd": "pyinstrument script.py" } }
성능·부하 테스트 도구
{ "tool": "terminal", "parameters": { "cmd": "ab -n 1000 -c 10 http://localhost:3000/" } }
{ "tool": "terminal", "parameters": { "cmd": "wrk -t2 -c100 -d30s http://localhost:3000/" } }
{ "tool": "terminal", "parameters": { "cmd": "siege -c25 -t1M http://localhost:3000/" } }
{ "tool": "terminal", "parameters": { "cmd": "locust -f locustfile.py" } }
{ "tool": "terminal", "parameters": { "cmd": "k6 run script.js" } }
{ "tool": "terminal", "parameters": { "cmd": "hey -n1000 -c50 http://localhost:3000/" } }
{ "tool": "terminal", "parameters": { "cmd": "pytest --benchmark-only" } }
기타 유틸리티
{ "tool": "terminal", "parameters": { "cmd": "curl https://api.example.com/data" } }
{ "tool": "terminal", "parameters": { "cmd": "http GET https://api.example.com/data" } }
{ "tool": "terminal", "parameters": { "cmd": "ls -la" } }
{ "tool": "terminal", "parameters": { "cmd": "dir" } }
// MySQL 예시 (terminal tool 사용)
[
{ "tool": "terminal",
"parameters": {
"cmd": "mysql -uroot -p -e \"SHOW TABLES;\" shorts_generator"
}
},
{ "tool": "terminal",
"parameters": {
"cmd": "mysql -uroot -p -e \"SELECT id, title FROM videos LIMIT 5;\" shorts_generator"
}
},
{ "tool": "terminal",
"parameters": {
"cmd": "mysql -uroot -p -e \"INSERT INTO videos (title, description) VALUES ('샘플','테스트');\" shorts_generator"
}
},
{ "tool": "terminal",
"parameters": {
"cmd": "mysql -uroot -p -e \"BEGIN; UPDATE videos SET view_count = view_count + 1 WHERE id = 42; COMMIT;\" shorts_generator"
}
}
]
Playwright MCP Server 사용 예시
페이지 열기
{ "tool":"playwright","parameters":{"action":"goto","url":"https://example.com"}} ,
로그인 버튼 클릭
{ "tool":"playwright","parameters":{"action":"click","selector":"#login-button"}} ,
검색어 입력 후 엔터
{ "tool":"playwright","parameters":{"action":"fill","selector":"input[name='q']","text":"MCP Server"}} ,
{ "tool":"playwright","parameters":{"action":"press","selector":"input[name='q']","key":"Enter"}} ,
페이지 스크린샷 저장
{ "tool":"playwright","parameters":{"action":"screenshot","path":"search-results.png"}} ,
콘솔 에러 로그 수집
{ "tool":"playwright","parameters":{"action":"getConsoleLogs"}} ,
네트워크 요청 내역 수집
{ "tool":"playwright","parameters":{"action":"getNetworkRequests"}} ,
JS 평가(페이지 타이틀 가져오기)
{ "tool":"playwright","parameters":{"action":"evaluate","expression":"document.title"}} ,
접근성 스냅샷(구조화된 DOM)
{ "tool":"playwright","parameters":{"action":"accessibilitySnapshot"}}
다음 지침을 지켜줘.
1. 폴더 및 파일 생성 및 수정은 C:\xampp\htdocs\mysite 폴더에 대해 진행해줘.
2. 작업이 진행될 때마다, 그에 맞게 docs/project_plan.md 파일을 업데이트해줘.
3. mysite 폴더에는 이미 생성된 파일들이 있어. 기존에 존재하는 파일들 확인하여 작업 진행해야 해.
4. 소스들이 많아 꼭 필요한 파일들만 읽은 후, 편집 또는 추가로 진행해줘. 긴 파일은 2개나 3개로 나누어서 작업해줘.
5. 각 파일이 18kb를 초과하지 않도록 긴 내용은 미리 여러 개의 파일로 기획하여 진행해줘.
6. docs 폴더에 파일을 업데이트하거나 생성할 때, 꼭 필요한 내용만 넣어서 용량을 줄여줘.
7. project_plan.md 파일에는 프로젝트 중요 사항 및 완료된 일, 해야할 일이 기록되어야 해.
8. 테스트 진행할 때는 MCP 도구를 이용해 진행해줘. localhost로 브라우저를 띄우고 각 메뉴도 클릭하고 하나씩 눌러보면서 진행해줘.
9. 쿼리 실행 등 DB 연결을 위해 mysql 쓸 때는 다음처럼 해봐.
{ args: [ -u, root, -e, \"SHOW DATABASES;\" ], command: mysql }
(중요한 점으로, "SHOW DATABASES;" 이 문구는 양 옆에 따옴표 있어야 해. 필수야)
10. C:\xampp\htdocs\mysite 폴더는 http://localhost를 가리켜. 따라서 http://localhost 접속시 C:\xampp\htdocs\mysite 폴더의 인덱스 파일이 뜨게 돼.
11. 로그 정보가 C:\xampp\htdocs\mysite\logs 이곳에 쌓이도록 PHP 개발을 진행해야 해. 그리고 너는 logs 폴더의 내용을 통해 오류 확인해야 해.
12. 자바스크립트 작성 시, 이벤트마다 콘솔에 로그를 남겨야 해. 그래야 에러 발생시 원인을 찾을 수 있어.
13. 디버깅 시, 콘솔의 로그를 찾아봐.
14. (개발이 진행되어 필요한 경우, 이 내용 넣으세요.) 테스트를 위해 다음 사용자 정보 사용해 로그인할 것
아이디: example@example.com
비밀번호: testpassword
15. 작업을 임의로 진행하지 말고, 작업 전에 반드시 동의를 받아야 해.
16. 너는 하라고 한 구체적인 사항은 진행하고 무조건 대기해야 해. 명시적으로 시킨것만 해줘.
웹 개발 환경 설정 (XAMPP)
웹 개발과 데이터베이스를 사용하려면 XAMPP를 설정할 수 있습니다:
- XAMPP 설치 (MySQL 옵션 체크)
- XAMPP 컨트롤 패널에서 Apache와 MySQL 시작
- 기본 웹 페이지 경로 변경하기 (선택사항)
- 새 폴더 생성:
C:\xampp\htdocs\mysite
- 설정 파일 수정:
C:\xampp\apache\conf\httpd.conf
열기 - 다음 내용을 찾아 수정:
아래와 같이 변경:DocumentRoot "C:/xampp/htdocs" <Directory "C:/xampp/htdocs">
DocumentRoot "C:/xampp/htdocs/mysite" <Directory "C:/xampp/htdocs/mysite">
- Apache와 MySQL 재시작
- 새 폴더 생성:
- MCP 설정 파일에서 filesystem 경로를 웹 폴더로 지정
"filesystem": { "command": "npx", "args": [ "-y", "@modelcontextprotocol/server-filesystem", "C:\\xampp\\htdocs\\mysite" ] }
MCP 기능 활용법
- 프로젝트 플랜 파일 관리
- 프로젝트 진행 상황을
project_plan.md
파일에 기록 - 작업 진행 내용, 완료된 작업, 다음 단계 등을 포함
- Claude가 중단되어도 이 파일을 통해 다음 세션에서 작업 계속 진행 가능
- 프로젝트 진행 상황을
- 웹 브라우징 MCP 활용
- 웹사이트 접속, 로그인, 클릭, 스크린샷 등 자동화
- 콘솔 로그 확인을 통한 디버깅
- 에러 추적 및 자동 분석
- 데이터베이스 연동
- MySQL 명령어를 통한 데이터베이스 관리
- 쿼리 실행 및 결과 분석
- 세션 및 데이터 관리
- 파일 분할 관리
- 파일이 너무 커지면 여러 개로 나누어 관리 (18KB 제한)
- 효율적인 프로젝트 구조 설계
활용 사례
클로드 데스크톱 MCP를 활용한 실제 프로젝트 사례를 소개합니다.
유튜브 쇼츠 자동 생성 프로그램
소스놀이터 채널에서 공개한 사례로, MCP를 활용해 다음과 같은 기능을 구현했습니다:
- 웹 브라우저 제어로 페이지 접속 및 로그인 자동화
- 콘솔 로그 및 에러 모니터링을 통한 버그 추적
- MySQL 데이터베이스 연동 및 쿼리 실행
- 세션 관리 및 자동 세그먼트 생성
- 이미지 및 비디오 자동 생성
GPT-4o 연구 프로젝트
MCP를 활용한 최신 AI 모델 연구:
- 구글 검색을 통한 최신 정보 수집 (20개 이상의 웹사이트 분석)
- 심층 자료 분석 및 문서화
- 웹페이지 자동 생성 (HTML/CSS/JS)
- 벤치마크 비교 및 활용 사례 정리
- 프롬프트 전략 연구 및 정리
브라우저 자동화 사례
웹사이트 테스트 자동화:
{ "tool":"playwright","parameters":{"action":"goto","url":"http://localhost"}}
{ "tool":"playwright","parameters":{"action":"click","selector":"#login-button"}}
{ "tool":"playwright","parameters":{"action":"fill","selector":"input[name='username']","text":"testuser"}}
{ "tool":"playwright","parameters":{"action":"fill","selector":"input[name='password']","text":"testpassword"}}
{ "tool":"playwright","parameters":{"action":"click","selector":"button[type='submit']"}}
{ "tool":"playwright","parameters":{"action":"screenshot","path":"login-result.png"}}
데이터베이스 연동 예시
MySQL 데이터베이스 탐색:
{ "tool": "terminal", "parameters": { "cmd": "mysql -uroot -p -e \"SHOW DATABASES;\"" } }
{ "tool": "terminal", "parameters": { "cmd": "mysql -uroot -p -e \"SHOW TABLES;\" database_name" } }
{ "tool": "terminal", "parameters": { "cmd": "mysql -uroot -p -e \"DESCRIBE table_name;\" database_name" } }
데이터 조회 및 조작:
{ "tool": "terminal", "parameters": { "cmd": "mysql -uroot -p -e \"SELECT * FROM users LIMIT 5;\" database_name" } }
{ "tool": "terminal", "parameters": { "cmd": "mysql -uroot -p -e \"INSERT INTO logs (event, message) VALUES ('login', 'User logged in');\" database_name" } }
팁 모음
클로드 데스크톱 MCP를 더 효율적으로 사용하기 위한 팁을 제공합니다.
파일 관리 팁
- 파일 크기는 18KB 이내로 유지
- 긴 내용은 여러 파일로 분할
- 폴더 구조를 체계적으로 관리
MCP 활용 팁
- 브라우징 MCP로 콘솔 로그, 스크린샷, 에러 추적 자동화
- 프로젝트 플랜 파일로 작업 관리
- 에러 발생 시 단계적 분석 지시
성능 최적화 팁
- 너무 많은 MCP 호출 피하기
- 복잡한 작업은 단계별로 분리
- 필요한 정보만 요약하여 전달
Windows 관련 팁
- 파일 경로에 대문자 C 사용 (예:
C:\\
) - 설정 변경 후 컴퓨터 재부팅 필요할 수 있음
- 필요한 모듈 설치:
npx playwright install
효과적인 프롬프트 작성법
작업 지시 구조화:
다음 작업을 진행해줘:
1. [작업1 설명]
2. [작업2 설명]
3. [작업3 설명]
각 단계를 완료할 때마다 진행 상황을 알려주고,
모든 작업이 끝나면 project_plan.md 파일을 업데이트해줘.
분석 시간 제공:
지금은 [문제/상황]을 분석만 하고 기다려줘.
분석이 끝나면 알려줘.
단계적 진행:
이 작업이 완료될 때까지 다른 단계로 넘어가지 말고 계속 진행해줘.
완료되면 기다려줘.