Blender Model Context Protocol
by ahujasid
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.
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.