Ferramentas
As 27 ferramentas MCP integradas do Unreal - RQL, Blueprints, C++, Python, capturas de tela e console - e exemplos de prompts para IA no Unreal Editor.
Esta página descreve o que um agente de IA pode fazer no Unreal Editor com o Unreal MCP. O plugin traz 27 ferramentas em 7 famílias. Você raramente chama uma ferramenta pelo nome: peça em linguagem natural e o agente escolhe a ferramenta. Conhecer as famílias ajuda você a pedir coisas que o agente realmente consegue fazer.
Para ver os cards e parâmetros de cada ferramenta, consulte o catálogo de ferramentas do Unreal.
RQL: uma linguagem de consulta para os dados do editor
O Unreal MCP não tem uma ferramenta por operação do editor. Em vez disso, os dados do editor passam pelo RQL, uma linguagem de consulta que lê e altera actors, componentes, assets, níveis e o estado do editor em uma única chamada.
| Ferramenta | O que faz |
|---|---|
rql-query | Consulta somente leitura sobre o editor em execução, com resultados em tabela compacta |
rql-mutate | Uma consulta que termina com set ou call; tudo ou nada, um único passo de desfazer, e uma prévia com dry_run |
rql-schema | Lista fontes, funções e classes; com um tipo, lista os membros e métodos desse tipo |
Alguns exemplos de como o RQL se parece (o agente escreve isso para você):
actors | where $ is PointLight | select $ref Label Intensity
actors | where Label == "Door_01" | set Location = "(0, 0, 100)"
editor | call SpawnActor("PointLight")
console | where Verbosity == "Error"Além de actors e componentes, o RQL alcança:
- Assets e níveis: criar, copiar, mover, excluir e importar assets, criar pastas e instâncias de material, abrir, criar e salvar níveis, adicionar subníveis de streaming.
- Estado do editor: seleção, estado do Play In Editor, histórico de desfazer, o log do editor.
- DataTables: ler e editar linhas (
Rows["Sword"].Damage), adicionar, remover, renomear e duplicar linhas. - Gameplay tags: listar, adicionar, remover e renomear tags.
- Project Settings e Editor Preferences: ler e alterar propriedades de configuração, salvas no arquivo
.inicorreto. - Grafos de Blueprint: adicionar chamadas de função, variáveis, eventos, casts, branches e loops, conectar pinos e então
call Compile(). - Widget Blueprints: percorrer e editar a árvore de widgets, adicionar widgets e definir o layout.
- Structs definidas pelo usuário: adicionar, remover e renomear campos.
- Level Sequences: vincular actors, adicionar trilhas e chaves.
Toda mutação é uma transação do editor, então Ctrl+Z a reverte. O agente aprende a linguagem com a skill unreal-rql, que também lista o que as extensões instaladas acrescentam.
Exemplos de prompts:
- "Liste todas as point lights do nível com sua intensidade e depois dobre a intensidade das mais fracas."
- "Crie 20 cubos em uma grade de 5 por 4, com 200 unidades de distância entre eles."
- "Adicione uma linha Bow com Damage 7 à DataTable DT_Weapons."
- "Defina o mapa padrão do jogo como /Game/Maps/Arena."
Família Blueprint
A criação de Blueprints é a principal superfície de script do Unreal, e o agente tem um ciclo de feedback completo: criar, editar, compilar, ler os erros, corrigir.
| Ferramenta | O que faz |
|---|---|
blueprint-create | Cria uma classe Blueprint a partir de uma classe pai |
blueprint-get | Resume um Blueprint: variáveis, componentes, funções e eventos, cadeia de classes pai |
blueprint-add-component | Adiciona um componente ao construction script |
blueprint-remove-component | Remove um componente |
blueprint-add-variable | Adiciona uma variável membro tipada |
blueprint-modify-variable | Altera uma variável membro |
blueprint-set-default | Define uma propriedade padrão da classe |
blueprint-add-function | Adiciona um stub de função |
blueprint-add-event | Adiciona um evento como BeginPlay ou Tick |
blueprint-compile | Compila e retorna uma lista estruturada de erros e avisos |
blueprint-spawn | Coloca uma instância do Blueprint no nível |
Exemplo: "Crie um Blueprint de Actor BP_Door com um componente static mesh e uma variável bool IsOpen, compile e coloque uma instância na origem."
Família Source / C++
| Ferramenta | O que faz |
|---|---|
source-read | Lê um arquivo C++ do projeto, em partes |
source-create-class | Gera a estrutura de uma nova classe C++ (header e source) |
source-update | Edita um arquivo de código-fonte |
source-delete | Exclui um arquivo de código-fonte |
source-list | Lista os arquivos de código-fonte do módulo |
source-compile | Compila com o Live Coding quando ele está ativo, caso contrário com o Unreal Build Tool, e retorna um relatório de erros estruturado |
Todas as operações de arquivo são limitadas a <Project>/Source/. Exemplo: "Crie um componente C++ UHealthComponent com MaxHealth e uma função TakeDamage, compile e corrija quaisquer erros."
Família Python
| Ferramenta | O que faz |
|---|---|
python-execute | Executa Python no editor com o módulo unreal já importado |
A última expressão é retornada como resultado, a saída de print volta como logs e os erros apontam para a linha que falhou. include adiciona arquivos ou pastas auxiliares de <Project>/.ai-game-dev/snippets, e timeout (padrão de 30 segundos) interrompe um script descontrolado. O plugin habilita o Python Editor Script Plugin do Unreal; o Python é exclusivo do editor e nunca vai junto em um jogo empacotado. A ligação de grafos de Blueprint não é exposta ao Python; use as ferramentas de Blueprint ou o RQL para isso.
Você também pode executar Python a partir de um terminal com unreal-mcp-cli exec, veja a referência da CLI.
Família de capturas de tela
| Ferramenta | O que ela faz |
|---|---|
screenshot-viewport | Captura o viewport ativo do editor |
screenshot-game-view | Captura a visão de jogo do Play In Editor |
screenshot-camera | Renderiza a partir de um ator de câmera |
screenshot-isolated | Renderiza um único ator isoladamente |
As imagens voltam como conteúdo PNG que o modelo pode examinar, 1024 pixels por padrão e no máximo 2048 por lado. Elas exigem um editor com GPU; em -nullrhi retornam um erro. Exemplo: "Tire uma captura de tela de CameraActor_Main e me diga se a iluminação está escura demais."
Console e lista de ferramentas
| Ferramenta | O que ela faz |
|---|---|
console-run-command | Executa um comando de console do Unreal ou define uma variável de console |
unreal-tool-list | Lista todas as ferramentas, incluindo as ocultas, com filtro opcional, descrições e entradas |
A leitura do log, do estado do Play In Editor e da seleção passa pelo RQL.
Ferramentas que o agente nunca vê
Algumas ferramentas de sistema atendem à CLI e ao app e não são mostradas aos agentes de IA:
ping: verifica a cadeia de plugin, bridge e servidor.unreal-skill-generate: grava umSKILL.mdpor ferramenta em uma pasta de skills (padrão.claude/skills); o botão Generate skill files usa essa ferramenta.unreal-skill-create: gera um novo arquivo de ferramenta em C++ no módulo de editor do plugin. É preciso ter o plugin instalado a partir do código-fonte e recompilar o editor antes que a ferramenta funcione.editor-quit: salva e fecha um editor iniciado por uma sessão da CLI.
Prompts e recursos
O plugin também traz um prompt MCP, level-design-brief (um briefing de level design a partir de um tema), e dois recursos: unreal://project/levels (um snapshot JSON do mundo ativo e seus níveis) e unreal://project/icon.
Controle o que o agente vê
Oculte as ferramentas de que você não precisa na janela MCP Tools, ou sirva apenas um conjunto fixo com UNREAL_MCP_TOOLS. Veja Configuração. Para adicionar capacidades, instale extensões ou escreva ferramentas personalizadas.
Somente no editor
Todas as 27 ferramentas controlam o editor. Várias são poderosas (rql-mutate, console-run-command, python-execute), então nenhuma delas é compilada em um jogo empacotado. Um jogo que opta por uma conexão em tempo de execução expõe apenas as ferramentas que ele mesmo registra.
Dicas para aproveitar ao máximo essas ferramentas estão em Boas práticas para Unreal.