blender-python-api-verification
Skill142 starsChanged 3 months agoApache-2.0View on GitHub
Verify Blender Python properties, enums, operators, animation APIs, and add-on interfaces against the running Blender build before writing or executing uncertain bpy code. Use for any Blender scene edit, render setup, animation, import/export, or add-on task where an API detail could vary by version.
In this repository62 other files it gives its agents.
- examples/recipes/partners/hpe/retail-assistant/docker-compose/scripts/identity/AGENTS.mdAGENTS.md
- examples/recipes/partners/hpe/retail-assistant/helm/files/identity/AGENTS.mdAGENTS.md
- examples/recipes/partners/tavily/watchtower/prompts/AGENTS.mdAGENTS.md
- nemoclaw-community-contributor-examplesSkill
- nemoclaw-community-maintainer-policiesSkill
- coach-nemoclaw-hermesSkill
- coordinate-nemoclaw-blenderSkill
- blender-host-sandbox-boundarySkill
- ovphysx-host-runtime-boundarySkill
- axe-a11ySkill
- deep-researchSkill
- cross-source-gap-analysisSkill
- github-readonly-liveSkill
- nemoclaw-autohealSkill
- nemoclaw-nvteamSkill
- outlook-email-searchSkill
- slack-channel-finderSkill
- slack-channel-summarizerSkill
- source-etl-querySkill
- module-1Skill
- module-2Skill
- module-3Skill
- module-4Skill
- module-5Skill
- module-6Skill
- module-7Skill
- setup-workshop-nemoclaw-operatorSkill
- setup-workshop-nemoclawSkill
- workshopSkill
- cross-source-gap-analysisSkill
- github-readonly-liveSkill
- gitlab-readonly-liveSkill
- nemoclaw-autohealSkill
- nemoclaw-nvteamSkill
- outlook-email-searchSkill
- public-web-searchSkill
- slack-channel-finderSkill
- slack-channel-summarizerSkill
- source-etl-querySkill
- kubernetes-sreSkill
- openshift-llm-deploySkill
- inbound-judgingSkill
- memory-consolidationSkill
- memory-repairSkill
- memory-writingSkill
- obligation-reviewSkill
- preference-updateSkill
- nv-tech-assistantSkill
- payment-ops-playbookSkill
- payment-screeningSkill
- rail-boundary-testSkill
- release-packetSkill
- pr-reviewSkill
- pr-test-case-assistantSkill
- vss-videoSkill
- nemoclaw-hermes-swarmSkill
- blackwall-payment-gateSkill
- retail-apiSkill
- retail-apiSkill
- watchtowerSkill
- The first 60 shown.
The file
We split this skill into the rules it gives an agent
8 rules. About 0 are common, 5 are distinctive, and 3 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈5
Distinctive · estimate
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 16
Use scripts/search_blender_api.py with sandbox terminal tools to find relevant official documentation.
- Distinctive: line 22
Before an uncertain Blender mutation:
- Distinctive: line 24
Search the version-matched reference for the type or operator.
- Distinctive: line 27
Check every uncertain property and enum value.
- Distinctive: line 29
Only then make the mutation in a second Blender MCP call.
- Very specific: line 32
Do not import bpy with sandbox Python.
- Very specific: line 67
Prefer direct data API operations over context-sensitive bpy.ops calls.
- Distinctive: line 72
If the requested API is absent, read-only, has different enum values, or fails operator polling, stop before mutation and report the …
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
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:
- Search the version-matched reference for the type or operator.
- Make a separate, non-mutating
mcp_blender_execute_blender_codecall to inspect the running object, RNA properties, enum items, or operator RNA. - Check every uncertain property and enum value. Do not infer API availability from an older Blender example.
- Only then make the mutation in a second Blender MCP call.
- 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.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

