SlateVM

공식

네이티브 Apple 실리콘 VM 플랫폼으로, 45개의 MCP 도구를 통해 macOS, Linux, Windows 11 ARM 게스트를 생성, 관찰 및 운영할 수 있습니다.

SlateVM MCP(으)로 무엇을 할 수 있나요?

  • VM 생성 및 구성 — macOS, Linux 또는 Windows 게스트를 create_vm으로 CPU, 메모리, 디스크, 네트워크 설정과 함께 생성하고, 필요에 따라 하드웨어를 조정하거나 resize_disk를 사용하세요.
  • 게스트 상태 관찰capture_screen, read_console_text 또는 wait_for_text를 사용하여 VM의 디스플레이, 직렬 출력 또는 OCR된 인터페이스를 확인하고 현재 상황을 파악하세요.
  • 입력 전송 및 명령 실행send_input으로 키보드, 포인터 또는 텍스트를 직접 전달하거나, 프로비저닝된 SSH ID를 통해 run_in_guest로 제한된 명령을 실행하세요.
  • 수명 주기 및 작업 관리start_vm, stop_vm, suspend_resume_vm 또는 delete_vm을 사용하고, job_status 또는 wait_for_state로 진행 상황을 추적하세요.
  • 진단 및 검사get_diagnostics, tail_log 또는 networking_status를 가져와 VM 상태, 로그 및 네트워크 연결 문제를 해결하세요.
  • 스토리지 및 미디어 처리shared_folder를 추가하거나 제거하고, apply_guest_tools를 사용하거나 set_installer_media로 게스트 리소스를 관리하세요.

문서

LLM이 보고, 이해하고, 조작할 수 있는 진짜 가상 머신.

SlateVM은 호환 MCP 클라이언트에 생성, 프로비저닝, 수명 주기, 콘솔 상호작용, 네트워킹, 진단, 구성, 게스트 실행에 걸친 45개의 구조화된 함수를 제공합니다. VM을 생성하는 것은 시작에 불과합니다: 에이전트는 게스트를 관찰하고, 상태를 이해한 다음, 지원되는 모든 게스트 플랫폼에서 행동하고 검증할 수 있습니다.

모든 단계에서 증거를 제공하는 자동화.

머신 관찰

정확한 수명 주기 및 작업 상태를 읽고, 프레임버퍼를 캡처하고, 표시된 인터페이스를 OCR하고, 헤드리스 Linux 직렬 스트림을 읽고, 로그를 검사하거나 게스트 네트워킹을 탐색합니다.

올바른 채널을 통한 행동

키보드, 포인터, 스크롤 또는 텍스트 입력을 보내고, VM별 전용 SSH ID를 프로비저닝하고, 제한된 명령을 실행하고, 지원되는 VM 구성을 업데이트합니다.

결과 검증

상태 또는 텍스트를 기다리고, 변경된 화면을 캡처하고, 직렬 출력을 읽고, 진단을 수집하고, VM이 실제로 보고하는 내용에서 계속 진행합니다.

셸 래퍼가 아닙니다. UI 스크립팅이 아닙니다.

무상태 slatevm-mcp 어댑터는 로컬 Unix 도메인 소켓을 통해 SlateVM의 버전 관리 프로토콜을 사용합니다. SlateControlServer은 각 요청을 SlateControlHub로 전달하며, 여기서 SwiftUI 인터페이스와 AI 제어 경로가 동일한 VMStore, 네트워킹 서비스, 창 관리자 및 수명 주기 소유자에 수렴합니다. VM 상태와 정책의 권한은 어댑터가 아닌 SlateVM에 있습니다.

SwiftUI 인간 제어

SlateControlHub 공유 애플리케이션 제어 평면

LLM + MCP 구조화된 제어

LLM이 사용할 수 있는 45개 함수.

이 카탈로그는 번들된 slatevm-mcp 구현과 해당 로컬 또는 애플리케이션 측 디스패치 경로에 의해 등록된 도구 매니페스트를 반영합니다.

애플리케이션, 검색 및 작업

launch_app

SlateVM을 표시 상태로 실행하고 로컬 제어 엔드포인트가 준비되었는지 보고합니다.

quit_app

SlateVM을 정상적으로 종료하거나, 명시적으로 요청된 경우 애플리케이션을 강제 종료합니다.

app_status

SlateVM이 실행 중인지, 프로세스 식별자, 제어 소켓 연결 가능 여부, 실행 중인 앱의 버전 및 빌드를 보고합니다(번들에서 실시간으로 읽으므로 자동 업데이트 후에도 정확합니다).

host_capabilities

호스트 가상화 기능, 중첩 가상화, macOS 버전, 자격 상태 및 여유 디스크 정보를 반환합니다.

list_images

SlateVM의 캐시 및 다운로드에 표시되는 읽기 가능한 설치 이미지를 추론된 게스트 유형 및 크기와 함께 나열합니다.

list_restore_images

macOS 생성 워크플로우에서 사용할 수 있도록 SlateVM이 알고 있는 macOS 복원 이미지를 나열합니다.

job_status

백그라운드 작업의 상태, 최신 단계, 결과 또는 구조화된 오류를 반환합니다.

job_wait

백그라운드 작업이 완료되거나 제한된 시간 초과에 도달할 때까지 기다린 후 현재 결과를 반환합니다.

list_jobs

최근 백그라운드 작업과 현재 상태를 나열합니다.

VM 인벤토리 및 수명 주기

list_vms

모든 VM을 ID, 런타임 상태 및 하드웨어 요약과 함께 나열합니다.

get_vm

하나의 VM에 대한 완전한 영구 구성과 현재 세부 정보를 반환합니다.

create_vm

필수 OS, CPU, 메모리, 디스크, 이미지 및 네트워크 입력에서 macOS, Linux 또는 Windows VM을 생성하며, 선택적 무인 설치, 계정 자격 증명, NAT 또는 LAN 브리지 네트워킹, Linux 게스트용 x86-64(Rosetta) 지원을 제공합니다.

start_vm

선택한 VM을 시작하고 표시 가능한 콘솔 창을 엽니다.

stop_vm

실행 중인 VM을 기본적으로 정상 종료하고 명시적 강제 옵션으로 중지합니다.

suspend_resume_vm

실행 중인 VM을 일시 중단 및 재개 상태 사이에서 전환합니다.

wait_for_state

실행 또는 중지 상태를 기다리고 사용 가능한 오류 컨텍스트와 함께 결과를 반환합니다.

delete_vm

확인된 VM 번들을 SlateVM의 조정된 삭제 경로를 통해 휴지통으로 이동합니다.

reveal_vm

선택한 VM 번들을 Finder에 표시합니다.

구성, 저장소 및 통합

set_hardware

제공된 CPU, 메모리, 네트워크, 중첩 가상화, x86-64(Rosetta) 또는 Linux 네트워크 드라이버 설정만 업데이트합니다.

resize_disk

기존 가상 디스크를 보존하면서 VM 디스크를 확인된 더 큰 크기로 확장합니다.

set_installer_media

중지된 VM을 접근 가능한 설치 미디어로 다시 지정하고 새 범위 참조를 영구 저장합니다.

finish_install

설치 완료를 표시하고 다음 부팅 구성에서 설치 미디어를 제거합니다.

add_shared_folder

마운트 이름과 선택적 읽기 전용 액세스로 macOS 또는 Linux VM에 호스트 폴더를 추가합니다.

remove_shared_folder

VM 구성에서 선택한 공유 폴더 레코드를 제거합니다.

set_shared_folder_readonly

공유 폴더를 읽기 전용과 쓰기 가능 액세스 사이에서 변경합니다.

apply_guest_tools

선택한 VM에 SlateVM의 게스트 도구 디스크를 준비하거나 적용합니다.

set_attach_linux_guest_tools

데스크톱 Linux VM이 SlateVM 도구 디스크를 연결하는지 여부를 제어합니다.

set_console_window_size

선택한 VM 콘솔 창의 너비와 높이를 Mac 표시 포인트 단위로 설정합니다.

set_display_resolution

헤드리스 Linux 서버 게스트의 다음 부팅 디스플레이 해상도를 설정합니다.

set_linux_network_path

Linux VM에 대해 기본 Apple NAT 또는 SlateVM의 서비스 기반 NAT 경로를 선택합니다.

진단, 콘솔 및 입력

get_diagnostics

VM 상태, 구성, 미디어 액세스, 디스크 정보, 네트워킹 상태, 로그 및 최신 구조화된 오류를 수집합니다.

tail_log

선택한 시간 창에 대한 최근 VM 로그 줄을 선택적 텍스트 필터와 함께 반환합니다.

capture_screen

게스트 콘솔을 MCP 이미지 또는 호스트 파일로 캡처하며, 형식, 자르기 및 크기 조정 컨트롤을 제공합니다.

read_console_text

게스트 콘솔 텍스트를 선택적 대소문자 구분 없는 패턴으로 필터링하여 반환합니다. 헤드리스 Linux 서버는 정확한 직렬 스트림을 읽습니다(OCR 없음); 다른 게스트는 프레임버퍼 OCR을 사용합니다.

wait_for_text

요청된 패턴이 나타나거나 제한된 시간 초과에 도달할 때까지 콘솔을 폴링합니다 — 헤드리스 서버의 경우 직렬 스트림, 그 외에는 프레임버퍼 OCR.

send_input

게스트 범위의 포인터, 텍스트 또는 키 작업을 보내고 동일한 호출에서 결과를 캡처할 수 있습니다. 헤드리스 서버에서 텍스트/키는 직렬 콘솔로 전송됩니다 — 대문자, 기호 및 Ctrl 조합 모두 작동합니다.

네트워킹 서비스 및 게스트 명령

networking_status

SlateVM의 네트워킹 서비스가 설치되었는지, 연결 가능한지, 정상인지 보고합니다.

networking_install

네트워킹 서비스의 일회성 관리자 승인을 위해 서명된 macOS 설치 프로그램을 엽니다.

networking_repair

관리자 승인 패키지 워크플로우를 통해 네트워킹 서비스를 다시 설치합니다.

networking_uninstall

네트워킹 서비스의 관리자 승인 제거 프로그램을 엽니다.

guest_network

호스트 DHCP 및 ARP 정보를 사용하여 VM의 MAC에서 후보 게스트 IP 주소를 검색합니다.

provision_ssh

VM별 전용 SSH 공개 키와 게스트 측 설치 명령을 생성하거나 반환합니다.

ssh_status

VM에 전용 LLM SSH 키가 있는지 보고하고 공개 키를 반환합니다.

revoke_ssh

호스트 측 전용 SSH ID를 제거하여 교체하거나 폐기할 수 있도록 합니다.

run_in_guest

제한된 SSH 명령을 실행하고 종료 코드, 출력, 오류, 시간 초과 및 연결 상태를 반환합니다.