이 페이지는 영어에서 기계 번역되었습니다. 영어 원문 읽기.

unity-mcp-cli 레퍼런스

unity-mcp-cli 명령 레퍼런스 - Unity MCP 설치, 로그인, AI 에이전트 설정 작성, Unity 헤드리스 실행, 터미널에서 도구와 C# 실행까지.

2026년 11월 4일 업데이트 Markdown으로 보기

unity-mcp-cli는 Unity MCP용 명령줄 도구입니다. Unity와 플러그인을 설치하고, ai-game.dev에 로그인하며, AI 에이전트 설정을 작성하고, 에디터를 열고 닫으며, 터미널이나 CI 스크립트에서 MCP 도구를 호출하거나 에디터에서 C#을 실행합니다. 이 페이지는 버전 1.6.2의 모든 명령과 플래그를 나열합니다.

설치

npm install -g unity-mcp-cli

또는 설치 없이 아무 명령이나 실행할 수 있습니다: npx unity-mcp-cli <command>. Node.js ^20.19.0 또는 >=22.12.0이 필요하며 Windows, macOS, Linux에서 동작합니다. 에디터를 관리하는 명령은 Unity Hub CLI를 사용하며, Unity Hub가 없으면 CLI가 이를 설치합니다.

모든 명령에서 사용할 수 있는 전역 옵션:

옵션설명
-v, --verbose상세 진단 출력
-V, --versionCLI 버전 출력
--help해당 명령의 도움말

비대화형 터미널(CI)에서는 CLI가 스피너와 색상을 자동으로 비활성화합니다. 프로젝트 경로를 받는 대부분의 명령은 이를 위치 인자 또는 --path로 받으며, 기본값은 현재 폴더입니다.

일반적인 세션

unity-mcp-cli install-plugin ./MyGame
unity-mcp-cli login
unity-mcp-cli setup-mcp claude-code ./MyGame
unity-mcp-cli open ./MyGame
unity-mcp-cli wait-for-ready ./MyGame
unity-mcp-cli run-tool tests-run ./MyGame --input '{"testMode":"EditMode"}'
unity-mcp-cli close ./MyGame

프로젝트 설정 명령

install-unity

Unity Hub를 통해 Unity 에디터를 설치합니다. 인자가 없으면 최신 안정 버전을 설치합니다.

인자 / 옵션설명
[version]에디터 버전, 예: 6000.3.1f1
--path <path>기존 프로젝트에서 필요한 버전을 읽습니다

create-project

에디터로 새 Unity 프로젝트를 생성합니다: unity-mcp-cli create-project ./MyGame --unity 6000.3.1f1.

인자 / 옵션설명
[path]프로젝트를 생성할 위치 (필수, 또는 --path)
--unity <version>에디터 버전 (기본값: 설치된 가장 높은 버전)

install-plugin

OpenUPM 스코프 레지스트리와 com.ivanmurzak.unity.mcp를 Packages/manifest.json에 추가합니다. 더 높은 버전이 설치되어 있으면 다운그레이드하지 않습니다. 해당 폴더는 Unity 프로젝트여야 합니다.

옵션설명
[path]Unity 프로젝트 (기본값: 현재 폴더)
--plugin-version <version>설치할 버전 (기본값: OpenUPM 최신 버전)
--with-server이 머신용 gamedev-mcp-server 바이너리도 CLI 자체 폴더에 다운로드합니다
--server-version <version>--with-server에 사용할 서버 버전
--server-source <path-or-url>로컬 zip 또는 URL에서 서버 설치 (오프라인 또는 CI용, 체크섬 검증 생략)
--enroll <code>이 프로젝트에 고정된 플러그인 자격 증명을 위해 팀 등록 코드를 사용합니다
--enroll-stdin셸 기록에 남지 않도록 stdin에서 등록 코드를 읽습니다
--yes--enroll 중 계정 전환 같은 확인 프롬프트를 승인합니다

install-extension

공식 확장을 Packages/manifest.json에 설치합니다. Extensions를 참고하세요.

인자 / 옵션설명
[id]카탈로그 이름(Tilemap) 또는 패키지 id(com.ivanmurzak.unity.mcp.tilemap)
[path]Unity 프로젝트 (기본값: 현재 폴더)
--extension-version <version>설치할 버전 (기본값: OpenUPM 최신 버전)
--list설치 가능한 확장 목록을 출력하고 종료 (프로젝트나 네트워크 불필요)

remove-plugin

Packages/manifest.json에서 com.ivanmurzak.unity.mcp를 제거하고 스코프 레지스트리는 유지합니다. [path]를 받습니다 (필수, 또는 --path).

configure

UserSettings/AI-Game-Developer-Config.json에서 도구, 프롬프트, 리소스를 표시하거나 숨깁니다. 숨겨진 항목도 이름으로 호출하면 여전히 실행됩니다.

옵션설명
[path]Unity 프로젝트 (필수, 또는 --path)
--list현재 구성을 출력하고 종료
--enable-tools <names>, --disable-tools <names>특정 도구를 표시하거나 숨김 (쉼표로 구분)
--enable-all-tools, --disable-all-tools모든 도구를 표시하거나 숨김
--enable-prompts <names>, --disable-prompts <names>프롬프트에 대해 동일하게 적용
--enable-all-prompts, --disable-all-prompts모든 프롬프트
--enable-resources <names>, --disable-resources <names>리소스에 대해 동일하게 적용
--enable-all-resources, --disable-all-resources모든 리소스
--agent <id>대신 관리형 서버의 구성기를 통해 AI 에이전트 설정을 작성합니다
--url <url>--agent와 함께 전달되는 서버 URL

bootstrap-local

프로젝트 구성을 주어진 서버 URL과 토큰으로 Custom(로컬) 모드에 고정합니다. 멱등적입니다.

옵션설명
[path]Unity 프로젝트 (기본값: 현재 폴더)
--url <url>로컬 MCP 서버 URL (필수)
--token <token>로컬 베어러 토큰 (필수)
--dry-run기록하지 않고 변경될 내용만 보고합니다

로그인 및 AI 에이전트 명령

login

브라우저 OAuth 디바이스 플로우로 ai-game.dev에 로그인하고 자격 증명을 ~/.ai-game-dev/credentials.json에 저장합니다. Editor 플러그인과 데스크톱 앱은 같은 자격 증명을 사용합니다. 이미 로그인되어 있으면 즉시 종료됩니다.

옵션설명
--project <path>자격 증명을 머신 저장소 대신 <path>/.ai-game-dev/에 저장합니다
--force자격 증명이 있어도 다시 로그인합니다
--tools-onlyCI 러너용으로 엔진 도구만 인가하며, 에이전트 자격 증명은 저장하지 않습니다
--yes프롬프트 없이 계정 전환을 확인합니다

setup-mcp

AI 에이전트의 MCP 설정을 작성하며, Editor 창의 Configure와 동일한 출력입니다. 기본적으로 URL은 이 프로젝트에 고정되고(https://ai-game.dev/mcp/p/<pin>), Cloud HTTP 설정의 경우 로그인되어 있으면 이 프로젝트의 키를 포함합니다. AI 클라이언트 연결을 참고하세요.

옵션설명
[agent-id]설정할 에이전트. 예: claude-code, cursor, codex
[path]Unity 프로젝트 (기본값: 현재 폴더)
--transport <transport>http (기본값) 또는 stdio
--url <url>http용 서버 URL 재정의
--token <token>프로젝트 키 대신 이 Personal Access Token을 기록합니다
--oauthURL만 있는 설정을 작성하며, 에이전트가 자체 OAuth로 로그인합니다
--regenerate-key새 프로젝트 키를 발급하고 설정을 다시 작성한 뒤 이전 키를 폐기합니다
--no-pin고정되지 않은 https://ai-game.dev/mcp 엔드포인트를 사용합니다
--list에이전트 id와 각 설정 경로를 나열합니다

setup-skills

실행 중인 Editor를 통해 에이전트의 스킬 파일을 생성합니다. 플러그인이 연결된 상태로 Unity가 열려 있어야 합니다.

옵션설명
[agent-id]스킬을 생성할 에이전트
[path]Unity 프로젝트 (기본값: 현재 폴더)
--url <url>, --token <token>서버 URL 및 토큰 재정의
--timeout <ms>요청 타임아웃 (기본값 60000)
--list에이전트와 스킬 지원 여부를 나열합니다

Editor 명령

open

Unity Editor에서 프로젝트를 열고, 주어진 옵션으로 플러그인의 연결 환경 변수를 설정합니다. 에디터는 분리된 프로세스로 시작됩니다.

옵션설명
[path]Unity 프로젝트 (기본값: 현재 폴더)
--unity <version>에디터 버전 (기본값: 프로젝트 버전, 그다음 설치된 최고 버전)
--editor-path <path>에디터 실행 파일을 직접 지정하며 Unity Hub 탐색을 건너뜁니다
--no-connectMCP 연결 변수 없이 엽니다
--url <url>서버 URL (UNITY_MCP_HOST 설정, UNITY_MCP_CLOUD_URL의 별칭)
--keep-connected연결을 강제로 켭니다
--token <token>로컬 서버 토큰 (UNITY_MCP_TOKEN 설정)
--auth <option>인가 모드 (UNITY_MCP_AUTH_OPTION 설정). 이 버전은 none 또는 required를 허용합니다
--tools <names>표시할 도구를 쉼표로 구분해 지정 (UNITY_MCP_TOOLS 설정)
--transport <method>streamableHttp 또는 stdio
--start-server <value>로컬 서버 자동 시작을 위한 true 또는 false
--headless창 없이 시작하고(-batchmode, 그래픽 유지) MCP 서버가 응답할 때까지 기다립니다
--idle-timeout <seconds>도구 호출 없이 이 시간(초)이 지나면 변경된 씬과 에셋을 먼저 저장한 뒤 종료합니다
--ready-timeout <ms>--headless와 함께 사용할 때 대기 시간 (기본값 300000)
--no-auto-dismiss-launch-errorsUnity의 "실행 시 컴파일 오류" 대화상자에서 Ignore를 클릭하지 않습니다
--launch-dismiss-timeout-ms <ms>해당 대화상자를 감시할 총 시간 (기본값 30000)
--launch-dismiss-poll-interval-ms <ms>대화상자 폴링 간격 (기본값 1500)

실행 오류 대화상자를 닫으려면 macOS에서는 터미널에 접근성 권한이 필요하고, Linux X11에서는 xdotool이 필요합니다(Wayland는 지원되지 않음).

close

프로젝트의 Editor를 정상적으로 닫습니다: unity-mcp-cli close ./MyGame --timeout 60 --force. 실행 중이 아닌 Editor를 닫아도 성공합니다.

옵션설명
[path]Unity 프로젝트 (기본값: 현재 폴더)
--timeout <seconds>정상 종료를 기다립니다 (기본값 30)
--force그때까지 종료되지 않으면 Editor를 강제 종료합니다
--owned-onlyCLI가 시작한 Editor만 닫습니다 (exec, open --headless)

wait-for-ready

Editor와 MCP 서버가 도구 호출을 받아들일 때까지 폴링합니다. 옵션: [path], --url, --token, --timeout <ms> (기본값 120000), --interval <ms> (기본값 3000).

status

Unity가 실행 중인지, 로컬 MCP 서버가 응답하는지, 설정된 서버(예: 클라우드)에 연결할 수 있는지 보여줍니다. 옵션: [path], --url, --token, --timeout <ms> (기본값 5000).

도구 명령

run-tool

서버의 HTTP API를 통해 MCP 도구를 호출합니다. URL과 토큰은 재정의하지 않는 한 프로젝트 설정(Custom 또는 Cloud 모드)에서 가져옵니다.

unity-mcp-cli run-tool rql-query ./MyGame --input '{"query":"objects | where name == \"Player\" | select path name active"}'
unity-mcp-cli run-tool unity-tool-list ./MyGame --raw
옵션설명
<tool-name>호출할 도구
[path]Unity 프로젝트. 설정 및 포트 감지에 사용됩니다
--url <url>, --token <token>설정을 우회하는 재정의
--input <json>, --input-file <file>도구 인수 (기본값 {})
--raw원시 JSON 출력
--timeout <ms>요청 타임아웃 (기본값 60000)

run-system-tool

run-tool과 동일한 옵션이며, MCP 클라이언트에 노출되지 않는 시스템 도구(예: 스킬 생성 및 세션 제어)에 사용합니다.

exec

script-execute를 통해 에디터에서 C#을 실행하고 결과를 출력합니다. 열려 있는 에디터가 있으면 그것을 사용하고, 없으면 이후 호출을 위해 대기 상태를 유지하다가 --idle초 후 종료되는 헤드리스 에디터를 시작합니다.

unity-mcp-cli exec 'GameObject.FindObjectsOfType<Camera>().Length'
echo 'Application.unityVersion' | unity-mcp-cli exec
옵션설명
[code]C# 문이며 마지막 식이 결과입니다 (-f 또는 stdin 사용)
--path <path>Unity 프로젝트 (기본값: 현재 폴더)
-f, --file <file>파일에서 코드 읽기 (stdin은 -)
--using <namespace>추가 네임스페이스, 반복 가능
--include <path>.ai-game-dev/snippets 아래의 헬퍼 .cs 파일 또는 폴더, 반복 가능
--window헤드리스 대신 창을 표시하여 에디터 시작
--idle <seconds>exec로 시작된 에디터가 종료되기까지의 유휴 시간 (기본값 300, 0이면 종료하지 않음)
--ready-timeout <ms>에디터 대기 (기본값 300000)
--timeout <ms>도구 호출 타임아웃
--raw원시 도구 응답 JSON
--url <url>, --token <token>재정의

컴파일 오류가 발생하면 코드 1로 종료하고 해당 줄을 알려줍니다.

유지 관리

update

CLI를 최신 npm 버전으로 업데이트합니다. --check는 확인만 하며 업데이트가 있으면 코드 2로 종료합니다. npx에서는 업데이트할 것이 없습니다.

라이브러리로 사용

이 패키지는 출력 대신 결과 객체를 반환하는 타입 지정된 Node.js API(installPlugin, removePlugin, configure, setupMcp, installExtension 등)도 내보냅니다. 패키지의 npm README를 참고하세요.