Windows Claude Desktop Blender 4.x MCP v2025-11-25

Bridging Blender MCP
with Claude Desktop

Complete setup guide — uv installation, PATH configuration, JSON config, Python version pinning, and dependency troubleshooting on Windows.

📅 April 27, 2026 🐍 Python 3.12 (pinned) 📦 blender-mcp v1.5.6 ⚙️ uv v0.11.7

How It Works — Architecture Overview

Claude Desktop communicates with Blender through the Model Context Protocol (MCP). The bridge is a local Python server (blender-mcp) managed by uvx. Claude spawns this server as a child process and exchanges JSON-RPC messages over stdio.

Claude Desktop
uvx (process launcher)
blender-mcp server
Blender (port 9000)
ComponentRoleRequirement
uv / uvxPython tool runner — installs & runs blender-mcp in an isolated envMust be on PATH visible to Claude Desktop
blender-mcpMCP server — translates Claude tool calls to Blender Python APIInstalled automatically by uvx
Blender addonSocket server inside Blender listening on port 9000Must be enabled in Blender preferences
claude_desktop_config.jsonTells Claude Desktop how to spawn the MCP serverAbsolute paths required on Windows
01

Install uv on Windows

Run this in an Administrator PowerShell. The installer downloads uv.exe, uvx.exe, and uvw.exe to your user directory.

PowerShell Run as Administrator
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

After install, the binaries land at:

Path
C:\Users\<YourName>\.local\bin\uv.exe
C:\Users\<YourName>\.local\bin\uvx.exe
C:\Users\<YourName>\.local\bin\uvw.exe
⚠️

The installer modifies your PowerShell profile to add the bin folder to PATH — but this only takes effect in new shell sessions. Claude Desktop must be restarted after this step, as it caches the environment at launch.

02

Fix PowerShell Execution Policy

The installer writes a profile script. If PowerShell's execution policy is Restricted (Windows default), it will block this script at every launch with a PSSecurityException. Fix it once:

PowerShell Run once — confirm with Y
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
ℹ️

RemoteSigned allows locally created scripts (like the uv profile entry) to run freely, while still requiring internet-downloaded scripts to be signed. This is the recommended safe setting for developers.

03

Install Python 3.12 via uv

🚨

Critical: blender-mcp v1.5.6 depends on supabase → storage3 → pyiceberg. The pyiceberg package has no pre-built wheel for Python 3.14 on Windows, causing a C-extension compile failure that requires MSVC. Pin to Python 3.12 instead.

Python Versionpyiceberg wheel availableblender-mcp installs
3.14 (system installed)✗ No — build from source✗ Fails (needs MSVC)
3.12 (via uv)✓ Pre-built wheel✓ Works
3.11✓ Pre-built wheel✓ Works
PowerShell Install Python 3.12 managed by uv
uv python install 3.12
PowerShell Clear cached build attempts
uv cache clean
04

Configure claude_desktop_config.json

Claude Desktop reads its MCP server definitions from a JSON config file. Open it with:

PowerShell Open config in Notepad
notepad "$env:APPDATA\Claude\claude_desktop_config.json"

Final Working Configuration

JSON claude_desktop_config.json
{
  "mcpServers": {
    "blender": {
      "command": "C:\\Users\\ANJAN GANAPATHY K\\.local\\bin\\uvx.exe",
      "args": ["--python", "3.12", "blender-mcp"]
    }
  }
}
KeyValueWhy
"command"Full absolute path to uvx.exeClaude Desktop inherits a limited PATH that may not include ~\.local\bin
"args"[0]"--python"Tells uvx to use a specific Python version
"args"[1]"3.12"Pins to Python 3.12 to avoid pyiceberg build failure on 3.14
"args"[2]"blender-mcp"The PyPI package name of the MCP server to run
⚠️

Backslashes in JSON must be doubled (\\). A single \ is an escape character in JSON and will silently corrupt the path. Use where.exe uvx in PowerShell to get the exact path, then double every backslash when pasting into JSON.

05

Enable Blender MCP Addon

The blender-mcp server communicates with Blender via a local socket on port 9000. Blender must be running with the addon active — otherwise the server logs: Could not connect to Blender on startup. Will retry on first tool call.

When connected successfully, the log shows: Server started and connected successfully followed by a ListToolsRequest listing all available Blender tools (scene info, object creation, render, history undo/redo, etc.)

06

Troubleshooting Reference

Error in LogRoot CauseFix
spawn uvx ENOENT Claude Desktop can't find uvx — PATH not inherited Use absolute path to uvx.exe in config
'uvx' is not recognized Same as above — cmd.exe fallback also fails Absolute path in command field
No module named blender_mcp Config using python -m blender_mcp instead of uvx blender-mcp Switch back to uvx-based config
Microsoft Visual C++ 14.0 required Python 3.14 — pyiceberg has no wheel, tries to compile Add --python 3.12 to args
Could not connect to Blender Blender not running or addon not enabled Open Blender, enable MCP addon
PSSecurityException on profile PowerShell execution policy blocks uv profile script Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
Log file not found Server never launched — ENOENT happened before any file was written Fix PATH/command first, then check %APPDATA%\Claude\logs\

View Live Logs

PowerShell Read MCP server log
Get-Content "$env:APPDATA\Claude\logs\mcp-server-blender.log" -Tail 30
07

Verification Checklist

Quick Reference — All Commands

PowerShell Full setup sequence
# 1. Install uv
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

# 2. Fix execution policy (new Admin PowerShell)
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser

# 3. Install Python 3.12
uv python install 3.12

# 4. Clear uv cache
uv cache clean

# 5. Confirm uvx path
where.exe uvx

# 6. Open Claude Desktop config
notepad "$env:APPDATA\Claude\claude_desktop_config.json"

# 7. View logs after restart
Get-Content "$env:APPDATA\Claude\logs\mcp-server-blender.log" -Tail 30
JSON claude_desktop_config.json — final working config
{
  "mcpServers": {
    "blender": {
      "command": "C:\\Users\\ANJAN GANAPATHY K\\.local\\bin\\uvx.exe",
      "args": ["--python", "3.12", "blender-mcp"]
    }
  }
}