Skip to main content
Glama

UI Toolkit MCP

MCP-сервер, который позволяет ИИ-агентам просматривать экраны UI Toolkit, пока редактор Unity остаётся открытым. Он может изучать структуру и внешний вид файлов UXML/USS и делать скриншоты без входа в Play Mode или сборки Player.

Ключевые возможности:

  • Список UXML-файлов и открытых окон UI Toolkit

  • Просмотр деревьев элементов, текста, значений, позиций, размеров и разрешённых стилей

  • Захват всего экрана или выбранного элемента в виде PNG-изображения

  • Автоматическое разбиение длинных экранов на тайлы (до 8192 px на изображение и 100 MP в сумме)

  • Повторный импорт файлов UXML/USS

  • Совместимость проверена с Unity 2022.3 LTS и Unity 6.3

Настройка

1. Добавьте пакет Unity

В редакторе Unity откройте Window > Package Manager, нажмите кнопку + в левом верхнем углу и выберите Add package from git URL....

Введите следующий URL:

https://github.com/adzukyat/ui-toolkit-mcp.git?path=/unity-package

Предварительный сервер запускается автоматически после завершения компиляции скриптов Unity. Держите редактор Unity открытым при его использовании.

2. Зарегистрируйте MCP-сервер

Требуется Node.js 20 или новее. Пример конфигурации для Codex:

[mcp_servers.ui_toolkit_mcp]
command = "npx"
args = [
  "-y",
  "ui-toolkit-mcp-server@latest",
  "mcp"
]

Related MCP server: Unity MCP Server

Инструменты MCP

Инструмент

Назначение

ui_list_projects

Список открытых проектов Unity, в которых установлен пакет

ui_select_project

Выбор проекта Unity для работы

ui_status

Проверка версии Unity и статуса подключения

ui_list_targets

Список конфигураций предпросмотра, UXML-файлов и открытых EditorWindow

ui_inspect

Просмотр структуры, позиции, размера и стилей элементов UI

ui_screenshot

Захват UI в виде PNG-изображения

ui_reload

Перезагрузка изменений UXML/USS в Unity

Начните с ui_list_projects, чтобы найти проект, затем выберите его с помощью ui_select_project. Далее используйте ui_list_targets, чтобы найти нужный экран, а затем ui_inspect или ui_screenshot.

Конфигурация предпросмотра (необязательно)

Поместите файл .ui-toolkit-mcp-preview.json в корень проекта, чтобы задать стабильные псевдонимы, дополнительные файлы USS, темы и области просмотра. Скопируйте и адаптируйте следующий пример:

{
  "$schema": "./Packages/me.adzuki.ui-toolkit-mcp.preview-server/Schemas/ui-toolkit-mcp-preview.schema.json",
  "schemaVersion": 1,
  "previews": [
    {
      "alias": "settings",
      "document": "Assets/UI/Settings.uxml",
      "stylesheets": ["Assets/UI/Settings.uss"],
      "theme": "editor-dark",
      "selector": "#settings-root",
      "viewport": { "width": 480, "height": "full" }
    }
  ]
}

Поддерживаемые темы: editor-dark, editor-light и runtime. Для темы runtime также можно указать путь к ассету panelSettings.

Разработка и проверка

npm test
npm run typecheck
npm run build
node scripts/mcp-smoke.mjs [project-id]

EditMode-тесты Unity находятся в test-projects/2022.3 и test-projects/6000.3. Попиксельная проверка требует графического устройства. Просмотр дерева работает с -nographics, но рендеринг PNG — нет, поэтому финальную проверку выполняйте в обычном запущенном редакторе Unity.

Текущие ограничения

  • Сервер в первую очередь ориентирован на статические состояния UI. Для экранов, создаваемых позже в C#, откройте фактический EditorWindow или подготовьте нужное состояние в файле предпросмотра UXML.

  • Оффскрин-рендерер редактора вызывает внутренние API UI Toolkit через рефлексию. ui_status сообщает предупреждение для неподдерживаемых версий Unity.

  • Идентификаторы открытых окон действительны только для текущей сессии Unity.

  • Инъекция псевдосостояний, таких как hover и focus, взаимодействие с указателем/клавиатурой и фиксированное время анимации пока не поддерживаются.

  • Шрифты, иконки, пользовательские элементы управления и привязки данных отображаются только в том случае, если их можно разрешить в целевом проекте.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    F
    maintenance
    Enables AI agents to interact with Unity projects through multimodal vision, code analysis, asset management, and scene manipulation. Supports real-time Unity editor control, project search, script creation, and visual debugging through screenshots.
    32
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI assistants to interact with Unity Editor projects through 68+ tools for manipulating scenes, GameObjects, components, and assets, plus live access to console logs, hierarchies, and test results.
    15 npm
    9
    MIT