blender-python-api-verification

от nvidia

Проверка свойств Blender Python, перечислений, операторов, анимационных API и интерфейсов аддонов на соответствие запущенной сборке Blender перед написанием или выполнением…

npx skills add https://github.com/nvidia/nemoclaw-community --skill blender-python-api-verification

Verify Blender Python APIs

The visible host Blender process is the source of truth. This installation also provides the official Blender 5.1 Python API under:

/sandbox/reference/blender-python-api-5.1

Use scripts/search_blender_api.py with sandbox terminal tools to find relevant official documentation. The docs cover Blender itself, not OVRTX, OVPhysX, or other add-ons.

Required workflow

Before an uncertain Blender mutation:

  1. Search the version-matched reference for the type or operator.
  2. Make a separate, non-mutating mcp_blender_execute_blender_code call to inspect the running object, RNA properties, enum items, or operator RNA.
  3. Check every uncertain property and enum value. Do not infer API availability from an older Blender example.
  4. Only then make the mutation in a second Blender MCP call.
  5. Return a compact receipt. Do not dump complete RNA schemas into chat.

Do not import bpy with sandbox Python. Blender MCP code runs inside Blender on the host; sandbox code does not.

Runtime inspection patterns

Inspect an RNA object:

target = bpy.context.scene.display.shading
props = target.bl_rna.properties
name = "type"
result = {
    "blender": bpy.app.version_string,
    "rna_type": target.bl_rna.identifier,
    "property_exists": name in props,
    "readonly": props[name].is_readonly if name in props else None,
    "enum_values": [item.identifier for item in props[name].enum_items]
        if name in props and props[name].type == "ENUM" else [],
}
print(result)

Inspect an operator before calling it:

operator = bpy.ops.wm.usd_import
rna = operator.get_rna_type()
print({
    "operator": rna.identifier,
    "properties": [p.identifier for p in rna.properties if p.identifier != "rna_type"],
    "poll": operator.poll(),
})

For non-RNA Python objects, use narrowly filtered dir() or hasattr(). Prefer direct data API operations over context-sensitive bpy.ops calls. If an operator is required, inspect poll() and establish its context explicitly.

Failure behavior

If the requested API is absent, read-only, has different enum values, or fails operator polling, stop before mutation and report the observed Blender version and API shape. Do not retry guessed property names or execute a long script that mixes discovery with destructive changes.

Больше skills от nvidia

compileiq-debug
nvidia
Используйте, когда что-то не так: Search() зависает, все оценки возвращают INVALID_SCORE, оценки не улучшаются, каждая конфигурация возвращает одно и то же число, ошибки ptxas…
create-github-pr
nvidia
Создание pull request'ов в GitHub с помощью gh CLI. Используйте, когда пользователь хочет создать новый PR, отправить код на ревью или открыть pull request. Ключевые слова для запуска —…
nemoclaw-maintainer-cross-issue-sweep
nvidia
Сканирует другие открытые задачи, чтобы найти те, которые данный PR может исправить или случайно сломать. Выводит возможности смежных исправлений и риски противоречий с указанием файла:строки…
fhir-basics
nvidia
Обучает агентов работе с API FHIR R4, доступным ресурсам, запросам с параметрами поиска и корректному разбору всех форматов ответов…
compileiq-validate-result
nvidia
Используйте ПОСЛЕ завершения поиска и ДО применения ускорения или отправки ACF. Загружает CSV-файл dump_results, извлекает top-K кандидатов (однокритериальный)...
changelog-audit
nvidia
Аудит Warp CHANGELOG.md перед релизом: восстановление потерянных записей, сортировка по влиянию на пользователей, уточнение формулировок, перенос строк и (в режиме релизной ветки) обновление сравнения…
maintain-dynamic-plugins
nvidia
Поддержка загрузчиков динамических плагинов NeMo Relay, манифестов, нативных Rust SDK, протокола gRPC worker, Python worker SDK, документации, тестов и покрытия рабочего процесса релиза
dgx-diagnose
nvidia
Диагностика распространённых проблем DGX Station GB300 — сбои CUDA, ошибочное нацеливание на GPU, ошибки контейнеров vLLM/SGLang, проблемы состояния MIG, ошибки NVLink/Fabric Manager,…