Blender Model Context Protocol

by ahujasid

Community Design Tools 26k likes

Blender MCP server bridges Claude and Blender over a local socket, letting an agent inspect scenes and run Python to build, texture, and pose 3D objects.

Add to Claude Desktop

uvx blender-mcp

Source: https://github.com/ahujasid/blender-mcp

About

Blender MCP is really two pieces: an addon.py add-on that runs a small socket server inside Blender (default localhost:9876), and an MCP server that translates Claude's tool calls into commands sent over that socket. get_scene_info and get_object_info return structured data about what's currently in the scene, get_viewport_screenshot lets the agent see the result of its own edits, and execute_blender_code is the escape hatch: it runs arbitrary Python through Blender's own bpy API for anything the dedicated tools don't cover.

Because execute_blender_code has full access to bpy, an agent can create and delete objects, apply and edit materials, and manipulate scenes well beyond what a fixed tool list would allow, all driven by natural-language prompts in Claude Desktop, Cursor, or VS Code.

Key features

  • execute_blender_code runs arbitrary Python inside Blender via bpy for anything beyond the dedicated tools
  • get_scene_info and get_object_info return structured data on the current scene and selected objects
  • get_viewport_screenshot lets the agent see what it just built before continuing
  • Two-way socket connection (default localhost:9876) between the in-Blender addon and the MCP server
  • Works with Claude Desktop, Cursor, VS Code, and other MCP clients

Use cases

  • Prompt-driven 3D modeling: build, position, and delete objects with natural language instead of manual clicks
  • Applying and iterating on materials and colors across a scene through conversation
  • Letting an agent inspect and screenshot a scene to check its own work before moving on
  • Scripting bulk or repetitive Blender operations through execute_blender_code instead of the UI

Available tools

execute_blender_code

Runs arbitrary Python code inside Blender through its bpy API.

get_scene_info

Returns structured information about the current Blender scene.

get_object_info

Returns detailed information about a specific object in the scene.

get_viewport_screenshot

Captures a screenshot of the current Blender viewport.

Frequently asked questions

Do I need to install anything inside Blender itself?

Yes. You install and enable the addon.py add-on inside Blender first; it opens the local socket server that the MCP server connects to.

What can execute_blender_code actually do?

It runs real Python through Blender's bpy API, so it can do essentially anything the Blender Python console can, well beyond what the fixed scene/object tools expose.