Unity MCP (Server + Plugin)
Unity-Version | Bearbeitungsmodus | Spielmodus | Standalone |
2022.3.61f1 | |||
2023.2.20f1 | |||
6000.0.46f1 |
Unity-MCP bildet die Brücke zwischen LLM und Unity. Es stellt LLM die Unity-Tools vor und erklärt sie. LLM versteht die Benutzeroberfläche und nutzt die Tools benutzerspezifisch.
Verbinden Sie Unity-MCP über das integrierte AI Connector Fenster mit LLM-Clients wie Claude oder Cursor . Benutzerdefinierte Clients werden ebenfalls unterstützt.
Das Projekt ist so konzipiert, dass Entwickler bald benutzerdefinierte Tools hinzufügen können. Anschließend ist das nächste Ziel, dieselben Funktionen im Player-Build zu aktivieren. Derzeit funktioniert dies nur im Unity Editor.
Das System ist erweiterbar: Sie können benutzerdefinierte tool direkt in Ihrem Unity-Projektcode definieren und so den KI- oder Automatisierungs-Clients neue Funktionen bereitstellen. Dies macht Unity-MCP zu einer flexiblen Grundlage für die Erstellung fortschrittlicher Workflows, schnelles Prototyping oder die Integration KI-gesteuerter Funktionen in Ihren Entwicklungsprozess.
KI-Tools
Spielobjekt
✅ Erstellen
✅ Zerstören
✅ Finden
✅ Ändern (Tag, Ebene, Name, statisch)
✅ Übergeordnetes Element festlegen
✅ Duplizieren
GameObject.Komponenten
✅ Komponente hinzufügen
✅ Komponenten erhalten
✅ Komponente ändern
✅
Field
✅
Propertyfestlegen
✅
Reference-Link-Set
✅ Komponente zerstören
🔲 Fehlende Komponenten entfernen
Editor
✅ Status (Spielmodus)
✅ Holen
✅ Set
✅ Holen Sie sich Windows
✅ Schicht
✅ Alle holen
✅ Hinzufügen
✅ Entfernen
✅ Tag
✅ Alle holen
✅ Hinzufügen
✅ Entfernen
✅
MenuItemausführen🔲 Tests durchführen
Editor.Auswahl
✅ Auswahl erhalten
✅ Auswahl festlegen
Fertigobjekte
✅ Instanziieren
🔲 Erstellen
✅ Geöffnet
✅ Ändern (GameObject.Modify)
✅ Sparen
✅ Schließen
Paket
🔲 Installieren
🔲 Installieren
🔲 Entfernen
🔲 Aktualisieren
Vermögenswerte
✅ Erstellen
✅ Finden
✅ Aktualisieren
✅ Lesen
✅ Ändern
✅ Umbenennen
✅ Löschen
✅ Bewegen
✅ Ordner erstellen
Szene
✅ Erstellen
✅ Sparen
✅ Laden
✅ Entladen
✅ Laden Sie sich auf
✅ Hierarchie abrufen
🔲 Suche (Editor)
🔲 Raycast (Lautstärke verstehen)
Materialien
✅ Erstellen
✅ Ändern (Assets.Modify)
✅ Lesen (Assets.Read)
✅ Einer Komponente auf einem GameObject zuweisen
Shader
✅ Alle auflisten
Skripte
✅ Lesen
✅ Aktualisieren oder Erstellen
✅ Löschen
Skriptfähiges Objekt
🔲 Erstellen
🔲 Lesen
🔲 Ändern
🔲 Entfernen
Debuggen
🔲 Protokolle lesen (Konsole)
Komponente
✅ Alle holen
Legende: ✅ = Implementiert & verfügbar, 🔲 = Geplant / Noch nicht implementiert
Installation
Öffnen Sie die Befehlszeile im Unity-Projektordner
Führen Sie den Befehl aus
Verwendung
Stellen Sie sicher, dass Ihr Projektpfad kein Leerzeichen „ “ enthält.
✅
C:/MyProjects/Project❌
C:/My Projects/Project
Öffnen Sie das Unity-Projekt und gehen Sie zu 👉
Window/AI Connector (Unity-MCP).
MCP-Client installieren
Cursor installieren (empfohlen)
Melden Sie sich beim MCP-Client an
Klicken Sie in Ihrem MCP-Client auf
Configure.
Starten Sie Ihren MCP-Client neu.
Stellen Sie sicher, dass
AI Connectornach dem Neustart „Verbunden“ oder „Verbinden…“ ist.Teste die KI-Verbindung in deinem Client (Cursor, Claude Desktop). Schreibe eine beliebige Frage oder Aufgabe in den Chat. Zum Beispiel:
Benutzerdefiniertes tool hinzufügen
⚠️ Es funktioniert nur mit einem MCP-Client, der die dynamische Aktualisierung der Werkzeugliste unterstützt.
Unity-MCP wurde entwickelt, um die Entwicklung benutzerdefinierter tool durch den Projektverantwortlichen zu unterstützen. Der MCP-Server greift Daten vom Unity-Plugin ab und stellt sie einem Client zur Verfügung. So erhält jeder in der MCP-Kommunikationskette Informationen über ein neues tool . LLM kann dies gegebenenfalls später aufrufen.
Um ein benutzerdefiniertes tool hinzuzufügen, benötigen Sie:
Um eine Klasse mit dem Attribut
McpPluginToolTypezu haben.Um eine Methode in der Klasse mit dem Attribut
McpPluginToolzu haben.[optional] Fügen Sie jedem Methodenargument ein
Descriptionhinzu, damit LLM es versteht.[optional] Verwenden Sie die Eigenschaften
string? optional = nullmit?und Standardwert, um sie für LLM alsoptionalzu markieren.
Beachten Sie, dass die Zeile
MainThread.Run(() =>die Ausführung des Codes im Hauptthread ermöglicht, der für die Interaktion mit der Unity-API erforderlich ist. Wenn Sie dies nicht benötigen und die Ausführung des Tools im Hintergrundthread für das Tool in Ordnung ist, verwenden Sie aus Effizienzgründen nicht den Hauptthread.
Benutzerdefiniertes In-Game tool hinzufügen
⚠️ Noch nicht unterstützt. Die Arbeit ist in Arbeit
Beitrag
Fügen Sie dem Projekt gerne neue tool hinzu.
Forken Sie das Projekt.
Implementieren Sie ein neues
toolin Ihrem gegabelten Repository.Erstellen Sie eine Pull-Anfrage im ursprünglichen Unity-MCP- Repository.