BlenderBLOCK
Headless Blender automation via FastMCP — 41 portmanteau tools (150+ ops). Batch mesh/VSE/Grease Pencil, VRM, Gaussian splats; optional live bridge. For Cursor / Claude Desktop. React dashboard + Tauri app.
Overview
From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.
Control Blender with natural language through MCP. Tell Claude to create a steampunk robot with glowing eyes and watch it build in Blender.
Get started in 2 minutes
Steps
- Download the
.mcpbfrom Releases - Drag it into Claude Desktop (Settings → MCP Servers → Install from file)
- Install Blender if you have not already
- Restart Claude Desktop and try: Create a red cube on a gray floor with a sun lamp.
That is enough for most tools — the server runs Blender headless in the background.
Optional — live viewport: install the bridge addon in Blender to watch the scene update while you chat. See INSTALL.md.
Other install meth
b5c071fe9c60OBSERVED · 2026-10-08Connect
Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control. Replace the environment placeholders with a token scoped to the least it needs.
claude mcp add blender-mcp-webapp --env SKETCHFAB_API_TOKEN=${SKETCHFAB_API_TOKEN} -- npx -y [email protected]{
"mcpServers": {
"blender-mcp-webapp": {
"command": "npx",
"args": [
"-y",
"[email protected]"
],
"env": {
"SKETCHFAB_API_TOKEN": "${SKETCHFAB_API_TOKEN}"
}
}
}
}Exposed tools (66)
56 read · 9 write · 1 destructive. Blast radius: 1 tool can delete or overwrite — an agent that can be talked into calling a tool can be talked into calling this one.
| Tool | Risk | Description |
|---|---|---|
OpenFang | read | Fleet supervisor and modular agentic node controller. |
add_to_collection | write | Add an object to a collection. |
agentic_blender_workflow | write | Execute autonomous multi-step Blender workflows via FastMCP 3.1 SEP-1577 sampling. |
ai_chat | read | Chat with the Blender AI assistant. Provides natural-language help with Blender operations. |
blender_addons | read | |
blender_ai_generate | read | |
blender_api_docs | read | |
blender_atlasing | read | |
blender_batch | read | |
blender_compositor | read | |
blender_download | read | |
blender_export | read | |
blender_export_presets | read | |
blender_geonodes | read | |
blender_grease_pencil | read | |
blender_help | read | |
blender_import | write | |
blender_jobs | read | |
blender_logs | read | |
blender_materials | read | |
blender_materials_baking | read | |
blender_modifiers | read | |
blender_particles | read | |
blender_physics | read | |
blender_render | read | |
blender_scene | read | |
blender_sculpt | read | |
blender_selection | read | |
blender_session | read | |
blender_shaders | read | |
blender_shapekeys | read | |
blender_shutdown | read | Shut down the blender-mcp server process. |
blender_splatting | read | |
blender_status | read | |
blender_textures | read | |
blender_transform | read | |
blender_uv | read | |
blender_validation | read | |
blender_vision_refine | read | |
blender_vrm_metadata | read | |
blender_vse | read | |
blender_workflow | read | |
clear_scene | destructive | Remove all objects from the current scene. |
config_get | read | Return current webapp config (LLM provider, URLs, selected model, etc.). |
config_set | write | Update webapp config. Pass keys: server_host, server_port, theme, auto_sync, notifications, llm. |
construct_object | read | |
conversational_blender_assistant | read | Conversational Blender assistant with SEP-1577 multi-step sampling. |
create_collection | write | Create a new collection. |
create_scene | write | Create a new Blender scene with the specified name. |
export_for_mcp_handoff | read | |
generate_blender_script | read | Generate a Blender Python script from a natural language prompt using a local LLM (Ollama). |
import_cad_file | write | |
intelligent_3d_processing | read | Intelligent batch 3D scene processing via FastMCP 3.1 SEP-1577 multi-step sampling. |
list_local_models | read | Discover local LLM models from Ollama and LM Studio. |
list_scenes | read | List all scenes in the current Blender file. |
llm_models | read | |
manage_asset_library | read | |
manage_blender_addons | read | |
manage_object_construction | read | |
scene_get_hierarchy | read | Get the full scene hierarchy as a JSON-formatted string. |
script_execute | write | |
server_info | read | Return Blender MCP server information, version, and status. |
set_active_scene | write | Set the active scene by name. |
show_blender_status_app | read | Show Blender MCP server status as a rich dashboard card. |
show_logs_app | read | Show recent log entries as a scrollable Prefab card. |
show_tools_app | read | List all tools organized by category as a Prefab card. |
Trust audit
BLOCKgrade F · trust 38/100 Do not install this without reading the findings. The audit found something that could harm you or your machine.
| Layer | What it checks | Result |
|---|---|---|
| L0 | Provenance & inventory | WARN |
| L1 | Static analysis of the code | FAIL |
| L2 | Instruction surface (what it tells the agent) | FAIL |
| L3 | Class-specific surface | WARN |
| L4 | Behavioural (sandbox) | SKIPPED |
What the source does
- Filesystem
- declared (8 observation(s))
- Network
- declared (11 observation(s))
- Shell
- declared (8 observation(s))
- Dependencies
- not all pinned
- Secrets in source
- none-found
Findings (25)
exec(compile(code, "<mcp_bridge>", "exec"), {"bpy": bpy})exec(compile(code, "<mcp_bridge>", "exec"), {"bpy": bpy})atlas_found = eval(line.split(": ")[1])unmapped = eval(line.split(": ")[1])os.environ.copy() ... urllib.request
# Installation
extension.wasm
scripts/backup-repo.ps1
mod = importlib.import_module(entry_module)
package_mod = importlib.import_module(package)
importlib.import_module(full_module_name)
CMD python -c "import urllib.request; urllib.request.urlopen('http://127.0.0.1:10849/api/v1/health', timeout=5)"# Per-repo fleet start config for blender-mcp
# Fleet unified launcher - do not edit logic here.
clear_scene
.assess-fix-timestamp
.depot.json
.mcpbignore
.pre-commit-config.yaml
.windsurfrules
exec(compile(code, "<mcp_bridge>", "exec"), {"bpy": bpy})digest = hashlib.md5(img.tobytes(), usedforsecurity=False).hexdigest()
return hashlib.md5(content.encode()).hexdigest()[:16]
2. In Claude Desktop: `/mcp servers add hello-mcp --url http://127.0.0.1:8000`.
By default, FastMCP binds to `localhost:3333`. Configure your client (e.g., Claude Desktop, Cursor, Windsurf) to use `http://127.0.0.1:3333`.
Gates applied: no_behavioural_pass.
b5c071fe9c60full audit observations/trust-audit/mcp-server/sandraschi__blender-20.json · Report an issue / request a re-scanAudit history
Every audit this server has had. A grade with a past is a grade somebody is still checking.
| Date | Source | Verdict | Grade | Score | Change |
|---|---|---|---|---|---|
| 2026-10-08 | b5c071fe9c60 | BLOCK | F | 38 | first audit |
Questions
What is the Blender MCP server?
Headless Blender automation via FastMCP — 41 portmanteau tools (150+ ops). Batch mesh/VSE/Grease Pencil, VRM, Gaussian splats; optional live bridge. For Cursor / Claude Desktop. React dashboard + Tauri app.
What tools does Blender expose?
66 in total: 56 read-only, 9 that write, and 1 that can delete or overwrite (clear_scene). Every one is listed on this page with its risk.
Is Blender safe to connect to an agent?
No — not without reading the findings first. The audit graded it F (38/100) and found 6 critical or high issues in the source. Each one is listed on this page with the file and line it is on. Separately from the audit: 1 of its tools can destroy data, so scope the token you give it to what you actually need.
What credentials does Blender need?
It reads SKETCHFAB_API_TOKEN from the environment. Give it a token scoped to the least it needs — an agent that can be talked into calling a tool can be talked into calling it with your credentials.
How does Blender run?
It speaks sse and stdio, so it runs as a local process your client starts. It is published on npm as blender-mcp-webapp at 1.0.0.
How current is this page?
The grade is for one exact copy of the source (b5c071fe9c60), read on 2026-10-08. The repository is watched and re-audited when it changes.