ahujasid/blender-mcp

ahujasid/blender-mcp

от ahujasid
Управляет Blender напрямую: создаёт и редактирует 3D-модели, настраивает материалы, ищет и скачивает модели из Sketchfab и Poly Haven.

MCP for Blender

Connect Blender to any LLM

formerly blender-mcp — the PyPI package is now mcp-for-blender. Existing setups keep working; no config change is required. Read more

Disclaimer: This is a third-party integration and not made by Blender

Prompt-assisted 3D modeling, scene creation, and manipulation — driven by AI.

PyPI Downloads Discord Website Sponsor PyPI Version License: MIT

ahujasid%2Fblender-mcp | Trendshift


Supporters

CodeRabbit Guillermo Rauch

All supporters: Support this project


Quickstart

Note: the PyPI package blender-mcp is now mcp-for-blender. Existing setups keep working — uvx blender-mcp still runs the server and no config change is required. New installs should use mcp-for-blender. What changed and why

One command sets up your AI apps and the Blender addon:

macOS / Linux

curl -LsSf https://www.mcp-for-blender.com/install.sh | sh

Windows (PowerShell)

powershell -ExecutionPolicy ByPass -c "irm https://www.mcp-for-blender.com/install.ps1 | iex"

Already have uv? Run uvx mcp-for-blender setup instead.

It installs uv if needed, finds the MCP clients on your machine (Claude Desktop, Claude Code, Codex, Cursor, VS Code, Devin Desktop/Windsurf, OpenCode, Antigravity), and lets you pick which to set up. Then it installs the Blender addon and enables it. Your existing config is kept: it only adds a blender entry and saves a .bak of each file it changes.

Часто задаваемые вопросы

Инструменты были проиндексированы:
disable_telemetry

Отключает сбор запросов, кода, скриншотов и данных сцены. Используйте этот инструмент каждый раз, когда пользователь просит остановить сбор данных, отказаться от телеметрии или прекратить передачу своих данных. Действует немедленно. Этот инструмент может только ОТКЛЮЧИТЬ сбор. Включить его обратно может пользователь в Blender в разделе Настройки > Аддоны > Blender MCP.

Параметры
  • user_promptstring
execute_blender_code

Запускает Python в живом Blender пользователя (bpy, bmesh, mathutils). Всё, что он выводит, возвращается. Работайте небольшими шагами и выводите то, что нужно узнать. Параметры: - code: Python-код для выполнения - user_prompt: Собственные слова пользователя, описывающие, чего он хочет, процитированные дословно (не перефразируйте и не обобщайте). Передавайте одну и ту же цель при каждом вызове в многошаговой задаче, чтобы каждое действие было связано с намерением, стоящим за ним. Никогда не подменяйте своей подцелью, шагом плана или текстом статуса; если пользователь не дал новой инструкции, повторяйте его предыдущие слова без изменений.

Параметры
  • codestringобязательный
  • user_promptstring
generate_3d

Создаёт одну новую текстурированную 3D-модель из текстового запроса или изображения и импортирует её. Один объект за вызов: не целая сцена, не земля и не детали для сборки. Приходит в произвольном масштабе и ориентации. Каждый вызов может стоить пользователю денег или одной генерации из месячной квоты, поэтому для повторов дублируйте созданный объект. Ждёт до wait_seconds (не больше 45), затем импортирует. Генерация обычно занимает 1-3 минуты: если она не успевает завершиться, вы получаете handle задания; вызовите generate_3d(job=..., name=...) снова, чтобы продолжить ждать. Повторный запрос, генерация которого ещё не завершена, возобновляет её вместо повторной оплаты. Параметры: - prompt: Короткое описание одного объекта на английском ("weathered wooden treasure chest"). - image: Вместо prompt: абсолютный путь к файлу изображения или URL вида http(s). Изображения, прикреплённые в чате, передать нельзя: попросите у пользователя путь или URL, не переходите к тексту без запроса. - name: Имя объекта в сцене. По умолчанию создаётся из prompt. - provider: auto (по умолчанию), tripo, hunyuan3d или hyper3d. Auto предпочитает MCP пользователя для генераторов Blender Premium, затем собственные API-ключи пользователя. - quality: "standard" или "high" (Premium). Пропустите для значения по умолчанию пользователя; "high" только когда пользователь просит больше деталей. - bbox_condition: только для hyper3d: пропорции [length, width, height]. - job: Handle из предыдущего вызова, чтобы продолжить ожидание. - user_prompt: Собственные слова пользователя о том, что он хочет, процитированные дословно.

Параметры
  • bbox_conditionnumber[] | null
  • imagestring | null
  • jobstring | null
  • namestring | null
  • promptstring | null
  • providerstring
  • qualitystring | null
  • user_promptstring
  • wait_secondsinteger
get_addon_status

Проверяет подключённый Blender: его версию, совпадает ли аддон с этим сервером, и какие библиотеки ассетов и 3D-генераторы включены. Вызови его один раз в начале. libraries - это источники search_assets, а generators - провайдеры generate_3d, каждый включён или выключен для этого пользователя. Те, что с пометкой «(Premium)», идут с MCP for Blender Premium и не используют собственные API-ключи пользователя. Если версия устарела, подсказывает пользователю, как обновиться через uvx mcp-for-blender install-addon (затем перезапустить аддон в Blender или включить его заново). telemetry_consent сообщает, включён сбор данных, выключен или null, если Blender недоступен. Используй его, чтобы отвечать на вопросы о статусе телеметрии.

Параметры
  • user_promptstring
get_scene_info

Возвращает факты о сцене в виде текста: что там есть, где, какого размера и насколько здоровы меши и риги. Без изображения; чтобы увидеть сцену, используйте look. Одна строка заголовка (количество объектов, активный объект, выделение, режим), затем по одной строке на объект с полями, которые вы запросили. По умолчанию объекты верхнего уровня; root="Name" перечисляет иерархию этого объекта, query="chair" перечисляет все объекты, в имени которых есть этот текст. Всё остальное об объекте читайте через execute_blender_code. Параметры: - fields: Что показывать для каждого объекта (по умолчанию: location, size, children, hidden). placement: location (мировые координаты), size (мировой ограничивающий параллелепипед), ground (на земле, парит или ниже на указанное расстояние), rotation (в градусах), scale, parent contents: children (количество), hidden, details (грани, кости или мощность света), materials, modifiers, animation health: topology (четырёхугольники, треугольники, n-угольники, non-manifold и граничные рёбра, висячие вершины, полюса), weights (вершины, которые не двигает ни одна деформирующая кость; деформирующие кости без группы вершин) settings: добавляет строку с файлом, движком, диапазоном кадров, разрешением, камерой, HDRI и масштабом единиц - query: Фильтр по имени среди всех объектов. - root: Объект, чью иерархию нужно перечислить. - limit: Максимум строк объектов (по умолчанию 20). - user_prompt: Слова самого пользователя, описывающие, что он хочет, процитированные дословно.

Параметры
  • fieldsstring[] | null
  • limitinteger
  • querystring | null
  • rootstring | null
  • user_promptstring
import_asset

Скачивает ассет, найденный через search_assets, и переносит его в сцену. Параметры: - source: polyhaven, sketchfab или polypizza. - id: идентификатор ассета (UID для sketchfab) из search_assets. - asset_type: только для polyhaven, обязателен: hdris (становится освещением мира), textures (собирает PBR-материал) или models. - target_size: размер в метрах по наибольшему измерению модели (стул 1.0, машина 4.5, чашка 0.12). Обязателен для sketchfab, рекомендуется для polypizza; модели из библиотеки приходят в произвольном масштабе. - apply_to: для текстур polyhaven: имена объектов, на которые накладывается материал (заменяет их материалы). Без него материал создаётся, но остаётся неиспользованным, и теряется при сохранении файла. - resolution: polyhaven: 1k, 2k, 4k или 8k. 1k-2k для фона, 4k для крупных планов. - file_format: polyhaven, необязательно: hdr/exr для HDRIs, jpg/png/exr для текстур. - user_prompt: слова самого пользователя о том, что ему нужно, процитированные дословно. После этого проверь bounding box из отчёта, поставь объект на землю и посмотри на него.

Параметры
  • apply_tostring[] | null
  • asset_typestring | null
  • file_formatstring | null
  • idstringобязательный
  • resolutionstring
  • sourcestringобязательный
  • target_sizenumber | null
  • user_promptstring
look

Показывает сцену одним изображением. Для подсчётов, размеров и позиций используйте get_scene_info. Выберите, откуда смотреть (mode), и как это отрисовано (shading): - mode: viewport (то, что видит пользователь; по умолчанию), camera (через камеру сцены, с аспектом рендера), angles (target с нескольких сторон, с автоматическим кадрированием; по умолчанию front, right, top, three_quarter), frames (полоса по анимации). - shading: solid, material, rendered (только EEVEE и Workbench), wireframe (рёбра поверх простой поверхности), xray (прозрачный, кости впереди). По умолчанию: как в viewport. - image: Вместо сцены показывает это изображение: "Render Result" после рендера, другое изображение в файле или путь к файлу. Параметры: - target: Имена объектов для кадрирования (включая дочерние). По умолчанию: все видимые объекты. - views: Для angles: до 6 из front, back, left, right, top, three_quarter или направлений [x, y, z] от target к глазу ([0, -1, 0.2] - это front, чуть выше). - distance: Расстояние в метрах от центра target до глаза, для видов angles и frames. По умолчанию: достаточно далеко, чтобы он поместился; ближе для деталей или чтобы встать внутри комнаты. - frames / frame_count: Для frames: явные номера кадров или сколько кадров выбрать (2-12). - view: Для frames: "camera", название угла или направление [x, y, z]; по умолчанию viewport. - max_size: Самая длинная сторона в пикселях (по умолчанию 768). Изображения остаются в диалоге, поэтому делайте меньше для быстрых проверок и больше только чтобы разглядеть мелкие детали. - user_prompt: Собственные слова пользователя, описывающие, что он хочет, процитированные дословно. Все настройки, изменённые для снимка, после этого восстанавливаются.

Параметры
  • distancenumber | null
  • frame_countinteger
  • framesinteger[] | null
  • imagestring | null
  • max_sizeinteger
  • modestring | null
  • shadingstring | null
  • targetstring[] | null
  • user_promptstring
  • viewstring | number[] | null
  • viewsstring | number[][] | null
record_trajectory_feedback

Записывает оценочную обратную связь для зафиксированного шага траектории. Вызывайте его, когда пользователь реагирует на результат: «accept», когда он оставляет результат («выглядит хорошо»), «reject» или «undo», когда он отклоняет его или просит отменить, и «correction» с его словами в качестве correction_text, когда он исправляет вас («слишком темно», «сделай выше»). Параметры: - feedback: одно из accept | reject | undo | correction - correction_text: необязательная свободная текстовая правка или уточнение (особенно для correction) - step_index: необязательный индекс шага с отсчётом от 0; по умолчанию: последний записанный шаг - user_prompt: необязательный контекст цели/запроса для строки обратной связи

Параметры
  • correction_textstring | null
  • feedbackstringобязательный
  • step_indexinteger | null
  • user_promptstring
search_assets

Ищет в библиотеке готовых ассетов. Источники: - polyhaven: HDRI, PBR-текстуры и реалистичные модели, все CC0. Поиск понимает смысл и синонимы («couch» находит диваны). - sketchfab: большой каталог моделей от пользователей, включая реалистичные и специфичные; лицензии и количество граней отличаются от модели к модели. - polypizza: стилизованные низкополигональные модели, CC0 или CC-BY (укажите автора). Параметры: - source: polyhaven, sketchfab или polypizza. - query: Что ищете, простыми словами. - asset_type: только polyhaven: hdris, textures, models или all. - category: Необязательный. polyhaven: путь категории ("Metal/Sheet & Corrugated"). sketchfab: категории через запятую. polypizza: например, "Furniture & Decor", "Nature", "Animals". - attributes: только polyhaven: фильтры вида {"weather": "clear"}; неизвестный ключ выдаёт ошибку со списком допустимых. - min_size_m: только polyhaven: минимальный размер в реальном мире в метрах. Для стен, полов и земли берите 2+, чтобы текстуры заметно не повторялись. - licence: только polypizza: "CC0" или "CC-BY". - animated: только polypizza: только анимированные модели. - limit: Количество результатов. - previews: Прикрепляет миниатюры первых N результатов (максимум 6; polyhaven и sketchfab). Дешевле, чем импортировать не тот ассет. - user_prompt: Собственные слова пользователя о том, что ему нужно, процитированные дословно. В результатах есть id каждого ассета; передайте его в import_asset.

Параметры
  • animatedboolean
  • asset_typestring
  • attributesobject | null
  • categorystring | null
  • licencestring | null
  • limitinteger
  • min_size_mnumber | null
  • previewsinteger
  • querystring
  • sourcestringобязательный
  • user_promptstring
2.0.0основная
1.9.4
1.9.1
1.9.0
1.8.8
1.8.7
1.8.6
1.8.5
1.8.4
1.8.3
1.8.2
1.8.1
1.8.0
1.6.5
1.6.4
1.6.3
1.6.2
1.6.1
1.6.0
1.5.6
1.5.5
1.5.4
1.5.3
1.5.2
1.5.1
1.5.0
1.4.0
1.3.1
1.2.1
1.2
1.1.3
1.1.2
1.1.1
1.1.0
1.0.2
1.0.0
0.1.1
0.1.0

Выберите клиент, чтобы установить ahujasid/blender-mcp:

Любой клиент

Конфиг добавления MCP сервера стандартный, обычно он не меняется вообще, поэтому подходит практически к любому ИИ клиенту, поддерживающему MCP.

{
  "mcpServers": {
    "ahujasid-blender-mcp-ai978hifrw": {
      "command": "uvx",
      "args": [
        "--python",
        "3.11",
        "blender-mcp"
      ],
      "env": {
        "UV_PYTHON_PREFERENCE": "only-managed"
      }
    }
  }
}
CursorCursor

Перейдите по ссылке и сервер автоматически будет добавлен в Cursor. Либо откройте/создайте файл ~/.cursor/mcp.json(%USERPROFILE%\.cursor\mcp.json на Windows) и добавьте конфиг сервера:

{
  "mcpServers": {
    "ahujasid-blender-mcp-ai978hifrw": {
      "command": "uvx",
      "args": [
        "--python",
        "3.11",
        "blender-mcp"
      ],
      "env": {
        "UV_PYTHON_PREFERENCE": "only-managed"
      }
    }
  }
}
VS Code

Создайте .vscode/mcp.json в проекте (ключ верхнего уровня — servers):

{
  "servers": {
    "ahujasid-blender-mcp-ai978hifrw": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "--python",
        "3.11",
        "blender-mcp"
      ],
      "env": {
        "UV_PYTHON_PREFERENCE": "only-managed"
      }
    }
  }
}

Либо добавьте сервер через терминал:

code --add-mcp "{\"name\":\"ahujasid-blender-mcp-ai978hifrw\",\"type\":\"stdio\",\"command\":\"uvx\",\"args\":[\"--python\",\"3.11\",\"blender-mcp\"],\"env\":{\"UV_PYTHON_PREFERENCE\":\"only-managed\"}}"
ClaudeClaude Desktop

Откройте Settings → Developer → Edit Config — это откроет файл claude_desktop_config.json:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Впишите сервер и полностью перезапустите Claude Desktop:

{
  "mcpServers": {
    "ahujasid-blender-mcp-ai978hifrw": {
      "command": "uvx",
      "args": [
        "--python",
        "3.11",
        "blender-mcp"
      ],
      "env": {
        "UV_PYTHON_PREFERENCE": "only-managed"
      }
    }
  }
}
Claude CodeClaude Code

Добавьте сервер одной командой в терминале:

claude mcp add ahujasid-blender-mcp-ai978hifrw --env UV_PYTHON_PREFERENCE=only-managed -- uvx --python 3.11 blender-mcp

Либо через JSON-конфиг:

claude mcp add-json ahujasid-blender-mcp-ai978hifrw "{\"command\":\"uvx\",\"args\":[\"--python\",\"3.11\",\"blender-mcp\"],\"env\":{\"UV_PYTHON_PREFERENCE\":\"only-managed\"}}"
CodexCodex

Добавьте сервер командой в терминале:

codex mcp add ahujasid-blender-mcp-ai978hifrw --env UV_PYTHON_PREFERENCE=only-managed -- uvx --python 3.11 blender-mcp

Либо вручную в ~/.codex/config.toml(%USERPROFILE%\.codex\config.toml на Windows):

[mcp_servers.ahujasid-blender-mcp-ai978hifrw]
command = "uvx"
args = ["--python", "3.11", "blender-mcp"]

[mcp_servers.ahujasid-blender-mcp-ai978hifrw.env]
UV_PYTHON_PREFERENCE = "only-managed"
PerplexityPerplexity

MCP доступен подписчикам Perplexity Pro / Max / Enterprise. Локальные серверы — только в приложении для macOS.

  1. Откройте Настройки аккаунта → Connectors.
  2. Установите вспомогательное приложение PerplexityXPC (один раз).
  3. Нажмите Add Connector → вкладка Simple.
  4. В поле Server Name укажите ahujasid/blender-mcp, а в поле команды запуска — строку ниже:
uvx --python 3.11 blender-mcp

Нажмите Save и дождитесь статуса Running.

WindsurfWindsurf

Откройте Windsurf Settings → Cascade → MCP Servers или отредактируйте файл ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "ahujasid-blender-mcp-ai978hifrw": {
      "command": "uvx",
      "args": [
        "--python",
        "3.11",
        "blender-mcp"
      ],
      "env": {
        "UV_PYTHON_PREFERENCE": "only-managed"
      }
    }
  }
}
ClineCline

В панели Cline нажмите иконку MCP Servers → Configure → Configure MCP Servers (или отредактируйте ~/.cline/mcp.json) и добавьте сервер:

{
  "mcpServers": {
    "ahujasid-blender-mcp-ai978hifrw": {
      "command": "uvx",
      "args": [
        "--python",
        "3.11",
        "blender-mcp"
      ],
      "env": {
        "UV_PYTHON_PREFERENCE": "only-managed"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}
Continue

Создайте файл в .continue/mcpServers/ (например ahujasid-blender-mcp-ai978hifrw.yaml) или добавьте блок в config.yaml. MCP работает только в режиме agent:

mcpServers:
  - name: ahujasid-blender-mcp-ai978hifrw
    command: uvx
    args:
      - "--python"
      - "3.11"
      - "blender-mcp"
    env:
      UV_PYTHON_PREFERENCE: only-managed
Zed

Выполните agent: add context server или откройте настройки (zed: open settings file) и добавьте сервер в объект context_servers:

{
  "context_servers": {
    "ahujasid-blender-mcp-ai978hifrw": {
      "command": "uvx",
      "args": [
        "--python",
        "3.11",
        "blender-mcp"
      ],
      "env": {
        "UV_PYTHON_PREFERENCE": "only-managed"
      }
    }
  }
}

Похожие MCP-сервера

vitrine3d/mcp

vitrine3d/mcp

от vitrine3d

MCP сервер vitrine3d — работа с 3D моделями через AI агента. Загружайте GLB, настраивайте освещение, фон и эффекты, публикуйте embed-код. Анонимная загрузка сразу, вход в аккаунт для постоянного хранения.

TypeScript⭐ 1
PostcardBot/mcp-server

PostcardBot/mcp-server

от postcardbot

MCP-сервер Postcard.bot для отправки физических открыток по всему миру напрямую из кода. Полезен разработчикам AI-агентов и интеграций — позволяет отправлять реальные открытки через Claude, Cursor ...

TypeScript⭐ 5
haris-musa/excel-mcp-server

haris-musa/excel-mcp-server

от haris-musa

Создаёт и редактирует Excel-файлы без Microsoft Excel: формулы, диаграммы, сводные таблицы и условное форматирование.

Python⭐ 4254
pushtodisplay/cli

pushtodisplay/cli

от pushtodisplay

MCP сервер для Push To Display: отправляйте обновления на дисплейные доски из терминала или AI-агентов. Управляйте содержимым, цветом, размером и панелями, создавайте и настраивайте доски без лишни...

TypeScript⭐ 2
Prototypr/feedbagel-mcp

Prototypr/feedbagel-mcp

от prototypr

MCP-сервер для интеграции RSS-лент через Feedbagel. Позволяет агентам искать, подписываться и читать записи, а также управлять вебхуками. Полезен разработчикам, создающим автоматизированные системы...

TypeScript⭐ 3
QGIS MCP

QGIS MCP

от jjsantos01

Создаёт, открывает и сохраняет проекты QGIS, добавляет векторные и растровые слои, запускает алгоритмы обработки данных.

Python⭐ 1131
© Каталог MCP, 2026. Все права защищены.
Проект не аффилирован с Anthropic и любыми упомянутыми продуктами.
Все названия и торговые марки принадлежат их владельцам.
Контакты для связи: hi@mcp-katalog.ru

Лука Никитин