blender-mcp

Control Blender programmatically via JSON over TCP socket API.

3|Updated Mar 20, 2026
One-click install
npx skills add https://github.com/ever-oli/io --skill blender-mcp-ever-oli
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: blender-mcp
Source: https://github.com/ever-oli/io/tree/main/optional-skills/creative/blender-mcp
Command: npx skills add https://github.com/ever-oli/io --skill blender-mcp-ever-oli

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Control Blender directly from IO via socket connection to the blender-mcp addon. Create 3D objects, materials, animations, and run arbitrary Blender Python (bpy) code. Use when user wants to create or modify anything in Blender.

Core Features & Use Cases

  • Remote control: send JSON over TCP to execute bpy code, query the scene, inspect objects, and capture viewport screenshots.
  • Protocol and server workflow: plain UTF-8 JSON over TCP with commands such as execute_code, get_scene_info, get_object_info, and get_viewport_screenshot to perform tasks.
  • Use case: automate scene assembly and rendering pipelines from an IO prompt to set up objects, materials, and keyframes, then render outputs.

Quick Start

Connect IO to a running Blender MCP server (localhost:9876) and start issuing commands.

Frequently Asked Questions about blender-mcp

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I control Blender remotely from an external script or application?

You can control Blender remotely by sending plain UTF-8 JSON commands over a TCP socket to a live Blender desktop session. This enables the creation and modification of objects, materials, and animations programmatically.

Can I run arbitrary Blender Python bpy code through a remote socket connection?

Yes, you can execute arbitrary Blender Python (bpy) code remotely by sending an execute_code command via the JSON over TCP protocol to the running Blender MCP addon server.

How do I automate scene assembly and rendering pipelines in Blender from a command prompt?

Automate scene assembly by sending TCP socket commands to set up objects, materials, and keyframes, then trigger rendering outputs. This allows full pipeline automation directly from an IO prompt.

Does the Blender socket API support querying scene information and capturing viewport screenshots?

Yes, the socket API supports querying scene information and capturing viewport screenshots. You can use specific JSON commands like get_scene_info, get_object_info, and get_viewport_screenshot to inspect the live session.

What do I need to connect to and run Blender commands via a socket?

You need a running Blender desktop session with the addon-based server initialized. Connect your IO or external application to the server, typically hosted on localhost:9876, to start issuing JSON commands.

What are the limitations of using a socket-based API for Blender automation?

The socket-based API requires a live Blender desktop session to function and relies on a plain UTF-8 JSON over TCP protocol. It includes error handling but depends on the local server remaining active during the entire automation process.