Chat with Blender
Enables AI assistants to control Blender 3D modeling and rendering through natural language commands via the Model Context Protocol.
README
<div align="center"> <img src="assets/logo.png" alt="Chat with Blender Logo" width="200"> <h1>Chat with Blender</h1> <h3>Blender MCP Server</h3> </div>
<p align="center"> <img src="https://img.shields.io/badge/Blender-3.0%2B-orange?logo=blender" alt="Blender 3.0+"> <img src="https://img.shields.io/badge/Python-3.10%2B-blue?logo=python" alt="Python 3.10+"> <img src="https://img.shields.io/badge/MCP-Compatible-green" alt="MCP Compatible"> <img src="https://img.shields.io/badge/License-MIT-yellow" alt="MIT License"> <img src="https://img.shields.io/badge/Vibe-Coded-ff69b4" alt="Vibe Coded"> </p>
<p align="center"> <strong>๐จ Control Blender with AI</strong><br> Create, edit, and render 3D models through chat </p>
<p align="center"> <a href="#-features">Features</a> โข <a href="#-installation">Installation</a> โข <a href="#-usage">Usage</a> โข <a href="#%EF%B8%8F-mcp-tools">MCP Tools</a> โข <a href="#-security">Security</a> </p>
โก Vibe Coding Project: This project was developed with AI assistant help using the "vibe coding" approach. It may contain experimental features and unexpected bugs. Your contributions and bug reports are highly appreciated!
๐ฌ Demo
<p align="center"> <img src="screenshots/scene-example.png" alt="Chat with Blender Demo" width="800"> </p>
<p align="center"> <em>AI-generated terrarium scene - trees, clouds, and glass box</em> </p>
โจ Features
Chat with Blender enables AI assistants to directly control Blender using the Model Context Protocol (MCP).
| Feature | Description |
|---|---|
| ๐ฏ Object Creation | Cube, sphere, cylinder, torus, text, and more |
| ๐ง Object Editing | Modify position, rotation, scale |
| ๐ญ Material Control | Color, metallic, roughness, emission settings |
| ๐ก Lighting | Point, Sun, Spot, Area lights |
| ๐ท Camera | Camera creation and setup |
| ๐ผ๏ธ Render | Convert scene to image |
| ๐ Code Execution | Execute custom Python code |
Supported Platforms
<table> <tr> <td align="center"><img src="https://upload.wikimedia.org/wikipedia/commons/8/8a/Claude_AI_logo.svg" width="60"><br><strong>Claude Desktop</strong></td> <td align="center"><img src="https://lmstudio.ai/favicon.ico" width="60"><br><strong>LM Studio</strong></td> <td align="center"><img src="https://cursor.sh/favicon.ico" width="60"><br><strong>Cursor</strong></td> </tr> </table>
โ ๏ธ Important Warnings
๐งช Experimental Project
This project is in active development. You may encounter:
- ๐ Unexpected bugs and crashes
- ๐ API changes
- ๐ฆ Missing features
- ๐จ Material/color issues (check viewport mode!)
Our recommendation: Save and backup your important Blender projects!
๐ Installation
Requirements
- Blender 3.0 or higher (5.0+ tested)
- Python 3.10 or higher
- Claude Desktop or LM Studio (MCP supported)
Step 1: Download the Project
git clone https://github.com/Akerdogmus/chat-with-blender.git
cd chat-with-blender
Step 2: Install Python Dependencies
pip install mcp httpx
Step 3: Install the Blender Addon
- Open Blender
- Go to Edit โ Preferences โ Add-ons menu
- Click the "Install..." button in the top right
- Select the downloaded
addon.pyfile - Check the "Interface: Blender MCP" checkbox
<p align="center"> <img src="screenshots/chat-with-blender-kurulum.png" alt="Blender Addon Installation" width="600"> </p>
Step 4: MCP Client Configuration
For Claude Desktop
-
Open the config file:
- Windows:
%APPDATA%\Claude\claude_desktop_config.json - macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:
-
Add the following configuration:
{
"mcpServers": {
"blender": {
"command": "python",
"args": ["C:/path/to/chat-with-blender/run_server.py"]
}
}
}
โ ๏ธ Important: Replace
C:/path/to/chat-with-blender/with your own project path.
- Restart Claude Desktop.
For LM Studio
- Add the same configuration to LM Studio's
mcp.jsonfile:
{
"mcpServers": {
"blender": {
"command": "python",
"args": ["C:/path/to/chat-with-blender/run_server.py"]
}
}
}
- Restart LM Studio.
๐ก Usage
1. Start the Server in Blender
- Open Blender
- Go to View3D โ Sidebar (N key) โ BlenderMCP tab
- Click the "Start Server" button
- You should see Status: Running
<p align="center"> <img src="screenshots/blender-panel.png" alt="BlenderMCP Panel" width="600"> </p>
2. Start Chatting with AI
Start a new chat in Claude Desktop or LM Studio and give Blender commands:
<p align="center"> <img src="screenshots/chat-demo.png" alt="AI Chat Demo" width="600"> </p>
Example Prompts
"Add a red metallic cube to the scene"
"Create a blue sphere next to the cube and move it 2 units to the right"
"Clear the scene and set up a studio:
ground, 3-point lighting, and camera"
"Create an emissive green torus, make it glow"
"Give me a list of all objects in the scene"
"Render the scene at 1920x1080 resolution"
๐ก Tip: To see materials, set the viewport shading mode to Material Preview or Rendered in Blender (Z key).
๐ ๏ธ MCP Tools
| Tool | Description |
|---|---|
get_scene_info |
Get scene information (objects, frame info) |
get_object_info |
Get details of a specific object |
create_object |
Create new primitive object (cube, sphere, cylinder...) |
create_text |
Create 3D text |
modify_object |
Modify object position/rotation/scale |
delete_object |
Delete object |
duplicate_object |
Duplicate object |
apply_material |
Create and apply material |
create_light |
Add light (POINT, SUN, SPOT, AREA) |
create_camera |
Add camera |
clear_scene |
Clear the scene |
set_background_color |
Set background color |
execute_blender_code |
Execute custom Python code |
render_image |
Render image |
๐ Security
โ ๏ธ Security Warning: This MCP server includes the
execute_blender_codetool. This tool allows the AI to execute arbitrary Python code within Blender.
Security Recommendations
- Use trusted AI models - Only use with AI assistants you trust
- Localhost connection - Server runs on
localhostby default - Backup your important files - Save your Blender projects regularly
- Code review - Review the code that AI will execute beforehand
Network Security
- Server listens only on
localhost:9876 - External access is disabled by default
- No firewall rules needed
๐ Known Issues and Limitations
This is a vibe coding project. The following known issues/limitations exist:
| Issue | Status | Workaround |
|---|---|---|
| Materials not visible in viewport | Expected behavior | Switch to Material Preview mode with Z key |
| Blender 5.0+ node compatibility issues | Fixed | Use latest addon.py |
| Performance for complex models | Known | Start with simple objects |
If you find a new bug, please open an Issue!
๐ Troubleshooting
"Could not connect to Blender"
- โ Make sure the addon is active in Blender
- โ Click "Start Server" in the BlenderMCP panel
- โ Check that port 9876 is not being used by another application
"ModuleNotFoundError: No module named 'blender_mcp'"
- โ
Make sure you're using the full path to the
run_server.pyfile - โ
Install Python dependencies:
pip install mcp httpx
Materials not showing
- โ Set viewport shading mode to Material Preview or Rendered (Z key)
Claude Desktop not showing tools
- โ Check the path in the config file
- โ Completely close and restart Claude Desktop
๐ Project Structure
chat-with-blender/
โโโ addon.py # Blender addon (socket server)
โโโ run_server.py # MCP server launcher
โโโ pyproject.toml # Python project configuration
โโโ README.md # This file
โโโ LICENSE # MIT License
โโโ screenshots/ # Screenshots
โโโ src/
โโโ blender_mcp/
โโโ __init__.py
โโโ server.py # MCP server implementation
๐ค Contributing
This is a vibe coding project - your contributions will make it more stable!
- Fork the project
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push the branch (
git push origin feature/amazing-feature) - Open a Pull Request
We especially need:
- ๐ Bug fixes
- ๐ Documentation improvements
- โจ New MCP tools
- ๐งช Test coverage
๐ License
This project is licensed under the MIT License. See the LICENSE file for details.
๐ Acknowledgments
- Anthropic - For the MCP protocol
- Blender Foundation - For the amazing 3D software
- Google DeepMind Gemini - For vibe coding assistance โจ
- All contributors
<p align="center"> <strong>โญ Don't forget to star this project if you like it!</strong> </p>
<p align="center"> <sub>Made with ๐ and lots of vibes</sub> </p>
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.