Source profileQuality 87/100

NousResearch/hermes-agent/optional-skills/creative/blender-mcp/SKILL.md

blender-mcp

Drive Blender via the catalog blender MCP, with bpy recipes.

Source repository stars
225,255
Declared platforms
0
Static risk flags
0
Last source update
2026-08-04
Source checked
2026-08-04

Decision brief

What it does—and where it fits

Companion skill for the blender entry in the Hermes MCP catalog. The MCP server provides the connection to Blender; this skill teaches the bpy idioms and pitfalls for driving it well. It does not cover Blender UI workflows — everything here goes through the MCP tools against a l…

Best for

  • Use when the user wants to create or modify anything in a running Blender instance: meshes, materials, animations, lighting, renders. Requires the blender MCP server installed and a Blender desktop session with the addo…

Not for

  • Tasks that require unconfirmed production actions or broad system permissions.
  • Environments where the pinned source and install steps cannot be inspected.

Compatibility matrix

Platform support, with evidence labels

PlatformStatusEvidenceWhat to check
CodexNot declaredNo explicit evidencePortability before use
Claude CodeNot declaredNo explicit evidencePortability before use
CursorNot declaredNo explicit evidencePortability before use
Gemini CLINot declaredNo explicit evidencePortability before use
Open the compatibility checker

Installation

Inspect first. Install second.

The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.

Source-detected install commandSource
npx skills add https://github.com/NousResearch/hermes-agent --skill "optional-skills/creative/blender-mcp"
Safe inspection promptEditorial

Inspect the Agent Skill "blender-mcp" from https://github.com/NousResearch/hermes-agent/blob/f5be9236e00ddf2f2a412697f267078fc4ee068e/optional-skills/creative/blender-mcp/SKILL.md at commit f5be9236e00ddf2f2a412697f267078fc4ee068e. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.

Workflow

What the source asks the agent to do

  1. 01

    Procedure

    1. Call getsceneinfo first — never assume the scene is empty. 2. Build with executeblendercode, in small focused calls (one logical step per call: add objects, then materials, then animation). Large monolithic scripts hit the bridge timeout. 3. Verify visually with getviewportsc…

    Call getsceneinfo first — never assume the scene is empty.Build with executeblendercode, in small focused calls (one logicalVerify visually with getviewportscreenshot between major steps.
  2. 02

    Verification

    getsceneinfo returns the expected object list after each build step.

    getsceneinfo returns the expected object list after each build step.getviewportscreenshot shows the scene you intended.After a render, confirm the output file exists and report its absolute
  3. 03

    When to Use

    Use when the user wants to create or modify anything in a running Blender instance: meshes, materials, animations, lighting, renders. Requires the blender MCP server installed and a Blender desktop session with the addon connected.

    Use when the user wants to create or modify anything in a running Blender instance: meshes, materials, animations, lighting, renders. Requires the blender MCP server installed and a Blender desktop session with the addo…
  4. 04

    Prerequisites

    1. Install the MCP server from the Nous catalog (one-time):

    Install the MCP server from the Nous catalog (one-time):Install the addon inside Blender (one-time — the catalog entry'sDownload https://raw.githubusercontent.com/ahujasid/blender-mcp/main/addon.py
  5. 05

    Quick Reference

    Deeper material lives in the reference files (load on demand):

    Deeper material lives in the reference files (load on demand):Optional asset-service tools (PolyHaven, Sketchfab, Hyper3D, Hunyuan3D) are disabled by default. If the user has enabled a service in the addon panel, opt into its tools with hermes mcp configure blender.

Permission review

Static risk signals and limitations

No configured static risk pattern was detected

This is not proof of safety. Runtime behavior, indirect dependencies, and hidden external systems are outside the static scan.

Evidence record

Why each signal appears

EvidenceSourceComputedTestedEditorial
SignalValueEvidence typeMeaning
Quality score87/100ComputedDocumentation, specificity, maintenance, and trust rules
Repository stars225,255SourceRepository attention, not individual Skill quality
Compatibility0 platformsSourceDeclared in the catalog source record
Usage guideautomated source guideEditorialGenerated or reviewed according to the visible evidence level

Pinned source

Provenance and original SKILL.md

Repository
NousResearch/hermes-agent
Skill path
optional-skills/creative/blender-mcp/SKILL.md
Commit
f5be9236e00ddf2f2a412697f267078fc4ee068e
License
MIT
Collected
2026-08-04
Default branch
main
View the original SKILL.md

Blender MCP Skill

Companion skill for the blender entry in the Hermes MCP catalog. The MCP server provides the connection to Blender; this skill teaches the bpy idioms and pitfalls for driving it well. It does not cover Blender UI workflows — everything here goes through the MCP tools against a live Blender session.

When to Use

Use when the user wants to create or modify anything in a running Blender instance: meshes, materials, animations, lighting, renders. Requires the blender MCP server installed and a Blender desktop session with the addon connected.

Prerequisites

  1. Install the MCP server from the Nous catalog (one-time):

    hermes mcp install blender
    

    This configures the pinned blender-mcp stdio server with the curated tool set: get_scene_info, get_object_info, get_viewport_screenshot, execute_blender_code.

  2. Install the addon inside Blender (one-time — the catalog entry's post-install notes cover this too):

  3. Every session: start Blender FIRST, press N in the viewport, open the "BlenderMCP" tab, click "Connect to Claude" (starts the local bridge socket). Then start your Hermes session so the MCP tools are loaded.

    The addon refuses to start under blender -b (background mode). On a machine without a display, run Blender under a virtual one: xvfb-run blender. GPU rendering works fine under Xvfb.

Quick Reference

MCP toolUse for
get_scene_infoList objects before touching the scene
get_object_infoInspect one object (transform, materials)
get_viewport_screenshotVisual check of what you built
execute_blender_codeEverything else — arbitrary bpy Python

Deeper material lives in the reference files (load on demand):

ReferenceContents
references/bpy-api.mdEssential bpy operations: modeling, materials, modifiers, rendering
references/recipes.mdComplete working scenes: low-poly terrain, glass sphere, HDRI lighting, turntable animation
references/pitfalls.mdHard-won lessons: empty code results in 5.x, ops-vs-data API, engine names by version

Optional asset-service tools (PolyHaven, Sketchfab, Hyper3D, Hunyuan3D) are disabled by default. If the user has enabled a service in the addon panel, opt into its tools with hermes mcp configure blender.

Procedure

  1. Call get_scene_info first — never assume the scene is empty.
  2. Build with execute_blender_code, in small focused calls (one logical step per call: add objects, then materials, then animation). Large monolithic scripts hit the bridge timeout.
  3. Verify visually with get_viewport_screenshot between major steps.
  4. Render to an absolute path and tell the user where the file is.

Common bpy Patterns

Clear scene:

bpy.ops.object.select_all(action='SELECT')
bpy.ops.object.delete()

Add mesh objects:

bpy.ops.mesh.primitive_uv_sphere_add(radius=1, location=(0, 0, 0))
bpy.ops.mesh.primitive_cube_add(size=2, location=(3, 0, 0))
bpy.ops.mesh.primitive_cylinder_add(radius=0.5, depth=2, location=(-3, 0, 0))

Create and assign material:

mat = bpy.data.materials.new(name="MyMat")
mat.use_nodes = True
bsdf = mat.node_tree.nodes.get("Principled BSDF")
bsdf.inputs["Base Color"].default_value = (R, G, B, 1.0)
bsdf.inputs["Roughness"].default_value = 0.3
bsdf.inputs["Metallic"].default_value = 0.0
obj.data.materials.append(mat)

Keyframe animation:

obj.location = (0, 0, 0)
obj.keyframe_insert(data_path="location", frame=1)
obj.location = (0, 0, 3)
obj.keyframe_insert(data_path="location", frame=60)

Render to file:

bpy.context.scene.render.filepath = "/tmp/render.png"
bpy.context.scene.render.engine = 'CYCLES'
bpy.ops.render.render(write_still=True)

Pitfalls

  • The blender MCP tools only exist if the server is installed and the session started after install. If they're missing, run hermes mcp install blender and start a new session.
  • The addon bridge must be (re)connected inside Blender each Blender session (N-panel > BlenderMCP > Connect). "Connection refused" from the tools means Blender isn't running or the addon isn't connected — fix that, don't retry.
  • Break complex scenes into multiple smaller execute_blender_code calls to avoid bridge timeouts.
  • Render output paths must be absolute (/tmp/render.png), not relative — they resolve on the BLENDER host's filesystem, which matters if Hermes and Blender run on different machines.
  • shade_smooth() requires the object to be selected and in object mode.
  • execute_blender_code runs arbitrary Python inside Blender with no sandbox — same trust level as the terminal tool. Don't paste untrusted code into it.
  • Do NOT hand-roll raw TCP JSON to port 9876 from execute_code — that was this skill's pre-MCP workaround. It bypasses the catalog's version pinning and tool curation. The MCP tools are the supported path.

Verification

  • get_scene_info returns the expected object list after each build step.
  • get_viewport_screenshot shows the scene you intended.
  • After a render, confirm the output file exists and report its absolute path to the user.