Blender MCP
chính thứcMột máy chủ MCP (Model Context Protocol) nhẹ dành cho Blender. Nó cung cấp giao diện ngôn ngữ tự nhiên với API Python của Blender, cải thiện khả năng truy cập tài liệu và cho phép người dùng khám phá cũng như hiểu các thiết lập phức tạp.
Bạn có thể làm gì với Blender MCP?
- Phân tích hiệu suất cảnh — Yêu cầu AI phân tích cảnh Blender đang mở và xác định các đối tượng có số đa giác cao so với kích thước hiển thị trên màn hình, như phát hiện ngoại lệ trong demo lớp học.
- Đổi tên data-block — Nhờ trợ lý sửa lỗi chính tả hoặc đề xuất tên mô tả cho tất cả các data-block trong tệp hiện tại, chỉ áp dụng thay đổi sau khi bạn phê duyệt.
- Truy vấn cảnh bằng ngôn ngữ tự nhiên — Đặt câu hỏi về mối quan hệ giữa các đối tượng, chẳng hạn như "Đối tượng nào đang sử dụng vật liệu 'pebbles'?" hoặc xác định đối tượng có số đa giác cao nhất trong cảnh.
- Tài liệu Geometry Nodes — Yêu cầu giải thích về thiết lập geometry nodes chính, với tài liệu khung nội tuyến và một data-block văn bản tóm tắt phân tích.
- Gỡ lỗi cảnh — Nhận trợ giúp khắc phục các sự cố như lưới được chia tỷ lệ không đồng đều, normal bị lỗi hoặc đối tượng không biến dạng đúng với armature.
Tài liệu
Một máy chủ MCP (Model Context Protocol) nhẹ dành cho Blender. Nó cung cấp giao diện ngôn ngữ tự nhiên với Python API của Blender, cải thiện khả năng truy cập tài liệu và cho phép người dùng khám phá cũng như hiểu các thiết lập phức tạp.
Để biết chi tiết kỹ thuật và tài liệu về kiến trúc, hãy xem mã nguồn.
[!warning] Cảnh báo Cảnh báo bảo mật
Máy chủ MCP sẽ thực thi mã do LLM tạo ra trong Blender mà không có bất kỳ biện pháp bảo vệ nào để tránh dữ liệu của bạn bị xóa hoặc bị gửi đến một vị trí từ xa. Để giữ dữ liệu an toàn, bạn nên sử dụng máy ảo hoặc hệ thống không có quyền truy cập vào thông tin nhạy cảm.
Cài đặt
Blender không có chức năng tích hợp sẵn để kết nối với LLM.
Để Blender kết nối với LLM, ba công cụ bên ngoài phải được tải xuống, cài đặt và chạy thủ công.
Add-on
Để tương tác với phiên Blender của bạn, bạn cần cài đặt một add-on cụ thể cho tích hợp MCP Server.
…hoặc tải xuống và Cài đặt từ Đĩa
Nếu bạn kéo và thả vào Blender, bạn sẽ cần thực hiện hai lần. Lần đầu để thêm kho lưu trữ Blender Lab, lần thứ hai để cài đặt add-on. Phương pháp này cho phép bạn nhận thông báo cập nhật mỗi khi có phiên bản mới của add-on này.
Trình khách LLM
Máy chủ MCP tuân theo một tiêu chuẩn được xác định rõ ràng và tương thích với nhiều trình khách. Vui lòng làm theo tài liệu LLama.cpp hoặc cài đặt trình khách LLM bạn ưa thích.
Máy chủ MCP
Có nhiều cách khác nhau để cài đặt Máy chủ MCP tùy thuộc vào khả năng của trình khách LLM của bạn.
- Gói MCP: Dành cho trình khách mới hơn hỗ trợ tệp
.mcpb, hãy tải xuống gói mới nhất từ trang phát hành. Llama.cpp chưa hỗ trợ điều này. - Máy chủ MCP: Để cài đặt từ mã nguồn, hãy xem tài liệu Llama.cpp hoặc hướng dẫn thiết lập.
Chạy
Khi bạn đã thiết lập Máy chủ MCP trong trình khách LLM của mình, bạn có thể bắt đầu khám phá các cảnh Blender của mình.

Giao diện web llama.cpp đang chạy máy chủ blender-mcp.
Ví dụ 1: Phân tích cảnh
MCP có thể được sử dụng để phân tích cảnh theo chương trình nhằm tìm ra các điểm nghẽn hiệu suất. Ví dụ, hãy xem tệp demo Classroom:

Tệp demo Classroom.
Cảnh này là một trong các tệp điểm chuẩn Blender. Lý do các tệp này nằm trong điểm chuẩn là vì chúng đại diện tốt cho các tệp sản xuất thực tế do nghệ sĩ tạo ra. Và không có gì ngạc nhiên khi nó có thể chứa các đối tượng dễ bị tối ưu hóa.
Mặc dù kiểm tra số lượng đa giác thường là đủ, nhưng thú vị hơn là vẽ biểu đồ số lượng đa giác dựa trên kích thước hiển thị của chúng trong kết xuất cuối cùng. Điều này có thể đạt được bằng lời nhắc sau.
Analyze the scene and list the outliers: objects with highest polygon count but smaller size from the camera point of view.
Dữ liệu kết quả được vẽ biểu đồ cho thấy rõ hai đối tượng nổi bật so với phần còn lại: alphabet và coat 1:

Phân tích biểu đồ số đa giác trên mỗi diện tích màn hình cho cảnh demo classroom.
Đối tượng alphabet có 20k đa giác. Do bố cục phẳng của nó, nó có thể được thay thế bằng một kết cấu với ít ảnh hưởng tiêu cực đến kết quả cuối cùng. Đối tượng coat 1 có 37k đa giác do bộ điều chỉnh Subsurf của nó. Giảm mức độ phân chia có thể làm giảm tải cho cảnh, nếu bộ nhớ là điểm nghẽn trong hệ thống của bạn.

Bảng chữ cái nằm ở phía sau cảnh và có thể dễ dàng được thay thế bằng một kết cấu. Áo khoác cũng đủ xa để có thể đơn giản hóa lưới của nó.
[!info] Thông tin Những kết quả đó đáng tin cậy đến mức nào?
Phân tích ban đầu do LLM trả về chỉ xem xét các bộ điều chỉnh ảnh hưởng đến khung nhìn. Đối tượng
coat 1có bộ điều chỉnh Solidify làm tăng gấp đôi số đa giác, khiến nó trở thành điểm ngoại lệ rõ rệt hơn. Và mặc dù cảnh này không bật Simplify, cài đặt này cũng sẽ ảnh hưởng đến phân tích cuối cùng.
Ví dụ 2: Các lời nhắc khác nhau
Đây là một số trường hợp sử dụng khác đã được kiểm tra. Bạn cần dán toàn bộ nội dung "Prompt" để chúng hoạt động. Điểm khởi đầu nên là tệp demo tương ứng. Sự thành công của thao tác sẽ phụ thuộc vào mô hình được sử dụng.
| Trường hợp sử dụng | Lời nhắc | Tệp demo | Kết quả |
|---|---|---|---|
| Đổi tên khối dữ liệu: sửa lỗi chính tả | With the current open Blender file fix the name of all the data-blocks to remove typos. Report back which data-blocks got fixed. | Scattering Pebbles | GRP-rocks → GRP-pebble, LGT-Lights → LGT-lights, Compositing Nodetree → Compositing Node Tree |
| Đổi tên khối dữ liệu: tên tốt hơn | With the current open Blender file suggest descriptive names for all data-blocks, and apply if approved. | Scattering Pebbles | Camera → CAM-main, Area → LGT-sun-key, Area.001 → LGT-sun-fill, Area.002 → LGT-area-rim, GEO-pebble.001 → GEO-pebble-B, … |
| Truy vấn mối quan hệ dữ liệu bằng ngôn ngữ tự nhiên | Which objects are using the following material: pebbles | Scattering Pebbles | 7 đối tượng: GEO-pebble, GEO-pebble.001, GEO-pebble.002, GEO-pebble.003, GEO-pebble.004, GEO-pebble.005, GEO-pebble.006 |
| Gỡ lỗi cảnh | What is the object with the highest poly-count on this file? Ignore objects which are not linked to any scene. | Scattering Pebbles | GEO-ground với 4.096 mặt. |
| Tài liệu Geometry Nodes | With the current open Blender file explain what the main geometry nodes setup is doing. Add inline documentation for it with frame elements. Create a Text data-block with the result of analysis. | Scattering Pebbles | 4 khung chính được mã hóa màu + tệp văn bản có giải thích. |
Các lời nhắc khác chưa được khám phá:
- Dịch tất cả các khối dữ liệu từ tiếng Pháp sang tiếng Anh.
- Lưới của tôi không bị biến dạng bởi bộ xương của tôi, làm cách nào để sửa?
- Blender hết bộ nhớ khi kết xuất cảnh này, làm cách nào để tối ưu hóa?
- Lưới này có các hiện vật tô bóng kỳ lạ, làm cách nào để sửa?
- Tìm các đối tượng có lưới với pháp tuyến xấu.
- Kiểm tra cảnh của tôi để tìm các đối tượng lưới bị biến đổi không đồng nhất.
- Video tôi xuất ra không phát trong trình duyệt web của tôi, tôi nên thay đổi cài đặt nào?
- Nên dùng cọ điêu khắc nào để tạo và chi tiết hóa các nhánh cây?
- Thiết lập các nút compositing để lưu hình ảnh của tôi dưới dạng cả SDR và HDR.
- Xác minh danh sách kiểm tra này: lưới phải là manifold, tất cả đối tượng phải có vật liệu, đặt tên phải tuân theo quy ước, không có đường dẫn tuyệt đối, … Đổi tên khối dữ liệu: sửa lỗi chính tả
GRP-rocks → GRP-pebbles (cảnh chỉ chứa các đối tượng pebble, không phải rocks).
LGT-Lights → LGT-lights (cách viết hoa không nhất quán).
Compositing Nodetree → Compositing Node Tree (Nodetree là lỗi từ ghép).
Đổi tên khối dữ liệu: tên tốt hơn
Đối tượng:
Camera→CAM-mainArea→LGT-sun-keyArea.001→LGT-sun-fillArea.002→LGT-area-rimGEO-pebble.001→GEO-pebble-BGEO-pebble.002→GEO-pebble-CGEO-pebble.003→GEO-pebble-DGEO-pebble.004→GEO-pebble-EGEO-pebble.005→GEO-pebble-FGEO-pebble.006→GEO-pebble-G
Khối dữ liệu ánh sáng:
Area→LGT-sun-keyArea.001→LGT-sun-fillArea.002→LGT-area-rim
Khối dữ liệu camera:
Camera→CAM-main
Kết cấu:
Texture→TEX-ground-cloudsTexture.001→TEX-ground-image
Cảnh & Thế giới:
World→WLD-environmentScene→SCN-mainTài liệu Geometry Nodes
Các khung mới được tạo:

Các khung tài liệu được thêm vào thiết lập geometry nodes.
Khối dữ liệu văn bản:
GEOMETRY NODES ANALYSIS -- "Pebble Scattering Nodes"
Applied to object: GEO-ground | Modifier: Pebbles
========================================================
OVERVIEW
--------
This node group scatters three size categories of pebble meshes across
the faces of a ground mesh. Each category uses its own density mask
and a global Factor multiplier so that coverage can be art-directed
per-layer without touching the raw mask textures. The three resulting
instance layers are merged with the original ground geometry and sent
to the Group Output.
INPUTS (Group Interface)
------------------------
Geometry -- The ground mesh to scatter pebbles on.
Large Pebbles Mask -- Float mask (e.g. vertex colour / texture) that
defines WHERE large pebbles may appear.
Medium Pebbles Mask-- Float mask for medium pebble placement regions.
Small Pebbles Mask -- Float mask for small pebble placement regions.
Factor -- Global density multiplier shared by all three
lanes (appears three times in the interface,
one per lane).
NODE GRAPH -- LANE BY LANE
--------------------------
+- LARGE PEBBLES LANE -----------------------------------------------------+
| Source object : GEO-pebble |
| Group Input.001 |
| +- Geometry ------------------------> Distribute Points on Faces |
| +- Large Pebbles Mask ------------> Distribute Points on Faces |
| | (Density Factor socket) |
| +- Factor --> Math.003 (x) -------> Distribute Points on Faces |
| (Density Max socket) |
| Distribute Points on Faces ----------> Instance on Points |
| Object Info (GEO-pebble) -----------> Instance on Points (Instance) |
| Random Rotation.001 [-pi, +pi] -----> Instance on Points (Rotation) |
| Random Value [0.25 - 0.60] -------> Instance on Points (Scale) |
| Instance on Points ------------------> Join Geometry.003 |
+--------------------------------------------------------------------------+
+- MEDIUM PEBBLES LANE ----------------------------------------------------+
| Source object : GEO-pebble.004 |
| Group Input.002 |
| +- Geometry ------------------------> Distribute Points on Faces.001 |
| +- Medium Pebbles Mask -----------> Math.004 (x) --> Math.005 (x) |
| +- Factor ------------------------> Math.005 (x) |
| Math.005 output --------------> Distribute Points on Faces.001 |
| (Density socket) |
| Distribute Points on Faces.001 -----> Instance on Points.001 |
| Object Info.001 (GEO-pebble.004) --> Instance on Points.001 |
| Random Rotation.002 [-pi, +pi] ----> Instance on Points.001 |
| Random Value.002 [0.25 - 0.45] -----> Instance on Points.001 |
| Instance on Points.001 -------------> Join Geometry.003 |
+--------------------------------------------------------------------------+
+- SMALL PEBBLES LANE -----------------------------------------------------+
| Source object : GEO-pebble.002 |
| Group Input.003 |
| +- Geometry ------------------------> Distribute Points on Faces.002 |
| +- Small Pebbles Mask -----------> Math.006 (x) --> Math.007 (x) |
| +- Factor ------------------------> Math.006 (x) |
| Math.007 output --------------> Distribute Points on Faces.002 |
| (Density socket) |
| Distribute Points on Faces.002 -----> Instance on Points.002 |
| Object Info.002 (GEO-pebble.002) --> Instance on Points.002 |
| Random Rotation [-pi, +pi] ----> Instance on Points.002 |
| Random Value.003 [0.10 - 0.35] -----> Instance on Points.002 |
| Instance on Points.002 -------------> Join Geometry.003 |
+--------------------------------------------------------------------------+
+- MERGE & OUTPUT ---------------------------------------------------------+
| Group Input.004 |
| +- Geometry (pass-through) --------> Join Geometry.003 |
| Join Geometry.003 |
| (inputs: large instances + medium instances + |
| small instances + original ground geo) |
| +- Geometry -----------------------> Group Output |
+--------------------------------------------------------------------------+
SCALE RANGES (uniform, per lane)
---------------------------------
Large pebbles : 0.25 - 0.60
Medium pebbles : 0.25 - 0.45
Small pebbles : 0.10 - 0.35
ROTATION (all lanes)
---------------------
All three axes randomised independently over [-pi, +pi],
giving each pebble instance a fully random orientation.
DENSITY CONTROL PATTERN (Medium & Small lanes)
-----------------------------------------------
The mask value and the Factor are first multiplied together
(Math.004 / Math.006), then that product is multiplied again
by a second value (Math.005 / Math.007) before being fed into
the Density socket. This two-stage multiply gives a non-linear
response curve, making the density fall off more aggressively
near the mask edges.
The Large lane uses a different (single-stage) approach:
the Density Factor socket receives the mask directly, and the
Factor is only used to scale Density Max via Math.003.
NOTES & SUGGESTIONS
--------------------
* The node group has no Seed input exposed; adding one would allow
re-randomising all three layers simultaneously without touching
individual nodes.
* The Factor input currently appears three times (once per lane).
Merging them into a single shared socket would simplify the
modifier panel.
* Consider labelling the unlabelled Math nodes (Math.003-.007)
and Random Value nodes to aid future maintenance.