Servidor MCP para Unreal: Blueprints e configuração do Claude, passo a passo

Configure um servidor MCP para Unreal para que o Claude crie Blueprints, faça spawn de atores e edite assets dentro de um editor do Unreal Engine 5 aberto. Escolha um servidor, ative os plugins, escreva a configuração do Claude Code ou do Desktop e corrija os erros de conexão mais comuns.

Servidor MCP para Unreal: Blueprints e configuração do Claude, passo a passo
Cristian Da Conceicao
Fundador do Picasso IA

Você digita uma frase numa janela de chat, e um asset de Blueprint aparece no seu Content Browser. Essa é a promessa de um servidor MCP para Unreal: um pequeno programa de ponte que permite ao Claude conversar com um editor do Unreal Engine em execução, pelo Model Context Protocol. A promessa é real, mas a configuração tem armadilhas. Você lida com dois plugins do editor, uma ou duas portas, um arquivo JSON e alguns limites que ninguém menciona até topar com eles. Este artigo percorre a cadeia inteira, desde ativar os plugins certos até escrever prompts que geram Blueprints limpos, e é honesto sobre o que o Claude ainda não consegue fazer dentro de um grafo de Blueprint.

O que um servidor MCP para Unreal faz

Um servidor MCP é um programa que expõe ferramentas para um cliente de IA. O Claude enxerga um menu com opções como "criar Blueprint", "instanciar ator" ou "executar script no editor", e escolhe deste menu sempre que seu prompt exige uma ação dentro da engine. A parte do Unreal é simples, porque o editor já vem com maneiras de aceitar comandos externos. O servidor traduz as chamadas de ferramenta do Claude em esses comandos e devolve a resposta do editor.

As três peças em movimento

Vista de cima de um notebook, um switch de rede e um diagrama desenhado à mão com três caixas sobre uma mesa de carvalho

Toda configuração tem as mesmas três peças, qualquer que seja o servidor escolhido:

PeçaO que éOnde roda
Cliente ClaudeClaude Code ou Claude DesktopNa sua máquina
Servidor MCPUm programa-ponte em Python ou NodeNa sua máquina, iniciado pelo cliente
Editor do UnrealPlugin Python mais execução remota ou a Remote Control APINa sua máquina, com um projeto aberto

O cliente inicia o servidor como um processo filho e conversa com ele pela entrada e saída padrão. Em seguida, o servidor alcança o editor por localhost. Nada sai do seu computador, exceto os prompts que você envia ao próprio Claude.

Por que não colar código

Sem uma ponte, você pede ao Claude um script em Python, copia, cola no console Python do editor, lê o erro e copia o erro de volta. Com o servidor, o Claude executa o script sozinho, lê a resposta do editor e corrige os próprios erros. O ciclo se fecha sem você no meio.

  • O Claude vê o resultado real, então um caminho de asset errado é corrigido na hora
  • Tarefas repetitivas, como renomear 200 assets, viram um único prompt
  • Suas mãos ficam dentro do editor enquanto o chat cuida do trabalho de configuração

Os melhores servidores vão muito além das tarefas com assets. A página do UEMCP diz que o Claude pode instanciar atores, construir materiais, criar Blueprints, gerenciar assets, controlar a câmera da viewport e tirar capturas de tela, tudo a partir de uma conversa. As capturas importam mais do que parece: quando o seu cliente aceita resultados em imagem, o Claude consegue olhar a viewport depois de uma mudança e conferir o resultado com o seu pedido, em vez de confiar só numa mensagem de sucesso.

Escolha primeiro o servidor certo

Existem vários servidores de código aberto, e eles alcançam a engine por três caminhos diferentes. Escolha pela forma como você gosta de trabalhar, não pela popularidade.

Três cabos enrolados espalhados sobre uma bancada de concreto sob luz da manhã

Servidores de execução remota em Python

O UEMCP é o exemplo mais claro. Ele fala o protocolo de execução remota em Python que já vem embutido na engine, o mesmo lookup multicast e canal de comandos TCP que acompanha o Unreal. Sua página no PyPI lista o Unreal Engine 5.0 a 5.6 e o Python 3.10 ou mais recente, e expõe ferramentas de Blueprint para criar um Blueprint, adicionar um componente e definir uma propriedade padrão. Nada para compilar.

Servidores com a Remote Control API

O unreal-engine-mcp segue pela rota HTTP. Ele combina a Remote Control API com Python dentro do editor, escuta na porta 30010 por padrão, e sua página lista 162 ferramentas, incluindo importação de assets, criação de níveis, grafos de materiais, geração de classes em C++ e empacotamento. Ele informa ter sido testado no Unreal Engine 5.8. Também nada para compilar.

Servidores com plugin em C++

Alguns projetos trazem um plugin em C++ que abre um socket dentro do editor, e um servidor em Python se conecta a esse socket. Você ganha acesso mais profundo, porque o código do plugin alcança partes internas do editor que o Python não alcança. O preço é uma compilação para cada versão da engine. O plugin UnrealMCP funciona assim: você o coloca na pasta Plugins do seu projeto, executa o script de configuração e aponta o Claude Desktop para o seu script de execução.

RotaPrecisa compilarConexãoMelhor para
Execução remota em PythonNãoLookup UDP multicast, depois TCPConfiguração rápida, tarefas com assets
Remote Control APINãoHTTP na porta 30010Listas longas de ferramentas, construção de níveis
Plugin em C++SimSocket TCP personalizadoAcesso profundo ao editor

💡 Escolha rápida: Se você nunca usou um servidor MCP, siga pela rota de execução remota em Python. Ela precisa de um comando no Claude Code e de nenhum compilador. Passe para um plugin em C++ só quando bater numa parede que o Python não consegue atravessar.

Prepare o editor do Unreal

As duas rotas sem compilação dependem de plugins que já vêm com a engine. Ative-os uma vez por projeto. Antes de tudo, confira a versão da sua engine contra a faixa listada pelo servidor: o UEMCP lista 5.0 a 5.6, enquanto o servidor com Remote Control informa testes na 5.8. Numa versão fora da lista, espere que algumas chamadas da API Python se comportem de forma diferente.

💡 Use um projeto de testes: Faça sua primeira sessão num projeto em branco com a mesma versão da engine. Um nível descartável não custa nada, e qualquer surpresa fica longe dos seus assets reais.

Desenvolvedor de moletom cinza em uma mesa em pé, com luz da tarde marcando a parede

Ative os plugins

  1. Abra Edit ▸ Plugins no editor.
  2. Procure Python Editor Script Plugin e marque a caixa.
  3. Na rota com Remote Control, procure também Remote Control API e marque a caixa.
  4. Reinicie o editor quando ele pedir.
  5. Abra Edit ▸ Project Settings, procure "remote execution" e ative Enable Remote Execution.

A configuração fica no config do seu projeto, então você faz isso uma vez só. Faça commit da mudança de config no controle de versão para que os colegas herdem a alteração.

Inicie o servidor web

A rota com Remote Control precisa do servidor HTTP em execução. Abra o console no Output Log e execute:

WebControl.StartServer

O servidor responde na porta 30010, a não ser que você a tenha alterado. Mantenha o editor aberto e ocioso enquanto testa: os comandos rodam dentro do editor, então um editor ocupado compilando shaders responde devagar. O timeout padrão do UEMCP é de 120 segundos por comando, o que é generoso, mas não infinito.

Conecte o Claude ao editor

Mulher de jaqueta jeans digitando em um notebook numa mesa de café iluminada pelo sol

Com o editor pronto, registre o servidor no seu cliente Claude. Escolha o cliente que você já usa.

Claude Code em um comando

Para a rota de execução remota em Python:

claude mcp add unreal -- uvx uemcp

Para a rota com Remote Control:

claude mcp add unreal-mcp -- python -m unreal_mcp.server

O primeiro comando precisa do uv instalado, porque uvx executa o pacote sem instalação manual. Execute claude mcp list para confirmar que o servidor está registrado, ou digite /mcp dentro de uma sessão para ver o status da conexão.

Configuração JSON do Claude Desktop

Abra Settings ▸ Developer ▸ Edit Config. No Windows, o arquivo fica em %APPDATA%\Claude\claude_desktop_config.json. Adicione uma entrada em mcpServers:

{
  "mcpServers": {
    "unreal": {
      "command": "uvx",
      "args": ["uemcp"]
    }
  }
}

Para o servidor com Remote Control, passe a porta por uma variável de ambiente:

{
  "mcpServers": {
    "unreal-mcp": {
      "command": "python",
      "args": ["-m", "unreal_mcp.server"],
      "env": { "UE_MCP_PORT": "30010" }
    }
  }
}

Feche o Claude Desktop por completo, não só a janela, e depois abra-o de novo.

💡 Cuidado com as vírgulas: Uma vírgula sobrando ou uma chave faltando torna o arquivo inteiro inválido, e o servidor simplesmente nunca aparece. Cole o arquivo em qualquer validador de JSON antes de reiniciar.

Teste com um prompt simples

Abra antes um projeto no editor e depois pergunte:

Liste os atores do nível atual e me diga quantos deles são luzes.

Se o Claude responder com nomes que batem com o seu World Outliner, a cadeia funciona. Se ele disser que não tem ferramentas do Unreal, o cliente nunca carregou o servidor, então revise a configuração antes de mexer no editor.

Crie Blueprints pelo chat

Quando a conexão se mantém, o trabalho útil começa. Um Blueprint é uma classe, e criar uma classe com componentes e valores padrão é exatamente o tipo de tarefa estruturada que o Claude faz bem por meio de chamadas de ferramenta.

Mão segurando um marcador azul ao lado de um fluxograma desenhado à mão num quadro branco de vidro

O que o Claude consegue construir hoje

Pelos servidores baseados em Python, as tarefas confiáveis incluem:

  • Criar uma classe de Blueprint a partir de uma classe pai como Actor, Pawn ou Character
  • Adicionar componentes: static meshes, colisão em caixa e esfera, luzes pontuais
  • Definir valores padrão para variáveis, meshes, materiais e predefinições de colisão
  • Instanciar Blueprints no nível aberto em posições exatas
  • Criar materiais e data assets e salvá-los

Aqui está um prompt que exercita a maior parte dessa lista:

Create an Actor Blueprint at /Game/Blueprints/BP_Pickup.
Add a StaticMesh component named PickupMesh using the engine Sphere mesh,
and a SphereCollision component named PickupTrigger with radius 120.
Set PickupMesh scale to 0.5 on every axis.
Then spawn three instances in the open level, 400 units apart along X.
Report the asset path and actor names when you are done.

O Claude divide isso em várias chamadas de ferramenta, verifica cada resposta e tenta de novo quando o editor devolve um erro. Você vê os assets aparecendo no Content Browser conforme ele trabalha.

Uma boa primeira sessão tem quatro etapas:

  1. Peça um relatório somente de leitura, como "liste todos os Blueprints em /Game/Blueprints".
  2. Peça um Blueprint novo com dois componentes.
  3. Abra-o no editor e compare com o que o Claude informou.
  4. Peça uma pequena edição, como um raio de esfera maior, e confirme o valor no painel Details.

Se as quatro etapas funcionarem, você sabe que o pipeline lê, escreve e verifica. Só então peça trabalhos maiores, como decorar uma sala inteira com props.

Onde os grafos de Blueprint param

Aqui está o limite que a maioria dos tutoriais deixa de lado. A documentação de um dos servidores afirma claramente que os grafos de nós de Blueprint não podem ser criados a partir do Python. Componentes, valores padrão e variáveis funcionam bem. Conectar um Event Graph nó por nó não é confiável nessa rota.

Dois artistas de games revisando um nível em um monitor num loft de paredes de tijolo

A solução alternativa é uma divisão limpa de trabalho. O Claude escreve a lógica numa classe pai em C++, expondo-a com UFUNCTION(BlueprintCallable) e BlueprintImplementableEvent. Você compila. Depois, o Claude cria um Blueprint filho, define seus valores padrão e o posiciona no nível. O grafo fica pequeno porque a lógica real está em C++.

TarefaRota só com PythonCom uma classe pai em C++
Adicionar componentesConfiávelConfiável
Definir valores padrãoConfiávelConfiável
Conectar nós do Event GraphNão confiávelChama funções em C++
Lógica reutilizávelDifícil de compartilharFica em uma única classe

Servidores mais novos anunciam leitura e edição diretas de grafos de Blueprint em versões recentes da engine. Trate isso como algo promissor e teste numa cópia do seu projeto antes de confiar nisso para trabalho real.

Prompts que funcionam no Unreal

Mão escrevendo uma lista curta em um caderno com caneta-tinteiro ao lado de um calendário de mesa

O servidor faz a digitação. Seu prompt ainda decide o resultado. Estes hábitos reduzem bastante a taxa de novas tentativas:

  • Nomeie cada asset e cada caminho. "BP_Pickup em /Game/Blueprints" é melhor do que "um pickup".
  • Peça uma mudança de cada vez. Passos pequenos são fáceis de verificar e fáceis de desfazer.
  • Termine com um pedido de relatório. "Liste o que você alterou" lhe dá uma checklist para comparar com o editor.
  • Informe a versão da engine. Os nomes da API Python mudam entre versões, então diga "Unreal 5.6" logo no início.
  • Adie o salvamento. Peça ao Claude que espere antes de salvar todos os assets até você revisar o resultado.
  • Faça commit antes. Use Git com LFS ou Perforce, e faça commit antes de cada sessão para que uma execução ruim fique a um revert de distância.
Prompt vagoPrompt melhor
"Faça uma porta""Crie BP_Door em /Game/Props com um componente de static mesh chamado DoorMesh e um gatilho em caixa de 200 unidades de largura. Informe o caminho."
"Conserte minha iluminação""Liste cada luz do nível com sua intensidade e mobilidade. Não mude nada ainda."
"Limpe os assets""Liste as texturas em /Game/Textures maiores que 4096 pixels. Não apague nada."

💡 Modelo de quatro linhas: Objetivo, caminho do asset, restrições, o que informar. Use-o sempre e seus prompts ficam curtos e precisos.

Sessões longas perdem o rumo. Depois de 20 ou 30 chamadas de ferramenta, o Claude pode perder a noção de quais assets existem e começar a chutar caminhos. Quando isso acontecer, abra um chat novo e cole um resumo curto do estado atual: as pastas em uso, os nomes dos Blueprints e a regra de nomenclatura. Um resumo de dez linhas vale mais do que um histórico de duas horas.

Corrija problemas de conexão rapidamente

Mãos conectando um cabo ethernet a um roteador compacto numa prateleira de home office

A maioria das falhas cai em alguns padrões:

SintomaCausa provávelCorreção
Servidor ausente no ClaudeJSON inválido, ou uvx e python fora do PATHValide o JSON, execute uvx --version, reinicie o cliente
Nenhuma resposta HTTPServidor web não está em execuçãoExecute WebControl.StartServer no console do editor
Comandos rejeitadosExecução remota desativadaRevise Enable Remote Execution e reinicie o editor
TimeoutsEditor ocupado com shaders ou carregamento de nívelEspere o editor ficar ocioso e tente de novo
Porta já em usoOutro app usa a 30010Altere UE_MCP_PORT e a porta do Remote Control para coincidirem
Editor nunca encontradoFirewall ou VPN bloqueia o multicastLibere UDP em 239.0.0.1:6766 ou pause a VPN

Quando algo falhar, leia primeiro o Output Log do editor. Erros Python de comandos remotos aparecem ali, e o Claude costuma precisar desse texto exato para resolver o problema. Se o seu cliente não repassou o erro, cole-o no chat você mesmo.

A documentação de um dos servidores também aponta para bEnableRemotePythonExecution=True em DefaultRemoteControl.ini quando a execução remota continua bloqueada, então verifique esse arquivo se a checklist acima não resolver.

Proteja a conexão

A própria página do UEMCP alerta que o protocolo de execução remota não tem autenticação. Qualquer um que consiga alcançar a porta pode executar Python dentro do seu editor. Mantenha a conexão em localhost, nunca exponha as portas em Wi-Fi de escritório compartilhado e crie uma regra de firewall se sua máquina estiver numa rede que você não controla. O Claude Code também pede permissão antes de chamadas de ferramenta, então leia com atenção qualquer pedido que execute Python arbitrário antes de aprovar.

Experimente com o PicassoIA

Um projeto do Unreal precisa de mais do que Blueprints. Ele precisa de especificações de design, briefings de nível e referências visuais, e o PicassoIA cuida dessa parte no navegador.

Fotografias impressas de ruínas de pedra e uma trilha na floresta espalhadas ao lado de um caderno de desenho sobre a mesa

Use o Claude Sonnet 5 no PicassoIA

Planeje o sistema no PicassoIA primeiro e depois leve o resultado organizado para a sua sessão do Unreal. Esta é a rotina com o Claude Sonnet 5:

  1. Abra a página do Claude Sonnet 5 no PicassoIA.
  2. Descreva o objetivo com palavras simples: "Um ator de pickup que gira, toca um som e se destrói ao entrar em sobreposição. Unreal 5.6."
  3. Peça uma especificação numerada listando componentes, variáveis, eventos e caminhos de assets.
  4. Peça que reescreva cada linha da especificação como um prompt independente que termine com "informe o que você alterou".
  5. Cole esses prompts, um de cada vez, na sua sessão do Claude Code conectada ao servidor MCP do Unreal.

Duas dicas de parâmetros: mantenha o pedido em um único sistema por execução e informe a versão da engine na primeira frase. Para um sistema de gameplay maior, experimente o Claude Fable 5 ou o Claude Opus 4.7, e para rascunhos rápidos de headers em C++, o Gemini 3.5 Flash é ágil.

ModeloBom para
Claude Sonnet 5Especificações, listas de prompts, planos de Blueprint
Claude Fable 5Sistemas de gameplay maiores
Kimi K2.6Tarefas de código no estilo agente
Gemini 3.5 FlashRascunhos rápidos e headers em C++

Crie imagens de referência para os níveis

Antes de pedir ao Claude que construa um pátio, o interior de uma nave ou uma clareira na floresta, dê a todos a mesma imagem do clima desejado. Modelos de imagem no PicassoIA, como o Seedream 5 Pro, o GPT Image 2 e o Flux 2 Pro, transformam uma frase em um quadro de referência fotorrealista em segundos. Eles produzem imagens 2D, então use-as como um briefing visual para iluminação, materiais e decoração de cenário, e depois peça ao Claude que construa o nível para combinar.

Escolha uma cena do seu projeto atual do Unreal e escreva uma descrição de um parágrafo sobre ela. Abra o PicassoIA, gere três imagens de referência a partir desse parágrafo e fique com a que parecer certa. Cole a descrição no seu próximo prompt para o Claude e veja como o primeiro resultado chega mais perto do esperado. Seu pipeline fica mais rápido no momento em que os prompts e as imagens combinam.

Compartilhe este artigo

Escolha seu idioma