Tools

Blender MCP: drive Blender with natural language — a textbook MCP-for-desktop-apps example

TL;DR

MCP for Blender (formerly blender-mcp) pairs a Blender addon listening on localhost:9876 with an MCP server; Claude Code, Claude Desktop, Cursor and others can edit scenes, import assets, generate 3D models and run Python in Blender. Quick install: uvx mcp-for-blender setup. Save first, enable safe mode and never expose the socket.

“Create a low-poly room with a wooden desk, a warm desk lamp and a camera at 45 degrees” — type that into Claude and watch Blender build the scene. That’s MCP for Blender (formerly blender-mcp), a community plugin by ahujasid with more than 28,000 GitHub stars. Beyond being fun for 3D work, it’s a very clear example of how MCP turns desktop software with a scripting API into tools for an agent.

How it works

[Claude Code / Claude Desktop / Cursor]
          |  MCP (tool calls)
          v
[MCP server: mcp-for-blender]  (launched via uvx)
          |  JSON over a TCP socket, default localhost:9876
          v
[Addon inside Blender]  -> executes via Blender's Python API
  • The addon starts a socket server inside Blender that receives and runs commands.
  • The MCP server receives tool calls from the AI client and turns them into JSON commands over the socket.
  • The agent works on the scene’s structured data (objects, materials, cameras) rather than clicking on screenshots — much faster and more reliable.

Installation

Quick setup

uvx mcp-for-blender setup

This installs uv if needed, finds the MCP clients on your machine, adds a blender entry to their configs, and installs and enables the Blender addon. The package was renamed from blender-mcp to mcp-for-blender; existing uvx blender-mcp setups still work.

Manual setup

# Install uv with the official installer (not pip install uv)

# Register the MCP server
claude mcp add blender uvx mcp-for-blender            # Claude Code
codex mcp add blender -- uvx mcp-for-blender          # Codex

# Install the addon
uvx mcp-for-blender install-addon
# In Blender: Edit → Preferences → Add-ons → enable "Interface: MCP for Blender"

Claude Desktop, Cursor and VS Code use a JSON entry with "command": "uvx" and "args": ["mcp-for-blender"].

Start it

In the 3D viewport press N → the MCP for Blender tab → Start MCP Server. Your AI client will then see the Blender tools.

Main tools

ToolWhat it does
get_scene_infoA compact summary of the current scene
lookViewport, camera, multi-angle, animation and render views — so the agent can “see” the result
execute_blender_codeRuns arbitrary Python inside Blender
search_assets / import_assetFind and import assets from Poly Haven (no key needed), Sketchfab, Poly Pizza
generate_3dGenerate a 3D model with Tripo, Hunyuan3D, Hyper3D Rodin or Meshy and import it
get_addon_statusVersion and enabled features

Sample prompt

Create a low-poly dungeon scene with a dragon guarding a pot of gold.
Use a stone texture from Poly Haven at 1k resolution.
Add warm torch lighting, then show me the camera view.

Tip: break complex requests into smaller steps to avoid timeouts, and ask the agent to use look after each step to check its own work.

Safety and limits

  • execute_blender_code runs arbitrary Python — always save first and don’t experiment on important scenes.
  • Set BLENDER_MCP_SAFE_MODE=1 to check scripts before they run and block risky operations (file access, launching programs, network access).
  • The socket has no authentication or encryption — keep it on localhost; for remote access use an SSH tunnel.
  • Run only one MCP server per Blender (e.g. Cursor or Claude Desktop, not both).
  • Telemetry: a minimal anonymous usage record is collected by default; prompts, code and screenshots only if you opt in. Disable everything with DISABLE_TELEMETRY=true.
  • Poly Haven downloads can freeze Blender’s UI — request 1k or 2k resolution.

Quick troubleshooting

  • spawn uvx ENOENT: use the full path to uvx in the config (find it with which uvx) and fully restart the client.
  • Don’t run the uvx command yourself in a terminal — the AI client launches the server.
  • Persistent connection errors: restart both the AI client and the server in Blender.
  • Several Blender instances: change the port with --port or BLENDER_PORT.

The bigger lesson: MCP for desktop apps

The “addon inside the app + external MCP server + socket” pattern works for lots of software with a scripting API: Godot, Unity, Figma, Office, CAD tools… When an agent operates through the API rather than the UI, it’s faster, less error-prone and easier to permission.

How to apply it

  • Developers / 3D artists: Use it to block out scenes, set up lighting and import assets quickly — keep the fine-tuning for yourself.
  • Tech Leads: If your company has in-house software with a scripting API, this is a reference architecture for your own MCP server. Remember: localhost, safe mode, limited tools.
  • PMs: 3D visuals for pitches or product demos can now be prototyped in an afternoon with natural language.

Sources & references

  1. ahujasid/blender-mcp (MCP for Blender) — GitHub