Blender Open MCP

by dhakalnirajan

17 stars
819 downloads
Not rated
GitHub

About

Integrates Blender with local AI models via Ollama, enabling natural language control of 3D modeling tasks including object creation, modification, material application, and rendering with optional PolyHaven asset integration.

Details

Author
dhakalnirajan
Repository
dhakalnirajan/blender-open-mcp
GitHub stars
17
Downloads
819
License
Other
Categories
Productivity, Developer Tools, Design, AI, Media, Project Management, Infrastructure, Other
Tags
#integration

- Natural language control of Blender via local AI (Ollama)
- Supports multiple MCP transports (HTTP and stdio)
- Full Blender scene inspection and object manipulation
- Material assignment, rendering, and PolyHaven asset integration
- Execute arbitrary Python/bpy code in Blender
- Switch active Ollama model and server URL at runtime

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Blender Open MCP
    Command (node, npx, python, etc.) blender-mcp
    Arguments
    • Argument 1 --transport
    • Argument 2 stdio

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

uv venv
source .venv/bin/activate # Linux / macOS

1. Open Blender
2. Go to Edit → Preferences → Add-ons → Install...
3. Select addon.py from the repository root
4. Enable "Blender MCP"
5. Open the 3D Viewport, press N, find the Blender MCP panel
6. Click "Start MCP Server" (default port: 9876)

uv pip install -e ".[dev]"

blender_get_scene_info

Full scene summary: objects, camera, render settings

blender_get_object_info

Detailed object info: transforms, materials, mesh stats

blender_create_object

Add a primitive mesh (CUBE, SPHERE, CYLINDER, ...)

blender_modify_object

Change location, rotation, scale, visibility

blender_delete_object

Remove an object from the scene

blender_set_material

Create and assign a Principled BSDF material

blender_render_image

Render current scene to a file

blender_execute_code

Run arbitrary Python/bpy code in Blender

blender_get_polyhaven_categories

List PolyHaven asset categories

blender_search_polyhaven_assets

Search PolyHaven library with pagination

blender_download_polyhaven_asset

Download & import a PolyHaven asset

blender_set_texture

Apply a downloaded PolyHaven texture to an object

blender_ai_prompt

Send a natural language prompt to Ollama

blender_get_ollama_models

List available local Ollama models

blender_set_ollama_model

Switch the active Ollama model

blender_set_ollama_url

Update the Ollama server URL

| Tool | Description | Modifies Blender |
|------|-------------|-----------------|
| blender_get_scene_info | Full scene summary: objects, camera, render settings | No |
| blender_get_object_info | Detailed object info: transforms, materials, mesh stats | No |
| blender_create_object | Add a primitive mesh (CUBE, SPHERE, CYLINDER, ...) | Yes |
| blender_modify_object | Change location, rotation, scale, visibility | Yes |
| blender_delete_object | Remove an object from the scene | Yes ⚠️ |
| blender_set_material | Create and assign a Principled BSDF material | Yes |
| blender_render_image | Render current scene to a file | Yes |
| blender_execute_code | Run arbitrary Python/bpy code in Blender | Yes ⚠️ |
| blender_get_polyhaven_categories | List PolyHaven asset categories | No |
| blender_search_polyhaven_assets | Search PolyHaven library with pagination | No |
| blender_download_polyhaven_asset | Download & import a PolyHaven asset | Yes |
| blender_set_texture | Apply a downloaded PolyHaven texture to an object | Yes |
| blender_ai_prompt | Send a natural language prompt to Ollama | No |
| blender_get_ollama_models | List available local Ollama models | No |
| blender_set_ollama_model | Switch the active Ollama model | No |
| blender_set_ollama_url | Update the Ollama server URL | No |

---

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "blender open mcp": {
            "env": {},
            "args": [
                "--transport",
                "stdio"
            ],
            "shell": false,
            "command": "blender-mcp"
        }
    }
}

Linux

{
    "env": [],
    "args": [
        "--transport",
        "stdio"
    ],
    "shell": false,
    "command": "blender-mcp"
}

Macos

{
    "env": [],
    "args": [
        "--transport",
        "stdio"
    ],
    "shell": false,
    "command": "blender-mcp"
}

Windows

{
    "env": [],
    "args": [
        "--transport",
        "stdio"
    ],
    "shell": false,
    "command": "blender-mcp"
}

blender-open-mcp

Open Models MCP for Blender3D using Ollama

Control Blender 3D with natural language prompts via local AI models. Built on the Model Context Protocol (MCP), connecting Claude, Cursor, or any MCP client to Blender through a local Ollama LLM.

---

Architecture

MCP Client (Claude/Cursor/CLI)
         │ HTTP / stdio
         ▼
┌─────────────────────┐
│   FastMCP Server    │  ← server.py  (port 8000)
│   blender-open-mcp  │
└─────────────────────┘
    │ TCP socket           │ HTTP
    ▼                      ▼
┌──────────────┐    ┌─────────────┐
│  Blender     │    │   Ollama    │  (port 11434)
│  Add-on      │    │  llama3.2   │
│  addon.py    │    │  gemma3...  │
│  (port 9876) │    └─────────────┘
└──────────────┘
       │ bpy
       ▼
  Blender Python API

Three independent processes:

- FastMCP Server (server.py): Exposes MCP tools over HTTP or stdio
- Blender Add-on (addon.py): TCP socket server running inside Blender
- Ollama: Local LLM serving natural language queries

---

Installation

Prerequisites

| Dependency | Version | Install |
|-----------|---------|---------|
| Blender | 3.0+ | blender.org |
| Python | 3.10+ | System or python.org |
| Ollama | Latest | ollama.com |
| uv | Latest | pip install uv |

1. Clone and set up

```bash
git clone https://github.com/dhakalnirajan/blender-open-mcp.git
cd blender-open-mcp

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.