
Frugal Blender MCP
io.github.mohakmalviyaPublished by GitHub account mohakmalviyav0.2.0Updated Oct 24, 2026
Let AI agents build Blender scenes with four compact tools: discover, execute, inspect, capture.
Overview
Token-frugal Blender MCP server with four tools (discover, execute, inspect, capture) that lets an agent build, animate and render 3D scenes.
- What you can do
- Discover operation contracts and inspect scene data by name with paging
- Build and edit scenes: primitives, arrays, transforms, materials, lights, cameras, deletes
- Refine with any modifier or RNA property, and animate with keyframes and frames
- Capture previews, render stills or animations, and save .blend copies
- Run arbitrary bpy Python through the same execute call when enabled
- When to use it
- Use it when you want an AI agent to author or modify Blender scenes on your desktop while keeping the fixed tool-definition context small, and you are willing to run Blender with the companion add-on bridge.
- Requirements
- Local process started via uvx (Python/uv) on a desktop machine; Blender 4.2+ with the Frugal Blender MCP add-on installed and its bridge started; the bridge listens on loopback with a fresh random token per session; BLENDER_COMPACT_CONNECTION is needed only to pick among multiple running bridges.
Installation
In SourceWeft
- Open Frugal Blender MCP in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
Frugal Blender MCP
Let your AI agent build Blender scenes. All of Blender, four tools, 338 tokens.
[Checks] [PyPI] [Blender 4.2+] [MCP] [MIT]
Quick start · How it saves tokens · Benchmark · Safety · Example
[A stylized lighthouse island at sunset with a rotating beam, a bobbing sailboat and moving ocean waves]Five execute calls (109 operations) written by Claude, rendered with Cycles in Blender 5.1.
Replay the exact calls: they run in under a second.
Why it matters
Every MCP client sends each server's tool definitions to the model on every request, before you type anything. Most Blender servers expose 26 to 31 tools and spend thousands of tokens that way. That's context your agent can't use for your scene, your code or its own reasoning.
Frugal Blender MCP exposes four tools, discover, execute, inspect and capture,
and still reaches the whole Blender API.
Quick start
1. Install the Blender add-on
In Blender, open Edit → Preferences → Add-ons and enable Frugal Blender MCP. Then press N in
the 3D Viewport, open the Frugal MCP tab and click Start bridge.
2. Connect your agent
If a desktop app can't find uvx, use its absolute path (which uvx or where uvx).
3. Ask for something
Build a small lighthouse island at golden hour: a red-and-white tower, a keeper's house, a few pines, rocks and a sailboat. Batch your edits, then capture a preview.
How four tools reach all of Blender
Most servers ship one tool per action, and every definition rides along with every request. This server keeps the menu short and hands the details over only when the agent asks for them:
The five calls behind the animation above, and what each one added:
[The lighthouse scene after each of the five execute calls]Benchmark
[Fixed context per request: Frugal Blender MCP 338 tokens, Blender Lab official 4,722 tokens, ahujasid 7,464 tokens]Tool definitions plus server instructions from each server's real initialize and
tools/list responses, tokenized with tiktoken o200k_base.
Method, raw data, discovery costs and caveats.
What the agent can do
Safety
Blender stays in control. You choose permissions in the add-on panel when you start the bridge, and the agent can't change them.
- Write and render are on by default. Delete, save and python are off.
- Python is unrestricted local code execution. Turn it on only for agents you trust.
- The bridge listens on loopback only and needs a fresh random token each time you start it.
- Deletes need
confirm: true. Saves and renders never overwrite existing files. - Interactive sessions get an undo checkpoint before every batch.
- No telemetry.
Details: SECURITY.md.
How it compares
Choose by what you need, not just context size:
- Blender Lab's official server also searches Blender's manual and API docs, which helps agents
write correct
bpy. - ahujasid's server bundles asset providers (Poly Haven, Sketchfab, Hyper3D and others).
- This server keeps the fixed context small, batches edits, gates risky actions behind
permissions, and still reaches the whole API through
pythonwhen you allow it.
More
CLI: drive Blender from scripts with the same code path
PowerShell can pipe a file instead of quoting JSON:
Get-Content -Raw examples/lighthouse/01-sky-and-sea.json | uvx --from frugal-blender-mcp frugal-blender execute --params -
Captures, renders and saves go to the bridge's exports/ folder, and the CLI prints the filename.
Multiple Blender instances
Each running bridge writes a connection descriptor. If more than one exists, set
BLENDER_COMPACT_CONNECTION to the one you want:
- Windows:
%LOCALAPPDATA%/blender-compact-mcp/connection-<pid>.json - Linux/macOS:
${XDG_STATE_HOME:-~/.local/state}/blender-compact-mcp/connection-<pid>.json
Ambiguous discovery fails rather than picking a scene at random. Opening a different file stops the bridge. After a crash, delete only the stale descriptor.
Install without uvx
- Add-on: download
frugal-blender-mcp-addon-<version>.zipfrom Releases and use Install from Disk in Blender's add-on preferences, or runuvx frugal-blender-mcp install-addon --zip addon.zip. - Server from source: clone the repository, run
uv sync --frozen, and point your client atuv run --directory /absolute/path/to/frugal-blender-mcp frugal-blender-mcp.
Configs that use the old blender-astra-mcp or blender-compact-mcp commands keep working.
Architecture
Blender's timer accepts bounded socket input and runs operations on Blender's main thread. No
background thread touches Blender data. discover returns readable argument contracts, and the add-on
validates every batch again before running it. A batch that fails partway reports which step failed
and what already ran. See design.
Development
Tests that need Blender skip unless BLENDER_EXE points at a Blender executable. Set
BLENDER_TEST_UI=1 to also test interactive timers and undo. They launch separate factory-startup
Blender processes and never touch your scenes or preferences. Results:
validation.
scripts/demo_host.py runs a headless bridge on an empty scene for replaying examples/.
scripts/bench_tool_context.py and scripts/context_chart.py reproduce the benchmark and chart.
If this saves your agent some tokens, a ⭐ helps other people find it.
MIT licensed. Independent project, not affiliated with the Blender Foundation or any model provider.
Source: README.md at commit 36c6b10
Tools
0Version history
1- v0.2.0LatestOct 15, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts