Claude как напарник в Unity Editor: создаёт и редактирует GameObject-ы, компоненты, материалы, запускает тесты прямо из разговора. MCP-сервер встраивается в редактор как пакет Unity Package Manager.
# Установка в Unity Editor:
# Window → Package Manager → + → Add package from git URL:
# https://github.com/CoderGamester/mcp-unity.git
# После установки: Tools → MCP Unity → Start Server (запускается на порту 3000)
# Claude Code (CLI) — подключиться к запущенному серверу:
claude mcp add unity --transport sse -- http://localhost:3000/sse
# Claude Desktop — claude_desktop_config.json:
{ "mcpServers": { "unity": { "url": "http://localhost:3000/sse" } } }
| 🇺🇸Английский | 🇨🇳Упрощённый китайский | 🇯🇵Японский |
|---|---|---|
,/(/. *(/,
*/(((((/. *((((((*.
.*((((((((((/. *((((((((((/.
./((((((((((((((/ *((((((((((((((/,
,/(((((((((((((/*. */(((((((((((((/*.
,%%#((/((((((* ,/(((((/(#&@@(
,%%##%%##((((((/*. ,/((((/(#&@@@@@@(
,%%######%%##((/(((/*. .*/(((//(%@@@@@@@@@@@(
,%%####%#(%%#%%##((/((((((((//#&@@@@@@&@@@@@@@@(
,%%####%( /#%#%%%##(//(#@@@@@@@%, #@@@@@@@(
,%%####%( *#%###%@@@@@@( #@@@@@@@(
,%%####%( #%#%@@@@, #@@@@@@@(
,%%##%%%( #%#%@@@@, #@@@@@@@(
,%%%#* #%#%@@@@, *%@@@(
., ,/##*. #%#%@@@@, ./&@#* *`
,/#%#####%%#/, #%#%@@@@, ,/&@@@@@@@@@&\.
`*#########%%%%###%@@@@@@@@@@@@@@@@@@&*´
`*%%###########%@@@@@@@@@@@@@@&*´
`*%%%######%@@@@@@@@@@&*´
`*#%%##%@@@@@&*´
`*%#%@&*´
███╗ ███╗ ██████╗██████╗ ██╗ ██╗███╗ ██╗██╗████████╗██╗ ██╗
████╗ ████║██╔════╝██╔══██╗ ██║ ██║████╗ ██║██║╚══██╔══╝╚██╗ ██╔╝
██╔████╔██║██║ ██████╔╝ ██║ ██║██╔██╗ ██║██║ ██║ ╚████╔╝
██║╚██╔╝██║██║ ██╔═══╝ ██║ ██║██║╚██╗██║██║ ██║ ╚██╔╝
██║ ╚═╝ ██║╚██████╗██║ ╚██████╔╝██║ ╚████║██║ ██║ ██║
╚═╝ ╚═╝ ╚═════╝╚═╝ ╚═════╝ ╚═╝ ╚═══╝╚═╝ ╚═╝ ╚═╝
MCP Unity — это реализация протокола контекста модели (Model Context Protocol) для редактора Unity, позволяющая ИИ-ассистентам взаимодействовать с вашими проектами Unity. Этот пакет предоставляет мост между Unity и сервером на Node.js, реализующим протокол MCP, что позволяет таким ИИ-агентам, как Cursor, Windsurf, Claude Code, Codex CLI, GitHub Copilot, Google Antigravity и OpenCode, выполнять операции в редакторе Unity.
MCP Unity обеспечивает автоматическую интеграцию с IDE, совместимыми с VSCode (Visual Studio Code, Cursor, Windsurf, Google Antigravity), путём добавления папки Unity Library/PackedCache в ваше рабочее пространство. Эта функция:
Для управления и запроса сцен и игровых объектов Unity через MCP доступны следующие инструменты:
execute_menu_item: Выполняет пункты меню Unity (функции, помеченные атрибутом MenuItem)
Пример запроса: «Выполни пункт меню 'GameObject/Create Empty', чтобы создать новый пустой GameObject»
select_gameobject: Выбирает игровые объекты в иерархии Unity по пути или ID экземпляра
Пример запроса: «Выбери объект Main Camera в моей сцене»
update_gameobject: Обновляет основные свойства GameObject (имя, тег, слой, состояние активности/статичности) или создает GameObject, если он не существует
Пример запроса: «Установи тег объекта Player как 'Enemy' и сделай его неактивным»
update_component: Обновляет поля компонента GameObject или добавляет его к GameObject, если компонент отсутствует
Пример запроса: «Добавь компонент Rigidbody к объекту Player и установи его массу как 5»
`add_package**: Устанавливает новые пакеты в Unity Package Manager
Пример запроса: «Добавь пакет TextMeshPro в мой проект»
run_tests: Запускает тесты с помощью Unity Test Runner
Пример запроса: «Запусти все тесты EditMode в моем проекте»
send_console_log: Отправляет журнал консоли в Unity
Пример запроса: «Отправь журнал консоли в Unity Editor»
add_asset_to_scene: Добавляет ассет из базы данных ассетов в сцену Unity
Пример запроса: «Добавь префаб Player из моего проекта в текущую сцену»
create_prefab: Создает префаб с опциональным скриптом MonoBehaviour и значениями сериализованных полей
Пример запроса: «Создай префаб с именем 'Player' из скрипта 'PlayerController'»
create_scene: Создает новую сцену и сохраняет ее по указанному пути
Пример запроса: «Создай новую сцену с именем 'Level1' в папке Scenes»
load_scene: Загружает сцену по пути или имени с опциональной добавочной загрузкой
Пример запроса: «Загрузи сцену MainMenu»
`delete_scene**: Удаляет сцену по пути или имени и удаляет ее из Build Settings
Пример запроса: «Удали старую TestScene из моего проекта»
get_gameobject: Получает подробную информацию о конкретном GameObject, включая все компоненты
Пример запроса: «Получи детали GameObject Player»
get_console_logs: Извлекает журналы из консоли Unity с поддержкой постраничного вывода
Пример запроса: «Покажи мне последние 20 ошибок из консоли Unity»
recompile_scripts: Перекомпилирует все скрипты в проекте Unity
Пример запроса: «Перекомпилируй скрипты в моем проекте Unity»
save_scene: Сохраняет текущую активную сцену с опциональным сохранением по новому пути
Пример запроса: «Сохрани текущую сцену» или «Сохрани сцену как 'Assets/Scenes/Level2.unity'»
get_scene_info: Получает информацию об активной сцене, включая имя, путь, состояние измененности и все загруженные сцены
Пример запроса: «Какие сцены сейчас загружены в моем проекте?»
unload_scene: Выгружает сцену из иерархии (не удаляет файл ассета сцены)
Пример запроса: «Выгрузи сцену UI из иерархии»
duplicate_gameobject: Дублирует GameObject на сцене с опциональным переименованием и изменением родителя
Пример запроса: «Дублируй префаб Enemy 5 раз и переименуй их в Enemy_1 через Enemy_5»
delete_gameobject: Удаляет GameObject со сцены
Пример запроса: «Удали старый объект Player со сцены»
reparent_gameobject: Изменяет родителя GameObject в иерархии
Пример запроса: «Перемести объект HealthBar, чтобы он стал дочерним для UI Canvas»
move_gameobject: Перемещает GameObject в новую позицию (локальное или мировое пространство)
Пример запроса: «Перемести объект Player в позицию (10, 0, 5) в мировых координатах»
rotate_gameobject: Поворачивает GameObject к новому вращению (локальное или мировое пространство, углы Эйлера или квартернион)
Пример запроса: «Поверни Camera на 45 градусов по оси Y»
scale_gameobject: Изменяет масштаб GameObject до нового локального масштаба
Пример запроса: «Увеличь объект Enemy вдвое»
set_transform: Устанавливает позицию, вращение и масштаб GameObject одной операцией
Пример запроса: «Установи позицию Cube на (0, 5, 0), вращение на (0, 90, 0) и масштаб на (2, 2, 2)»
create_material: Создает новый материал с указанным шейдером и сохраняет его в проект
Пример запроса: «Создай красный материал с именем 'EnemyMaterial', используя шейдер URP Lit»
assign_material: Назначает материал компоненту Renderer GameObject
Пример запроса: «Назначь материал 'EnemyMaterial' GameObject Enemy»
modify_material: Изменяет свойства существующего материала (цвета, числа с плавающей запятой, текстуры)
Пример запроса: «Измени цвет 'EnemyMaterial' на синий и установи металличность на 0.8»
get_material_info: Получает подробную информацию о материале, включая шейдер и все свойства
Пример запроса: «Покажи мне все свойства материала 'PlayerMaterial'»
batch_execute: Выполняет несколько операций инструментов в одном пакетном запросе, уменьшая количество обменов данными и позволяя выполнять атомарные операции с опциональным откатом при сбое
Пример запроса: «Создай 10 пустых GameObject с именами Enemy_1 через Enemy_10 в одной пакетной операции»
show_unity_dashboard: Открывает панель управления Unity MCP-приложения в VS Code (требуется VS Code 1.109+)
Пример запроса: «Открой приложение панели управления Unity»
get_play_mode_status: Получает статус режима воспроизведения Unity (isPlaying, isPaused)
Пример запроса: «Unity в режиме воспроизведения?»
set_play_mode_status: Управляет режимом воспроизведения Unity с действиями: 'play' (начать или снять паузу), 'pause' (переключить паузу), 'stop' (выйти из режима воспроизведения), 'step' (перейти на один кадр вперед)
Пример запроса: «Начни режим воспроизведения Unity» или «Поставь игру на паузу» или «Перейди вперед на один кадр»
unity://menu-items: Извлекает список всех доступных пунктов меню в Unity Editor для упрощения работы инструмента execute_menu_item
Пример запроса: «Покажи мне все доступные пункты меню, связанные с созданием GameObject»
unity://scenes-hierarchy: Извлекает список всех игровых объектов в текущей иерархии сцены Unity
Пример запроса: «Покажи мне текущую структуру иерархии сцен»
unity://gameobject/{id}: Извлекает подробную информацию о конкретном GameObject по ID экземпляра или пути к объекту в иерархии сцены, включая все компоненты GameObject с его сериализованными свойствами и полями
Пример запроса: «Получи подробную информацию о GameObject Player»
unity://logs: Извлекает список всех журналов из консоли Unity
Пример запроса: «Покажи мне последние сообщения об ошибках из консоли Unity»
unity://packages: Извлекает информацию об установленных и доступных пакетах из Unity Package Manager
Пример запроса: «Перечисли все пакеты, установленные в моем проекте Unity»
unity://assets: Извлекает информацию об ассетах в базе данных ассетов Unity
Пример запроса: «Найди все текстурные ассеты в моем проекте»
unity://tests/{testMode}: Извлекает информацию о тестах в Unity Test Runner
Пример запроса: «Перечисли все доступные тесты в моем проекте Unity»
ui://unity-dashboard: Интерфейс приложения панели управления Unity MCP
Пример запроса: «Открой приложение панели управления Unity»
Подсказки — это предварительно настроенные шаблоны, предоставляющие пошаговые рабочие процессы для типичных задач Unity. Они помогают ИИ-ассистентам понять правильную последовательность операций и доступные инструменты для конкретных сценариев.
unity_dashboard: Открывает приложение панели управления Unity MCP с контекстной информацией о его функциях
Использование: В вашем ИИ-ассистенте используйте подсказку «unity_dashboard» для получения пошагового доступа к панели управления Unity
gameobject_handling_strategy: Предоставляет структурированный рабочий процесс для работы с GameObject, включая какие инструменты и ресурсы использовать
Использование: В вашем ИИ-ассистенте используйте подсказку «gameobject_handling_strategy» с идентификатором, именем или путем GameObject для получения пошагового руководства
[!NOTE] Пути к проектам с пробелами
MCP Unity поддерживает пути к проектам, содержащие пробелы. Однако, если возникают проблемы с подключением, попробуйте переместить проект в путь без пробелов в качестве шага по устранению неполадок.
Примеры: - ✅ Рекомендуется:
C:\Users\YourUser\Documents\UnityProjects\MyAwesomeGame- ✅ Поддерживается:C:\Users\Your User\Documents\Unity Projects\My Awesome Game
Установка этого MCP Unity-сервера — многоэтапный процесс:
Для запуска сервера MCP Unity на вашем компьютере должна быть установлена версия Node.js 18 или новее:

Windows
bash
node --versionmacOS
bash
brew install node@18bash
node --versionhttps://github.com/CoderGamester/mcp-unity.gitВариант 1: Настройка через Unity Editor

Глобальная vs. проектная конфигурация: - Configure [Client] — записывает в ваш глобальный конфигурационный файл пользователя (например,
~/.claude.json). Использует абсолютный путь. Применяется ко всем проектам на вашем компьютере. Лучше всего подходит для личной, однопользовательской настройки. - Configure [Client] (Project) — записывает в файл.mcp.json(или аналогичный) в корне проекта Unity. Использует относительный путь, поэтому работает на разных машинах. Предназначен для коммита в git и совместного использования с командой. Лучше всего подходит для совместных проектов или когда вы хотите, чтобы конфигурация перемещалась вместе с проектом.Если сомневаетесь, выбирайте вариант (Project) — относительный путь более переносим и не сломается, если вы переместите папку проекта.
Вариант 2: Настройка вручную
Откройте файл конфигурации MCP вашего AI клиента и добавьте конфигурацию сервера MCP Unity:
Замените
ABSOLUTE/PATH/TOна абсолютный путь к вашей установке MCP Unity или просто скопируйте текст из окна MCP Server в Unity Editor (Tools > MCP Unity > Server Window).Для конфигураций, которые находятся внутри дерева проекта Unity и коммитятся в git (например,
<project>/.vscode/mcp.json,<project>/opencode.json,<project>/.cursor/mcp.json,<project>/.mcp.json,<project>/.codex/config.toml), предпочитайте относительный путь проекта, чтобы тот же файл работал на разных машинах. Переключите "Use relative path" в окне Server Window, чтобы переключать вставляемый фрагмент между абсолютной и относительной к проекту формой. Кнопки Configure GitHub Copilot, Configure OpenCode, Configure Cursor (Project), Configure Claude Code (Project) и Configure Codex CLI (Project) уже автоматически генерируют относительные пути.Проектные кнопки (Cursor / Claude Code / Codex CLI) записывают запись MCP-сервера в директорию проекта Unity, а не в вашу глобальную конфигурацию пользователя, поэтому другие (не Unity) проекты не будут видеть предупреждения об ошибках подключения MCP. В частности, для Codex CLI (Project) вы должны подтвердить запрос о доверии проекту при первом запуске
codexиз корня проекта, иначе Codex проигнорирует файл<project>/.codex/config.toml.
Для JSON-клиентов (Cursor, Windsurf, Claude Code, GitHub Copilot и т.д.):
{
"mcpServers": {
"mcp-unity": {
"command": "node",
"args": [
"ABSOLUTE/PATH/TO/mcp-unity/Server~/build/index.js"
]
}
}
}
Для области видимости рабочего пространства VS Code / GitHub Copilot (.vscode/mcp.json) используйте ${workspaceFolder}, чтобы путь был переносимым между машинами:
{
"mcpServers": {
"mcp-unity": {
"command": "node",
"args": [
"${workspaceFolder}/Library/PackageCache/com.gamelovers.mcp-unity@<hash>/Server~/build/index.js"
]
}
}
}
Для Codex CLI (~/.codex/config.toml):
[mcp_servers.mcp-unity]
command = "node"
args = ["ABSOLUTE/PATH/TO/mcp-unity/Server~/build/index.js"]
Для Cursor — проектная локальная конфигурация (.cursor/mcp.json в корне проекта Unity, относительный путь проекта):
{
"mcpServers": {
"mcp-unity": {
"command": "node",
"args": [
"Library/PackageCache/com.gamelovers.mcp-unity@<hash>/Server~/build/index.js"
]
}
}
}
Для Claude Code — проектная локальная конфигурация (.mcp.json в корне проекта Unity, относительный путь проекта — конфигурация MCP для команды в Claude Code):
{
"mcpServers": {
"mcp-unity": {
"command": "node",
"args": [
"Library/PackageCache/com.gamelovers.mcp-unity@<hash>/Server~/build/index.js"
]
}
}
}
Для Codex CLI — проектная локальная конфигурация (.codex/config.toml в корне проекта Unity, относительный путь проекта):
[mcp_servers.mcp-unity]
command = "node"
args = ["Library/PackageCache/com.gamelovers.mcp-unity@<hash>/Server~/build/index.js"]
Codex накладывает этот файл поверх глобального
~/.codex/config.toml, но только когда проект помечен как доверенный. При первом входе в проект с помощьюcdи запускеcodexподтвердите запрос о доверии — в противном случае Codex проигнорирует.codex/config.toml.
Для OpenCode (opencode.json в корне проекта Unity):
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"mcp-unity": {
"type": "local",
"enabled": true,
"command": ["node", "Library/PackageCache/com.gamelovers.mcp-unity@<hash>/Server~/build/index.js"],
"environment": {}
}
}
}
Примечание: сегмент
@<hash>в пути к кэшу пакета UPM изменяется при обновлении пакета. Если вы обновляете MCP Unity, перезапустите кнопку Configure (или обновите путь вручную), чтобы фрагмент указывал на новый каталог кэша.
Когда AI клиент подключится к WebSocket-серверу, это автоматически отобразится в зеленом поле в окне
По умолчанию WebSocket-сервер запускается на порту '8090'. Вы можете изменить этот порт двумя способами:
По умолчанию тайм-аут между MCP-сервером и WebSocket составляет 10 секунд. Вы можете изменить его в зависимости от используемой операционной системы:
[!TIP]
Тайм-аут между вашей AI Coding IDE (например, Claude Desktop, Cursor IDE, Windsurf IDE) и MCP-сервером зависит от IDE.
По умолчанию WebSocket-сервер привязывается к 'localhost'. Чтобы разрешить подключения MCP Bridge с других устройств:
UNITY_HOST=192.168.1.100 node server.jsСборка Node.js-сервера
Сервер MCP Unity построен на базе Node.js. Ему требуется компиляция кода TypeScript в JavaScript в директории build.
В случае проблем вы можете принудительно установить его:

Если вы хотите собрать его вручную, выполните следующие шаги:
Откройте терминал/PowerShell/командную строку
Перейдите в директорию сервера:
bash
cd ABSOLUTE/PATH/TO/mcp-unity/Server~
Установите зависимости:
bash
npm install
Соберите сервер:
bash
npm run build
Запустите сервер:
bash
node build/index.js
Отладка с помощью MCP Inspector
Отладка сервера с использованием @modelcontextprotocol/inspector:
- Powershell
powershell
npx @modelcontextprotocol/inspector node Server~/build/index.js
- Командная строка/Терминал
cmd
npx @modelcontextprotocol/inspector node Server~/build/index.js
Не забудьте остановить сервер с помощью Ctrl + C перед закрытием терминала или его отладкой с помощью MCP Inspector.
Включение журналов консоли
powershell
$env:LOGGING = "true"
$env:LOGGING_FILE = "true"cmd
set LOGGING=true
set LOGGING_FILE=trueЧто такое MCP Unity?
MCP Unity — это мощный мост, соединяющий среду вашего редактора Unity с инструментами ИИ-ассистентов (LLM) с использованием Протокола контекста моделей (MCP).
По сути, MCP Unity: - Представляет функционал редактора Unity (такой как создание объектов, модификация компонентов, запуск тестов и т.д.) в виде «инструментов» и «ресурсов», которые ИИ может понимать и использовать. - Запускает сервер WebSocket внутри Unity и сервер Node.js (действующий как WebSocket-клиент для Unity), который реализует MCP. Это позволяет ИИ-ассистентам отправлять команды в Unity и получать обратную информацию. - Позволяет использовать естественные языковые запросы с вашим ИИ-ассистентом для выполнения сложных задач в вашем проекте Unity, значительно ускоряя рабочие процессы разработки.
Почему стоит использовать MCP Unity?
MCP Unity предлагает несколько весомых преимуществ для разработчиков, художников и руководителей проектов:
Как MCP Unity сравнивается с грядущими ИИ-функциями Unity 6.2?
Unity 6.2 представит новые встроенные ИИ-инструменты, включая предыдущие Unity Muse (для генеративных ИИ-возможностей, таких как генерация текстур и анимаций) и Unity Sentis (для запуска нейронных сетей в рантайме Unity). Поскольку Unity 6.2 еще не полностью выпущено, это сравнение основано на общедоступной информации и ожидаемых функциональных возможностях:
ИИ Unity 6.2:
Сценарии использования:
ИИ Unity 6.2: «Сгенерируй научно-фантастическую текстуру для этого материала.» «Обнови позиции всех деревьев на сцене, чтобы они находились в пределах зон террейна с тегом 'forest'.» «Создай анимацию ходьбы для этого персонажа.» «Сгенерируй 2D-спрайты, чтобы дополнить персонажа.» «Спроси подробности об ошибке в логе консоли.»
Дополняют, а не исключают друг друга: MCP Unity и нативные ИИ-инструменты Unity можно рассматривать как взаимодополняющие. Вы можете использовать MCP Unity с вашим ИИ-ассистентом для кодирования для настройки сцены или пакетной модификации ресурсов, а затем использовать ИИ-инструменты Unity для генерации конкретной текстуры или создания анимаций или 2D-спрайтов для одного из этих ресурсов. MCP Unity обеспечивает гибкий, основанный на протоколе способ взаимодействия с редактором, что может быть полезно для разработчиков, которые хотят интегрироваться с более широким спектром внешних ИИ-сервисов или создавать пользовательские рабочие процессы автоматизации.
Какие сейчас хосты MCP и IDE поддерживают MCP Unity?
MCP Unity разработан для работы с любым ИИ-ассистентом или средой разработки, которая может выступать в роли клиента MCP. Экосистема растет, но в настоящее время известными интеграциями или совместимыми платформами являются: - Cursor - Windsurf - Claude Desktop - Claude Code - Codex CLI - GitHub Copilot - Google Antigravity - OpenCode
Могу ли я расширить MCP Unity пользовательскими инструментами для моего проекта?
Да, абсолютно! Одним из важных преимуществ архитектуры MCP Unity является ее расширяемость.
- В Unity (C#): Вы можете создавать новые классы C#, наследующие от McpToolBase (или аналогичной базы для ресурсов), чтобы предоставить пользовательский функционал редактора Unity. Эти инструменты затем регистрируются в McpUnityServer.cs. Например, вы можете написать инструмент для автоматизации конкретного пайплайна импорта ресурсов, уникального для вашего проекта.
- В сервере Node.js (TypeScript): Затем вы определяете соответствующий обработчик инструмента TypeScript в директории Server/src/tools/, включая его схему Zod для ввода/вывода, и регистрируете его в Server/src/index.ts. Эта часть Node.js будет пересылать запрос на ваш новый C# инструмент в Unity.
Это позволяет адаптировать возможности ИИ к конкретным потребностям и рабочим процессам вашей игры или приложения.
MCP Unity можно использовать бесплатно?
Да, MCP Unity — это проект с открытым исходным кодом, распространяемый по лицензии MIT. Вы можете свободно использовать, изменять и распространять его в соответствии с условиями лицензии.
Почему я не могу подключиться к MCP Unity?
Почему сервер MCP Unity не запускается?
Почему я получаю ошибку «Connection failed» при запуске тестов в Play Mode?
Инструмент run_tests возвращает следующий ответ:
Error:
Connection failed: Unknown error
Эта ошибка возникает из-за потери соединения моста при перезагрузке домена при переключении в Play Mode. Решением является отключение Reload Domain в Edit > Project Settings > Editor > "Enter Play Mode Settings".
Почему некоторые клиенты выдают ошибку KeyError: 'position' при инициализации инструмента?
Некоторые клиенты MCP могут выдавать ошибку при разборе схем инструментов, если они содержат локальные ссылки на JSON-указатели, такие как #/properties/position.
MCP Unity избегает этого, регистрируя входные данные инструментов трансформации (set_transform, move_gameobject, rotate_gameobject, scale_gameobject) с новыми вложенными векторными схемами для каждого поля, так что сгенерированная схема не полагается на локальные ссылки #/properties/....
Если вы все еще видите эту ошибку:
- обновите ваш клиент MCP до последней версии,
- пересоберите Node-сервер (cd Server~ && npm run build),
- убедитесь, что ваша версия пакета включает это исправление совместимости.
При запуске сервера MCP (Node.js) внутри WSL2, тогда как Unity работает в Windows 11, подключение к ws://localhost:8090/McpUnity может завершиться ошибкой ECONNREFUSED.
Причина: WSL2 и Windows имеют разные сетевые пространства имен — localhost внутри WSL2 не указывает на хост Windows. По умолчанию Unity слушает на localhost:8090.
.wslconfig (затем выполните wsl --shutdown и снова откройте WSL):[wsl2]
networkingMode=mirrored
После включения localhost станет общим между Windows и WSL2, поэтому конфигурация по умолчанию (localhost:8090) будет работать.
Установите в оболочке WSL перед запуском клиента MCP:
# Использовать IP-адрес хоста Windows, обнаруженный из resolv.conf
export UNITY_HOST=$(grep -m1 nameserver /etc/resolv.conf | awk '{print $2}')
При этом Server~/src/unity/mcpUnity.ts будет подключаться к ws://$UNITY_HOST:8090/McpUnity вместо localhost (он считывает UNITY_HOST и может также учитывать параметр Host в ProjectSettings/McpUnitySettings.json, если он присутствует).
0.0.0.0).localhost, если включен зеркальный режим.[!NOTE] Порт по умолчанию —
8090. Вы можете изменить его в окне сервера Unity (Инструменты → MCP Unity → Окно сервера). Значение отражается вMcpUnitySettingsи сохраняется вProjectSettings/McpUnitySettings.json.
npm i -g wscat
# После включения зеркальной сети
wscat -c ws://localhost:8090/McpUnity
# Или используя IP-адрес хоста Windows
wscat -c ws://$UNITY_HOST:8090/McpUnity
Запускайте тесты с помощью Test Runner в Unity: 1. Откройте редактор Unity 2. Перейдите в Окно > Основные > Test Runner 3. Выберите вкладку "EditMode" 4. Нажмите "Run All", чтобы выполнить все тесты
Запускайте тесты с помощью Jest:
cd Server~
npm test
Для запуска тестов в режиме отслеживания:
npm run test:watch
Если у вас есть вопросы или вам нужна поддержка, пожалуйста, создайте задачу в этом репозитории или связаться по альтернативным каналам:
- LinkedIn:
- Discord: gamester7178
- Email: game.gamester@gmail.com
Приветствуется вклад! Пожалуйста, создавайте Pull Request или открывайте задачу с вашим предложением.
Фиксируйте изменения в соответствии с форматом Conventional Commits.
Этот проект находится под лицензией MIT