Live2D Automation MCP Server
MCP-сервер автоматизации Live2D
Генерация промежуточного макета Live2D из одного изображения персонажа.
Возможности
Инструменты MCP для анализа изображений, извлечения лиц, генерации слоев, риггинга, физики, анимаций и экспорта
Сессионные ID, выдаваемые сервером, с TTL, ограничениями параллелизма, поддержкой явного закрытия и метриками состояния
Ограничение выходной директории папкой
output/Проверка контракта экспорта фиктивного
.moc3перед подтверждением успехаЯвные метаданные
detector_used,fallback_reasonиconfidence_summaryна этапах анализа
Related MCP server: VRMCP
Установка
Минимальная среда выполнения:
pip install -e .Стек компьютерного зрения с поддержкой CPU:
pip install -e ".[vision-cpu]"Стек компьютерного зрения с поддержкой GPU:
pip install -e ".[vision-gpu]"Инструменты разработки:
pip install -e ".[dev]"Использование
Запуск MCP-сервера
python -m mcp_server.serverЗапуск локального рабочего процесса CLI
live2d-run run --image-path ATRI.png --output-dir output/ATRI --demo-adapter-mode fullИли без консольного скрипта:
python -m mcp_server.cli run --image-path ATRI.png --output-dir output/ATRI --demo-adapter-mode fullCLI записывает файл <model_name>_cli_report.json в выходную директорию.
Если у вас уже есть PSD, готовый для Cubism, и вы хотите настроить только автоматизацию Cubism, используйте команду калибровки вместо повторного запуска анализа изображения:
python -m mcp_server.cli calibrate-template --output-dir output/ATRI_real --model-name ATRI --psd-path output/ATRI_real/ATRI.psd --editor-path "C:\Program Files\Live2D\Cubism5\Cubism Editor 5\CubismEditor5.exe" --native-gui-controller-mode executeЕсли аргумент --psd-path опущен, CLI будет искать <output_dir>/<model_name>.psd. Это самый быстрый цикл для калибровки template_menu_sequence, так как он перестраивает только план Cubism, пакет диспетчеризации, отчет о выполнении и отчет о калибровке профиля.
Добавьте --resume, если хотите продолжить работу с последней совместимой диспетчеризацией в той же выходной директории. CLI возобновляет работу только в том случае, если PSD-файл, ID шаблона, путь к редактору и режим контроллера совпадают; в противном случае он переходит к новому выполнению и записывает это решение в отчет CLI.
Запуск полного конвейера
from mcp_server.server import full_pipeline
result = await full_pipeline(
image_path="ATRI.png",
output_dir="output/ATRI",
model_name="ATRI",
motion_types=["idle", "tap", "move", "emotional"],
)Пошаговый процесс
Вызовите
analyze_photo(image_path)и сохраните возвращенныйsession_idВызовите
detect_face_features(session_id, output_dir)Вызовите
generate_layers(session_id, output_dir)Вызовите
create_mesh(session_id)Вызовите
setup_rigging(session_id)Вызовите
configure_physics(session_id)Вызовите
generate_motions(session_id, motion_types)Вызовите
export_model(session_id, output_dir, model_name)Вызовите
close_session(session_id)после завершения всех шагов
Ограничения безопасности
output_dirдолжен оставаться внутри директории проектаoutput/Для тестов и контролируемых локальных запусков
LIVE2D_OUTPUT_ROOTможет указывать на другую директорию внутри проекта; точки входа MCP и CLI будут разрешатьoutput_dirотносительно этого корняmodel_nameподдерживает только буквы, цифры,_и-форматы входных изображений:
png,jpg,jpeg,webpограничения входных изображений: 20 МБ, 4096x4096, 16 777 216 пикселей всего
поддерживаемые типы движений:
idle,tap,move,emotional
Удаленное обнаружение семантических частей является опциональным (privacy opt-in). Когда LIVE2D_PART_BACKEND=api, установите LIVE2D_PART_API_ALLOW_UPLOAD=1 перед отправкой байтов изображения на LIVE2D_PART_API_URL.
Используйте LIVE2D_PART_API_ALLOWED_HOSTS в качестве списка разрешенных хостов (через запятую) для защищенных сред.
Адаптер для нативного GUI
Минимальный PoC выполнения Cubism может вызывать внешний адаптер нативного GUI через LIVE2D_NATIVE_GUI_ADAPTER_COMMAND. Контракт адаптера задокументирован в docs/native_gui_adapter_contract.md.
Вкратце:
MCP добавляет имя действия, например
launch_editor,import_psd,apply_templateилиexport_embedded_dataкод выхода
0означает успехкод выхода
64означает «не поддерживается, пожалуйста, используйте откат» для последующих шагов PoCдругие ненулевые коды рассматриваются как ошибки выполнения
Вы можете протестировать PoC с помощью прилагаемого демо-адаптера:
set LIVE2D_NATIVE_GUI_ADAPTER_COMMAND=python scripts/native_gui_adapter_demo.py --mode partialИспользуйте --mode full, чтобы позволить демо-адаптеру выпустить минимальный фиктивный пакет экспорта, или --mode fail, чтобы имитировать критические сбои адаптера.
Вы также можете включить встроенный контроллер GUI для Windows для первых двух шагов:
live2d-run run --image-path ATRI.png --output-dir output/ATRI --editor-path "C:\Program Files\Live2D\Cubism5\Cubism Editor 5\CubismEditor5.exe" --native-gui-controller-mode dry_rundry_run записывает PowerShell-скрипты и квитанции для launch_editor / import_psd; execute попытается запустить эти скрипты в Windows, используя прилагаемый профиль.
Прилагаемый профиль Windows теперь включает консервативные правила начальной загрузки для восстановления после стандартных диалоговых окон во время повторных попыток:
import_psd: пробуетOpenиImport PSDapply_template: пробуетTemplateиConfirmexport_embedded_data: пробуетExportиOverwrite
Каждый артефакт восстановления также записывает раздел dialog_recovery_plan, чтобы вы могли видеть, какие правила восстановления (по умолчанию или специфичные для действия) были выбраны. Эти начальные параметры предназначены для настройки под заголовки окон вашего локального Cubism перед использованием в продакшене.
Встроенный зонд теперь также записывает найденные заголовки окон и легкую диагностику в артефакт зонда. Если реальный Cubism работает не так, как ожидалось, сначала проверьте JSON зонда, чтобы увидеть, какие заголовки окон были действительно видны контроллеру.
Каждое выполнение диспетчеризации теперь также записывает отчет {model_name}_cubism_profile_calibration*.json, который суммирует:
наблюдаемые заголовки окон зонда
отсутствующие
window_probe_candidatesнаблюдения за восстановлением диалогов для каждого действия
предложенные дополнения
known_dialog_recovery
Используйте этот отчет в качестве основного руководства при настройке встроенного профиля Windows для реальной установки Cubism.
Для apply_template встроенный контроллер теперь ожидает явного вызова на основе профиля. Прилагаемый профиль по умолчанию оставляет это поле пустым намеренно, так как рабочий процесс шаблонов Cubism зависит от версии UI, и неверное сочетание клавиш хуже, чем его отсутствие.
Используйте template_menu_sequence в mcp_server/profiles/windows_cubism_default.json для определения последовательности действий через меню, например:
"template_menu_sequence": [
{ "keys": "%m", "wait_seconds": 0.2 },
{ "keys": "t", "wait_seconds": 0.2 },
{ "keys": "a", "wait_seconds": 0.2 }
]Откалибруйте эту последовательность в соответствии с путем к меню Cubism, задокументированным в официальном руководстве редактора: [Modeling] -> [Model template] -> Apply template.
Если apply_template завершается с ошибкой без артефакта, отчет о калибровке теперь прямо укажет, отсутствует ли template_menu_sequence или template_shortcut, и повторит этот рекомендуемый путь к меню в диагностике.
Для export_embedded_data встроенный контроллер также может быть откалиброван с помощью последовательности действий через меню, когда путь через сочетание клавиш ненадежен. Используйте export_menu_sequence в mcp_server/profiles/windows_cubism_default.json для последовательности, например:
"export_menu_sequence": [
{ "keys": "%f", "wait_seconds": 0.2 },
{ "keys": "e", "wait_seconds": 0.2 },
{ "keys": "m", "wait_seconds": 0.2 }
]Откалибруйте эту последовательность в соответствии с путем к меню Cubism, задокументированным в официальном руководстве редактора: [File] -> [Export Embedded File] -> Export as MOC3 file.
Если export_embedded_data завершается с ошибкой, не открывая диалоговое окно, отчет о калибровке теперь прямо укажет, отсутствует ли export_menu_sequence или export_shortcut, и повторит этот рекомендуемый путь к меню в диагностике.
Примечания по экспорту
Экспортер записывает фиктивный промежуточный пакет, а не готовую к использованию в продакшене модель Live2D
model3.jsonи возвращенный манифест файлов всегда ссылаются на{model_name}.moc3ready_for_cubism_editorостаетсяfalseдо тех пор, пока не появится настоящий экспортер, совместимый с CubismОкончательная проверка и экспорт должны выполняться в Cubism Editor перед использованием в продакшене
Лицензия
MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
Generate your app's mascot, then props, poses and animations that stay on-model.
Turn text or an image into an animation-ready 3D model (GLB): generate, rig, animate, retexture.
Create AI animations and export transparent sprite sheets, alpha video, frames, and game assets.
Generate AI influencer photos, face swaps, and character sheets with a consistent face.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables building WebAR experiences using natural language through tools for Three.js scene creation, project management, and asset integration within 8th Wall Desktop. It supports advanced features like face tracking, image targets, and automated 3D model management.7MIT
- FlicenseNot gradedqualityDmaintenanceEnables AI to control 3D VRM models via natural language, supporting expressions, animations, and bone manipulation in real-time through a web browser.-
- FlicenseAqualityCmaintenanceEnables AI assistants to generate production-ready, professional UI design systems and components from simple descriptions, with real images, animated components, and automated quality checks.16-
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to create and edit Rive animations through 139 MCP tools, supporting shapes, animations, state machines, physics, and export to .riv or .rev files.453 npm-