macOS 제어 — AI Mac 자동화은(는) 무엇을 하나요?
Claude가 15개의 MCP 도구를 통해 Mac을 직접 제어할 수 있습니다. 앱 실행, 다크 모드 전환, 파일 검색, 스크린샷 촬영, 클립보드 관리 등 모든 작업을 자연어로 수행합니다.
위치
프로젝트: /Users/apple/Aiwithdhruv/AI Development/Claude/Mac-Automation/
MCP 서버: Mac-Automation/macos_mcp.py
도구 참조
시스템 (읽기 전용)
get_system_info() # macOS 버전, 칩, RAM, 가동 시간
get_running_apps() # 모든 보이는 실행 중인 앱
get_disk_usage() # 볼륨별 저장 공간
앱 제어
open_app(app_name="Safari") # 앱 실행 (/Applications/에서 검증)
close_app(app_name="Notes") # AppleScript로 정상 종료
switch_to_app(app_name="Terminal") # 포그라운드로 전환
디스플레이 및 오디오
toggle_dark_mode() # 라이트/다크 모드 전환 (즉시 시각적 변경)
set_volume(level=50) # 0-100, 자동 음소거 해제
알림
send_notification(title="안녕하세요", message="수업 시작합니다!", sound="Glass")
play_sound(sound_name="Ping") # 14가지 시스템 사운드 사용 가능
파일 및 검색
spotlight_search(query="invoice.pdf", folder="~/Documents", limit=20)
open_folder(folder_path="~/Desktop") # Finder에서 열기
클립보드
get_clipboard() # 현재 클립보드 읽기
set_clipboard(text="Hello World") # 클립보드에 쓰기
스크린샷
take_screenshot(region="full") # 전체 화면 PNG를 바탕화면에 저장
take_screenshot(region="window") # 전면 창만 캡처
스키마
입력
| 이름 | 유형 | 필수 | 설명 |
|---|---|---|---|
| app_name | str | 상황에 따라 다름 | .app 없이 앱 이름 (예: 'Safari') |
| level | int | 상황에 따라 다름 | 볼륨 0-100 |
| title | str | 상황에 따라 다름 | 알림 제목 |
| message | str | 상황에 따라 다름 | 알림 내용 |
| sound | str | 아니요 | 사운드 이름 (default/Glass/Ping/Pop 등) |
| query | str | 상황에 따라 다름 | Spotlight 검색어 |
| folder | str | 아니요 | 검색 범위 폴더 |
| text | str | 상황에 따라 다름 | 클립보드 텍스트 |
| region | str | 아니요 | 스크린샷 영역 (full/window) |
출력
| 이름 | 유형 | 설명 |
|---|---|---|
| result | str | 사람이 읽을 수 있는 결과 또는 오류 메시지 |
자격 증명
| 이름 | 유형 | 필수 | 설명 |
|---|---|---|---|
| (없음) | — | — | 자격 증명 불필요 — 로컬 macOS 명령어 사용 |
함께 구성 가능한 서비스
ghost-browser— 스크린샷 → 분석 → 브라우저 자동화google-mcp— 파일 검색 → 이메일 첨부instantly-campaigns— 클립보드 → 이메일 템플릿
비용
무료 — 표준 라이브러리만 사용, API 호출 없음.
안전
- 차단된 키워드: rm, sudo, shutdown, format, erase, passwd, kill
- 앱 이름은 /Applications/에서 검증
- AppleScript 문자열은 이스케이프 처리
- 모든 명령에 10초 타임아웃
- shell=True 사용 안 함