Esta página foi traduzida automaticamente do inglês. Leia o original em inglês.

Referência do unity-mcp-cli

Referência do unity-mcp-cli: instale o MCP, faça login, configure agentes de IA, abra o Unity headless e execute ferramentas e C# pelo terminal.

Atualizado em 4 de novembro de 2026 Ver como Markdown

unity-mcp-cli é a ferramenta de linha de comando do MCP para Unity. Ela instala o Unity e o plugin, faz login no ai-game.dev, grava configurações de agentes de IA, abre e fecha o Editor e chama ferramentas MCP ou executa C# no Editor a partir de um terminal ou de um script de CI. Esta página lista todos os comandos e flags da versão 1.6.2.

Instalação

npm install -g unity-mcp-cli

Ou execute qualquer comando sem instalar: npx unity-mcp-cli <command>. Requer Node.js ^20.19.0 ou >=22.12.0 e funciona no Windows, macOS e Linux. Os comandos que gerenciam editores usam a CLI do Unity Hub; se o Unity Hub não estiver instalado, a CLI o instala.

Opções globais, disponíveis em todos os comandos:

OpçãoDescrição
-v, --verboseSaída de diagnóstico detalhada
-V, --versionMostra a versão da CLI
--helpAjuda do comando

Em um terminal não interativo (CI), a CLI desativa spinners e cores automaticamente. A maioria dos comandos que recebe um caminho de projeto o aceita como argumento posicional ou como --path, e usa a pasta atual por padrão.

Uma sessão típica

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

Comandos de configuração do projeto

install-unity

Instala um Editor Unity por meio do Unity Hub. Sem argumento, instala a versão estável mais recente.

Argumento / opçãoDescrição
[version]Versão do Editor, por exemplo 6000.3.1f1
--path <path>Lê a versão necessária de um projeto existente

create-project

Cria um novo projeto Unity com o Editor: unity-mcp-cli create-project ./MyGame --unity 6000.3.1f1.

Argumento / opçãoDescrição
[path]Onde criar o projeto (obrigatório, ou --path)
--unity <version>Versão do Editor (padrão: a mais alta instalada)

install-plugin

Adiciona o registro com escopo do OpenUPM e com.ivanmurzak.unity.mcp ao Packages/manifest.json. Nunca faz downgrade de uma versão mais alta já instalada. A pasta precisa ser um projeto Unity.

OpçãoDescrição
[path]Projeto Unity (padrão: pasta atual)
--plugin-version <version>Versão a instalar (padrão: a mais recente no OpenUPM)
--with-serverTambém baixa o binário gamedev-mcp-server para esta máquina na pasta da própria CLI
--server-version <version>Versão do servidor para --with-server
--server-source <path-or-url>Instala o servidor a partir de um zip local ou de uma URL (offline ou CI; ignora a verificação de checksum)
--enroll <code>Resgata um código de inscrição de equipe para uma credencial de plugin vinculada a este projeto
--enroll-stdinLê o código de inscrição do stdin, mantendo-o fora do histórico do shell
--yesConfirma prompts, como a troca de conta durante --enroll

install-extension

Instala uma extensão oficial no Packages/manifest.json. Veja Extensões.

Argumento / opçãoDescrição
[id]Nome no catálogo (Tilemap) ou id do pacote (com.ivanmurzak.unity.mcp.tilemap)
[path]Projeto Unity (padrão: pasta atual)
--extension-version <version>Versão a instalar (padrão: a mais recente no OpenUPM)
--listLista as extensões instaláveis e sai (não precisa de projeto nem de rede)

remove-plugin

Remove com.ivanmurzak.unity.mcp do Packages/manifest.json e mantém os registros com escopo. Recebe [path] (obrigatório, ou --path).

configure

Mostra ou oculta ferramentas, prompts e recursos em UserSettings/AI-Game-Developer-Config.json. Um item oculto ainda é executado quando chamado pelo nome.

OpçãoDescrição
[path]Projeto Unity (obrigatório, ou --path)
--listImprime a configuração atual e sai
--enable-tools <names>, --disable-tools <names>Mostra ou oculta ferramentas específicas (separadas por vírgula)
--enable-all-tools, --disable-all-toolsMostra ou oculta todas as ferramentas
--enable-prompts <names>, --disable-prompts <names>O mesmo para prompts
--enable-all-prompts, --disable-all-promptsTodos os prompts
--enable-resources <names>, --disable-resources <names>O mesmo para recursos
--enable-all-resources, --disable-all-resourcesTodos os recursos
--agent <id>Grava uma configuração de agente de IA pelo configurador do servidor gerenciado
--url <url>URL do servidor passada junto com --agent

bootstrap-local

Fixa a configuração de um projeto no modo Custom (local) com uma URL de servidor e um token fornecidos. Idempotente.

OpçãoDescrição
[path]Projeto Unity (padrão: pasta atual)
--url <url>URL do servidor MCP local (obrigatório)
--token <token>Token bearer local (obrigatório)
--dry-runInforma o que mudaria sem gravar

Comandos de login e de agentes de IA

login

Faz login no ai-game.dev com o fluxo de dispositivo OAuth do navegador e armazena a credencial em ~/.ai-game-dev/credentials.json. O plugin do Editor e o aplicativo desktop usam a mesma credencial. Se você já estiver conectado, ele encerra antecipadamente.

OpçãoDescrição
--project <path>Armazena a credencial em <path>/.ai-game-dev/ em vez do armazenamento da máquina
--forceFaz login novamente mesmo que já exista uma credencial
--tools-onlyAutoriza apenas as ferramentas do motor, para runners de CI; nenhuma credencial de agente é armazenada
--yesConfirma uma troca de conta sem solicitar confirmação

setup-mcp

Grava a configuração MCP de um agente de IA, com a mesma saída de Configure na janela do Editor. Por padrão, a URL é fixada neste projeto (https://ai-game.dev/mcp/p/<pin>) e, para configurações Cloud HTTP, carrega a chave deste projeto quando você está conectado. Consulte Connecting AI clients.

OpçãoDescrição
[agent-id]Agente a configurar, por exemplo claude-code, cursor, codex
[path]Projeto Unity (padrão: pasta atual)
--transport <transport>http (padrão) ou stdio
--url <url>Substituição da URL do servidor para http
--token <token>Grava este Personal Access Token em vez da chave do projeto
--oauthGrava uma configuração somente de URL; o agente faz login com seu próprio OAuth
--regenerate-keyGera uma nova chave de projeto, reescreve as configurações e revoga a chave antiga
--no-pinUsa o endpoint https://ai-game.dev/mcp sem fixação
--listLista os ids dos agentes e seus caminhos de configuração

setup-skills

Gera os arquivos de habilidades do agente por meio do Editor em execução. O Unity precisa estar aberto com o plugin conectado.

OpçãoDescrição
[agent-id]Agente para o qual gerar as habilidades
[path]Projeto Unity (padrão: pasta atual)
--url <url>, --token <token>Substituições de URL do servidor e token
--timeout <ms>Tempo limite da requisição (padrão 60000)
--listLista os agentes e se eles oferecem suporte a habilidades

Comandos do Editor

open

Abre o projeto no Unity Editor e define as variáveis de ambiente de conexão do plugin a partir das opções informadas. O editor inicia de forma desanexada.

OpçãoDescrição
[path]Projeto Unity (padrão: pasta atual)
--unity <version>Versão do Editor (padrão: a versão do projeto, depois a mais alta instalada)
--editor-path <path>Executável do Editor explícito; ignora a descoberta pelo Unity Hub
--no-connectAbre sem variáveis de conexão MCP
--url <url>URL do servidor (define UNITY_MCP_HOST, o alias de UNITY_MCP_CLOUD_URL)
--keep-connectedForça a conexão ativada
--token <token>Token do servidor local (define UNITY_MCP_TOKEN)
--auth <option>Modo de autorização (define UNITY_MCP_AUTH_OPTION); esta versão aceita none ou required
--tools <names>Ferramentas separadas por vírgula a exibir (define UNITY_MCP_TOOLS)
--transport <method>streamableHttp ou stdio
--start-server <value>true ou false para a inicialização automática do servidor local
--headlessInicia sem janela (-batchmode, gráficos mantidos) e aguarda até que o servidor MCP responda
--idle-timeout <seconds>Encerra após essa quantidade de segundos sem chamada de ferramenta, salvando antes as cenas e os assets alterados
--ready-timeout <ms>Com --headless, por quanto tempo aguardar (padrão 300000)
--no-auto-dismiss-launch-errorsNão clicar em Ignore na caixa de diálogo "compile errors at launch" do Unity
--launch-dismiss-timeout-ms <ms>Tempo total de observação dessa caixa de diálogo (padrão 30000)
--launch-dismiss-poll-interval-ms <ms>Intervalo de polling da caixa de diálogo (padrão 1500)

Dispensar a caixa de diálogo de erros de inicialização exige permissão de Acessibilidade para o terminal no macOS e xdotool no Linux X11 (Wayland não é suportado).

close

Fecha o Editor do projeto de forma graciosa: unity-mcp-cli close ./MyGame --timeout 60 --force. Fechar um Editor que não está em execução é bem-sucedido.

OpçãoDescrição
[path]Projeto Unity (padrão: pasta atual)
--timeout <seconds>Aguarda um encerramento educado (padrão 30)
--forceEncerra à força o Editor se ele não tiver fechado até então
--owned-onlyFecha apenas um Editor iniciado pela CLI (exec, open --headless)

wait-for-ready

Consulta repetidamente até que o Editor e o servidor MCP aceitem chamadas de ferramentas. Opções: [path], --url, --token, --timeout <ms> (padrão 120000) e --interval <ms> (padrão 3000).

status

Mostra se o Unity está em execução, se o servidor MCP local responde e se o servidor configurado (por exemplo, a nuvem) está acessível. Opções: [path], --url, --token, --timeout <ms> (padrão 5000).

Comandos de ferramentas

run-tool

Chama uma ferramenta MCP pela API HTTP do servidor. A URL e o token vêm da configuração do projeto (modo Custom ou Cloud), a menos que você os substitua.

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
OpçãoDescrição
<tool-name>Ferramenta a chamar
[path]Projeto Unity, usado para configuração e detecção de porta
--url <url>, --token <token>Substituições que ignoram a configuração
--input <json>, --input-file <file>Argumentos da ferramenta (padrão {})
--rawSaída JSON bruta
--timeout <ms>Tempo limite da requisição (padrão 60000)

run-system-tool

As mesmas opções de run-tool, para ferramentas de sistema que não são expostas aos clientes MCP (por exemplo, geração de skills e controle de sessão).

exec

Executa C# no Editor por meio de script-execute e imprime o resultado. Usa um Editor aberto, se houver; caso contrário, inicia um Editor headless que permanece aquecido para chamadas posteriores e encerra após --idle segundos.

unity-mcp-cli exec 'GameObject.FindObjectsOfType<Camera>().Length'
echo 'Application.unityVersion' | unity-mcp-cli exec
OpçãoDescrição
[code]Instruções C#; a última expressão é o resultado (ou use -f ou stdin)
--path <path>Projeto Unity (padrão: pasta atual)
-f, --file <file>Lê o código de um arquivo (- para stdin)
--using <namespace>Namespace extra, repetível
--include <path>Arquivo ou pasta .cs auxiliar em .ai-game-dev/snippets, repetível
--windowInicia o Editor com janela em vez de headless
--idle <seconds>Tempo ocioso antes de um Editor iniciado por exec encerrar (padrão 300, 0 para nunca)
--ready-timeout <ms>Espera pelo Editor (padrão 300000)
--timeout <ms>Tempo limite da chamada da ferramenta
--rawJSON bruto da resposta da ferramenta
--url <url>, --token <token>Substituições

Um erro de compilação encerra com código 1 e aponta para as suas linhas.

Manutenção

update

Atualiza a CLI para a versão mais recente do npm. --check apenas verifica e encerra com código 2 quando há uma atualização disponível. Sob npx não há nada para atualizar.

Uso como biblioteca

O pacote também exporta uma API Node.js tipada (installPlugin, removePlugin, configure, setupMcp, installExtension e mais) que retorna objetos de resultado em vez de imprimir. Veja o README do pacote no npm.