Two Components
Blender MCP is made up of two parts that work together:Blender Addon
Runs inside Blender as a socket server on
localhost:9876. It receives JSON commands and executes them directly in Blender using the Blender Python API (bpy).MCP Server
A Python process that implements the Model Context Protocol. It connects to the Blender addon and exposes Blender tools to your AI client.
Communication Flow
When you send a prompt, the request flows through the system in this order:- The AI client calls a tool on the MCP server.
- The MCP server sends a JSON command over TCP to the Blender addon.
- The addon executes Blender Python (
bpy) inside the running Blender instance. - The addon returns the result back to the MCP server.
- The MCP server forwards the result back to the AI client.
Communication Protocol
Commands and responses are exchanged as JSON objects over a TCP socket.The default socket address is
localhost:9876. You can change this with the BLENDER_HOST and BLENDER_PORT environment variables.type and params:
status and either a result or message:
Tool Execution Flow
Blender MCP exposes two categories of tools: High-level tools such asget_scene_info, get_object_info, get_viewport_screenshot, and download_polyhaven_asset are purpose-built for common tasks. They send structured commands to the addon, which runs predefined bpy logic and returns clean results.
Low-level code execution via execute_blender_code sends raw Python directly to Blender. This gives unlimited flexibility but also full access to the Blender environment, including the file system.
Security Model
Blender MCP is designed for local use. The addon listens onlocalhost only, which means it is not reachable from other machines by default. Do not expose port 9876 publicly or run Blender MCP on an untrusted network.
Only one MCP server instance should connect to Blender at a time. Running multiple clients (for example, both Cursor and Claude Desktop) simultaneously against the same Blender session will cause conflicts.