blender-cu-vm-mcp
Изолированная виртуальная машина Computer-Use для Blender и MCP-сервер
Изолированная локальная среда виртуальной машины Windows 11 с разделением GPU, подключённая через Model Context Protocol (MCP) и специально созданная для ИИ-агентов программирования, чтобы выполнять автоматизированное тестирование интерфейсов Blender, валидацию пользовательских историй и сценарии Computer-Use, не затрагивая рабочий стол хост-системы.
1. Архитектура системы
+---------------------------------------------------------------------------------------------+
| Coding Agents (Claude Code / OMP / Codex) |
+---------------------------------------------------------------------------------------------+
│
│ (MCP JSON-RPC via stdio)
▼
+─────────────────────────────────────────────────────────────────────────────────────────────+
| Host Layer: `blender-cu-vm-mcp` Server |
| - MCP Tool Handler (Computer Use, Analytical Inspection, Blender Telemetry, File Staging) |
| - VM Lifecycle Manager (Hyper-V Socket / PowerShell WMI / Sub-2s Snapshot Reset) |
+─────────────────────────────────────────────────────────────────────────────────────────────+
│
┌───────────────────────┴───────────────────────┐
│ Hyper-V Socket (HV-SOCK) / Internal VMSwitch │
▼ ▼
+───────────────────────────────────────────────+ +─────────────────────────────────────────+
| Windows 11 Guest VM (Hyper-V) | | Secondary (Fast CI): WSL2 Container |
| - NVIDIA GPU-PV (RTX 4080 Super vGPU: 8GB) | | - Mesa / Direct3D 12 GPU Accel |
| - Virtual Display Driver (1080p Fixed 60Hz) | | - Virtual X11 Display (Xvfb/Weston) |
| - Guest Agent Daemon (FastAPI / gRPC) | | - Guest Agent Daemon (Linux) |
| - In-Process Blender Telemetry Bridge (bpy) | | - Blender bpy IPC Bridge |
+───────────────────────────────────────────────+ +─────────────────────────────────────────+Related MCP server: kwin-mcp
2. Ключевые возможности
Нулевое вмешательство в работу хоста: Синтетические движения мыши, перетаскивания, клики и нажатия клавиш выполняются исключительно внутри гостевой ОС. Ваш настоящий курсор и фокус окна остаются полностью нетронутыми.
Аппаратно ускоренный рендеринг GPU: NVIDIA GPU-PV предоставляет гостевой виртуальной машине почти нативный доступ к видеокарте RTX 4080 Super хост-системы (DirectX 12, Vulkan, OpenGL и CUDA/OptiX).
Детерминированный дисплей 1080p: Драйвер виртуального дисплея с открытым исходным кодом (
IddSampleDriver) жёстко фиксирует виртуальный экран на разрешении 1920x1080 @ 60 Гц со масштабированием 100% (96 DPI) — предотвращая дрейф координат и засыпание мониторов.Гибридная мультимодальная обратная связь: Агенты получают:
Визуальный канал: Снимки фреймбуфера с необязательным наложением координатной сетки.
Аналитический канал: Дерево Windows UI Automation, ограничивающие прямоугольники и отзывчивость окна.
Глубокая телеметрия: Состояние Blender
bpy, активные модификаторы, связи нодового дерева и журналыstdout/stderrв реальном времени.
Откат состояния менее чем за 2 секунды: Быстрое восстановление снимка Hyper-V возвращает ВМ к чистой эталонной конфигурации после разрушительных или экспериментальных запусков.
3. Структура каталога
blender-cu-vm/
├── host/ # Host MCP Server & Hyper-V Controller
│ ├── mcp_server.py # Stdio JSON-RPC MCP server with 14 tools
│ ├── hv_transport.py # Hyper-V Socket (AF_HYPERV) & HTTP transport
│ ├── vm_controller.py # PowerShell WMI lifecycle & snapshot manager
│ └── asset_sync.py # Bi-directional file and addon staging
├── guest/ # Guest Agent Daemon (runs inside VM)
│ ├── guest_daemon.py # FastAPI HTTP/HV-SOCK unified server
│ ├── screen_capture.py # DXGI Desktop Duplication & visual diffs
│ ├── input_controller.py # Win32 SendInput (clicks, drags, typing)
│ ├── ui_automation.py # Windows UI Automation tree inspector
│ └── video_recorder.py # Hardware-accelerated NVENC MP4 recorder
├── blender/ # Blender Embedded Runtime Bridge
│ ├── cu_telemetry_bridge.py # Non-blocking TCP telemetry server
│ ├── crash_interceptor.py # C-level stdout/stderr stream tee
│ └── state_inspector.py # Declarative scene invariant checker
├── scripts/ # Automated Setup & Provisioning
│ ├── setup_vm_gpupv.ps1 # Automated Hyper-V Gen2 VM creator
│ ├── stage_gpupv_drivers.ps1 # NVIDIA GPU-PV driver packaging & injection
│ ├── setup_virtual_display.ps1 # Virtual display & autologon configuration
│ └── manage_golden_snapshot.ps1 # Instant snapshot creation & rollback
├── tests/ # Verification & E2E Test Suite
│ ├── test_blender_user_story.py # 12-stage automated test suite
│ └── verify_isolation.py # Zero host disturbance verification
├── mcp-config.json # Registration snippet for Claude Code / OMP
└── README.md4. Руководство по установке и настройке
Шаг 1: Развёртывание ВМ на хосте (PowerShell от имени администратора)
cd C:\tmp\blender-cu-vm\scripts
.\setup_vm_gpupv.ps1 -VMName "Blender-CU-VM" -MemoryBytes 8GB -ProcessorCount 8Шаг 2: Подготовка драйверов NVIDIA GPU-PV
.\stage_gpupv_drivers.ps1 -VMName "Blender-CU-VM" -Mode "Stage"Шаг 3: Установка гостевой ОС и настройка среды выполнения
Внутри гостевой ВМ (через PowerShell от имени администратора):
# 1. Install GPU-PV drivers from staged directory
C:\Temp\NvidiaDrivers\install_gpupv_guest.bat
# 2. Configure Virtual Display & Auto-Logon
.\setup_virtual_display.ps1 -TargetWidth 1920 -TargetHeight 1080
# 3. Start Guest Daemon on boot
python C:\blender-cu-vm\guest\guest_daemon.pyШаг 4: Создание снимка эталонной базовой конфигурации
.\manage_golden_snapshot.ps1 -VMName "Blender-CU-VM" -SnapshotName "golden_base" -Action "Create"5. Подключение ИИ-агентов программирования через MCP
Добавьте следующее в ваш ~/.claude.json или ~/.omp/agent/config.yml:
{
"mcpServers": {
"blender-cu-vm": {
"command": "python",
"args": [
"C:\\tmp\\blender-cu-vm\\host\\mcp_server.py"
],
"env": {
"BLENDER_VM_NAME": "Blender-CU-VM",
"BLENDER_GUEST_URL": "http://192.168.122.100:8000"
}
}
}
}6. Запуск проверочных тестов
Чтобы проверить все подсистемы и выполнить симулированный пользовательский сценарий Blender:
python blender-cu-vm/tests/test_blender_user_story.py
python blender-cu-vm/tests/verify_isolation.pyThis server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- FlicenseNot gradedqualityCmaintenanceEnables autonomous desktop automation by delegating tasks to vision-based agents operating within cloud-based virtual machine sandboxes. It allows users to manage VMs, execute complex computer tasks, and receive text-based screen summaries across Linux, Windows, and macOS environments.2
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to automate Linux desktop GUI by launching and interacting with Wayland applications in isolated virtual KWin sessions, or connecting to live desktops for collaborative automation.39MIT
- AlicenseNot gradedqualityBmaintenanceGives AI agents their own virtual display on Windows, enabling isolated clicking, typing, and screenshots without interfering with the user's desktop.1MIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to interact with the Windows operating system, performing tasks such as file navigation, application control, UI interaction, and QA testing.MIT
Related MCP Connectors
Eyes and hands on real Windows PCs — observe, click, type via Glasswarp API.
Operate Linux, macOS and Windows from your LLM. Every action runs through an auditable allowlist.
Build, validate, and deploy multi-agent AI solutions from any AI environment.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/trdillman/blender-computer-use-vm'
If you have feedback or need assistance with the MCP directory API, please join our Discord server