/ Diretório / Playground / Unity-MCP
● Comunidade IvanMurzak ⚡ Instantâneo

Unity-MCP

por IvanMurzak · IvanMurzak/Unity-MCP

Loop completo de desenvolvimento e testes alimentado por IA para Unity com 100+ ferramentas, execução de C# com Roslyn, e um CLI para configuração rápida.

IvanMurzak/Unity-MCP é um plugin Unity + servidor MCP que expõe uma ampla superfície (cenas, GameObjects, componentes, prefabs, materiais, pacotes, capturas de tela, testes, execução de C# com Roslyn) para qualquer cliente MCP. Enfatiza eficiência de tokens e uma camada de IA Skills em cima de ferramentas brutas.

Por que usar

Principais recursos

Demo ao vivo

Como fica na prática

unity-2.replay ▶ pronto
0/0

Instalar

Escolha seu cliente

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "unity-2": {
      "command": "TODO",
      "args": [
        "See README: https://github.com/IvanMurzak/Unity-MCP"
      ],
      "_inferred": true
    }
  }
}

Abra Claude Desktop → Settings → Developer → Edit Config. Reinicie após salvar.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "unity-2": {
      "command": "TODO",
      "args": [
        "See README: https://github.com/IvanMurzak/Unity-MCP"
      ],
      "_inferred": true
    }
  }
}

Cursor usa o mesmo esquema mcpServers que o Claude Desktop. Config de projeto vence a global.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "unity-2": {
      "command": "TODO",
      "args": [
        "See README: https://github.com/IvanMurzak/Unity-MCP"
      ],
      "_inferred": true
    }
  }
}

Clique no ícone MCP Servers na barra lateral do Cline, depois "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "unity-2": {
      "command": "TODO",
      "args": [
        "See README: https://github.com/IvanMurzak/Unity-MCP"
      ],
      "_inferred": true
    }
  }
}

Mesmo formato do Claude Desktop. Reinicie o Windsurf para aplicar.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "unity-2",
      "command": "TODO",
      "args": [
        "See README: https://github.com/IvanMurzak/Unity-MCP"
      ]
    }
  ]
}

O Continue usa um array de objetos de servidor em vez de um map.

~/.config/zed/settings.json
{
  "context_servers": {
    "unity-2": {
      "command": {
        "path": "TODO",
        "args": [
          "See README: https://github.com/IvanMurzak/Unity-MCP"
        ]
      }
    }
  }
}

Adicione em context_servers. Zed recarrega automaticamente ao salvar.

claude mcp add unity-2 -- TODO 'See README: https://github.com/IvanMurzak/Unity-MCP'

Uma linha só. Verifique com claude mcp list. Remova com claude mcp remove.

Casos de uso

Usos do mundo real: Unity-MCP

Como processar em lote ativos importados com um único prompt

👤 Artistas técnicos de Unity ⏱ ~25 min intermediate

Quando usar: Você tem 200 novas texturas e quer configurações de importação consistentes, mip maps e posicionamento de atlas.

Pré-requisitos
  • Projeto Unity aberto, plugin instalado — unity-mcp-cli install-plugin ./MyUnityProject ou importar o .unitypackage
  • Um cliente MCP configurado — Aponte Claude Desktop ou Cursor para o servidor MCP local impresso pelo CLI
Fluxo
  1. Auditar configurações atuais
    Liste cada textura em Assets/Textures/UI. Mostre as configurações atuais de TextureImporter agrupadas pelos valores usados.✓ Copiado
    → Grupos por configurações — principalmente consistentes com outliers marcados
  2. Aplicar uma política
    Para todos eles, defina compression=HighQuality, filter=Bilinear, mipmaps=false. Reimporte.✓ Copiado
    → Log de progresso + estado final consistente
  3. Verificar visualmente
    Tire uma screenshot da Scene MainMenu da câmera padrão — confirme que nada está quebrado.✓ Copiado
    → Screenshot retornada, verificação de sanidade passa

Resultado: Configurações de importação uniformes em uma pasta + um rastro de screenshots.

Armadilhas
  • Reimportação bloqueia o recarregamento do domínio do editor — Salve a cena primeiro; não emita comandos não relacionados até que a reimportação seja concluída
Combine com: filesystem

Como executar um snippet C# único no Editor sem escrever um script

👤 Desenvolvedores Unity fazendo limpeza descartável ⏱ ~15 min advanced

Quando usar: Você quer iterar por cada prefab e corrigir uma referência quebrada — uma única vez.

Fluxo
  1. Descrever o snippet
    Execute C# via Roslyn: itere cada prefab em Assets/Prefabs, encontre componentes MissingScript, liste o prefab + guid do script ausente.✓ Copiado
    → Relatório de prefabs ruins
  2. Aplicar a correção
    Agora remova esses componentes MissingScript e salve cada prefab.✓ Copiado
    → Contagem de prefabs atualizada

Resultado: Um projeto livre de avisos de script ausente.

Armadilhas
  • A execução Roslyn tem poder total do editor — um snippet ruim pode corromper o projeto — Faça commit no git antes de executar; revise o snippet de código antes de executar
Combine com: github

Como fazer triagem de regressão visual via screenshots

👤 QA, devs solo ⏱ ~10 min beginner

Quando usar: Um testador diz 'o menu está errado' e você quer uma imagem de referência rápido.

Fluxo
  1. Abrir a cena suspeita
    Abra a scene MainMenu e tire uma screenshot da câmera de UI em 1920x1080.✓ Copiado
    → Caminho do arquivo screenshot retornado
  2. Comparar com uma referência
    Aqui está a imagem golden [attach]. Descreva as diferenças.✓ Copiado
    → Chamadas específicas (deslocamentos, cores, elementos ausentes)

Resultado: Um relatório de bug com evidência de imagem anexada.

Combine com: github

Combinações

Combine com outros MCPs para 10× de alavancagem

unity-2 + github

Automatizar refatorações + commit + PR do chat

Renomeie o campo PlayerController.Speed para MoveSpeed em todos os lugares, execute os testes, faça commit e abra um PR.✓ Copiado
unity-2 + filesystem

Importar modelos 3D externos para o projeto

Mova cada .fbx de ~/Downloads/kenney/ para Assets/Models/ e defina-os como leitura/escrita desabilitada.✓ Copiado

Ferramentas

O que este MCP expõe

FerramentaEntradasQuando chamarCusto
scene_open path: str Carregue uma cena antes de inspeção ou edições gratuito
gameobject_find query: str Localizar objetos gratuito
component_add target, type, values? Anexar componentes gratuito
script_create path, body Novo arquivo C# gratuito
csharp_execute code: str Automação única do editor gratuito
test_run mode: 'Edit'|'Play', filter? Executar testes de unidade/jogo gratuito
screenshot camera?: str, resolution?: {w,h} Verificação visual gratuito
console_read since_ms? Verificar erros após alterações gratuito

Custo e limites

O que custa rodar

Cota de API
Nenhuma API remota — tudo local
Tokens por chamada
Listagens de cena podem crescer grandes; limite com filtros
Monetário
Gratuito, código aberto
Dica
Prefira consultas estreitas (gameobject_find 'Enemy*') em vez de despejos de hierarquia completa.

Segurança

Permissões, segredos, alcance

Escopos mínimos: Escrita de sistema de arquivos local para o projeto
Armazenamento de credenciais: Nenhum — apenas localhost
Saída de dados: Localhost. Seu provedor de LLM recebe todo o conteúdo de cena/script que a ferramenta retorna.
Nunca conceda: Não exponha a porta HTTP do MCP para interfaces não-loopback

Solução de problemas

Erros comuns e correções

Caminho do projeto contém espaços: ferramentas falham

Mova o projeto para um caminho sem espaços. Esta é uma limitação documentada.

CLI não consegue encontrar Unity

Defina a variável de ambiente UNITY_EDITOR_PATH para o binário do editor.

Verificar: $UNITY_EDITOR_PATH -version
csharp_execute lança 'tipo não encontrado'

Unity deve ter compilado com sucesso antes da execução. Corrija primeiro o console em vermelho e atualize.

Alternativas

Unity-MCP vs. outros

AlternativaQuando usarTroca
MCP for Unity (CoplayDev)Você quer a opção mais popular com uma grande superfície de ferramentasNenhuma execução arbitrária de C# baseada em Roslyn
mcp-unity (CoderGamester)Superfície mais simples focada em cenas/testesMenos ferramentas avançadas

Mais

Recursos

📖 Leia o README oficial no GitHub

🐙 Ver issues abertas

🔍 Ver todos os 400+ servidores MCP e Skills