Skip to main content
Glama
ViperMesh for Blender

ViperMesh for Blender

English | Español | 简体中文 | Français | 日本語 | Deutsch | Português (Brasil)

CI GitHub release License: MIT MCP

AI assistance for Blender, with less code and less waiting.

Designed for faster scene edits, fewer AI tokens and better-checked results.

Project overview and setup | ViperMesh Studio waitlist


ViperMesh for Blender is a free, open-source Blender MCP server and addon that lets a compatible AI assistant work inside your Blender scene. It is for Blender artists, hobbyists and game creators who want help making and editing 3D scenes, not another coding project.

The goal: faster AI-assisted work, fewer AI tokens and better-checked results. Your assistant gets ready-to-use Blender actions instead of having to write new Python code for many common edits. You keep working in Blender and decide what you want the assistant to help with.

Watch The Overview

Watch the ViperMesh for Blender overview

Watch the 77-second video or download the MP4. See how your AI client uses ready-made Blender actions, why less generated code can help, and how to get started. This is an illustrated overview with music, not a timed benchmark recording. GitHub's README links to the playable video.

Related MCP server: BlenderMCP

Why ViperMesh for Blender?

What matters to you

How ViperMesh helps

Less AI usage

Reusable actions reduce the Blender code the assistant needs to generate for covered tasks.

Less waiting

The connection stays open, and related actions can run together instead of repeating setup for each step.

Better-checked scenes

Built-in checks help identify floating objects, wrong orientations and clearance problems; the assistant can inspect images and repair mistakes.

Easier for your assistant

Discoverable tools and concise guidance explain what actions are available and how to use them.

Room for custom work

The assistant can still write Python when your request needs something the ready-made tools do not cover.

AI tokens are the units of text a model reads and writes. Generating less code can reduce AI usage, but total tokens, cost and time also depend on your model and the task. Scene checks help with correctness; they do not guarantee a beautiful or error-free result.

One Reference, Two Blender Workflows

One historical image-reconstruction test using the ViperMesh Blender MCP harness and available assets. Only the centre heading was relabelled; the reference and both scene screenshots are unchanged. This is one example, not a guarantee of every result. The public addon does not bundle private Studio asset libraries.

Read the Blender MCP case study, Part One | Open the full-size comparison | Image integrity record

What Can It Help With?

  • Build, move, duplicate and arrange objects in a scene.

  • Soften edges, adjust materials, set cameras and change lighting.

  • Check whether objects sit on their supports or leave enough space.

  • Assist with mesh cleanup, retopology, UV preparation, rigging and weights.

  • Work with animation settings, prepare exports and inspect results.

For example, you could ask your assistant:

Move the basket under the right side of the table, without intersecting its legs.

Soften the sharp edges on this furniture, keeping its overall shape.

Check this scene for unsupported objects, then show me what needs fixing.

These are examples of requests, not prebuilt scene templates. You do not need to write Blender Python yourself for the operations the tools cover.

How Is It Different From The Original BlenderMCP?

ViperMesh builds on the original BlenderMCP project by Siddharth Ahuja, now named MCP for Blender. The main difference is its emphasis on a broad set of ready-made editing actions, reusable workflows and scene checks, rather than relying on newly generated Python for common edits.

Both projects can inspect scenes and run custom Python. The original project also offers asset and generation integrations. ViperMesh's aim is to make everyday scene operations more token-efficient, faster, simpler for assistants to use and easier to validate. This is not a claim that it wins every task or that the public connector includes every feature of ViperMesh Studio.

Website installation guide · Harness Library listing

Requirements

  • Blender 5.2 for the currently tested release target

  • Node.js 20 or newer

  • An MCP-compatible client that supports stdio servers

MCP, short for Model Context Protocol, is a connection standard that lets an AI assistant use tools in another application. You need an AI app that supports these connections; installing the addon alone does not add an AI model to Blender.

Install

1. Install the Blender addon

Download the versioned addon .py or addon .zip from the latest release. In Blender:

  1. Open Edit > Preferences > Add-ons.

  2. Choose Install from Disk and select the downloaded Python file.

  3. Enable ViperMesh for Blender.

  4. Open the 3D Viewport sidebar, select ViperMesh, and click Start Local Bridge.

Keep the bridge running for the complete agent session.

2. Install the MCP server

Packaged option: Download the v1.3.0 MCPB bundle and import it into a client that supports local MCPB extensions. It contains the Node server and its dependencies, so you do not need to clone or build the repository. Node.js and the separately enabled Blender addon are still required.

The connector is also listed on Smithery and in the official MCP Registry. These listings distribute the local connector, not a hosted Blender service. See distribution and bundle setup for the checksum, manual extraction option, and current validation limits.

Source option: Until the npm package is published, clone and build it:

git clone https://github.com/OpenRootdev/vipermesh-blender.git
cd vipermesh-blender
npm install
npm run build

3. Connect your AI assistant

When using the MCPB import, the client reads its launch configuration from the bundle. For the source option, use the built entry point from an absolute path:

{
  "mcpServers": {
    "vipermesh-blender": {
      "command": "node",
      "args": [
        "C:/absolute/path/to/vipermesh-blender/dist/public-portable-blender-mcp.js"
      ]
    }
  }
}

Start this command once through the MCP client. Do not invoke npm, npx, or tsx again for each Blender operation. See MCP client setup for Codex, JSON-configured clients, compatibility, and the optional Docker MCP Toolkit route.

Technical Details

The sections below are for setting up or developing an AI connection. Blender users can start with the installation steps and the example requests above.

Connection Model

MCP-compatible AI assistant
        |
        | stdio, one long-lived process
        v
ViperMesh MCP server
        |
        | serialized loopback connection
        v
ViperMesh Blender addon (127.0.0.1:9876)
        |
        v
Blender scene

The MCP server opens no network listener. The Blender addon listens on loopback by default and reports Stopped, Ready, Agent connected, or Error in the ViperMesh sidebar.

First Agent Calls

  1. Call bootstrap_vipermesh_session.

  2. Inspect the scene with call_blender_tool(name="get_scene_info").

  3. Search task guidance with search_3d_guidance.

  4. Discover only the relevant capabilities with list_blender_tools.

  5. Build, inspect and repair, then finalize and save.

The public MCP surface includes:

  • bootstrap_vipermesh_session

  • check_blender_connection

  • list_blender_tools

  • call_blender_tool

  • call_blender_tool_batch

  • run_blender_scene_stage

  • get_blender_agent_context

  • search_3d_guidance

  • get_3d_guidance_document

Read the complete connector manual for request shapes, batching rules, staged workflows, local tool skills, and troubleshooting. The repository also ships an installable using-vipermesh-blender agent skill.

Security

This connector is intended for a trusted local workstation. execute_code can run arbitrary Python in Blender. Only connect trusted MCP clients, keep the bridge on loopback, and review high-impact or destructive operations.

See SECURITY.md for the trust boundary and private vulnerability reporting process.

Public Connector Scope

This repository contains the open-source Blender addon, portable MCP server, portable public tool skills, and connector tests. It does not include the ViperMesh application, authentication, billing, private prompts, private RAG data, cloud model routing, private assets, raw benchmark traces, or private evaluation datasets. The illustrated comparison is separately provided public evidence, not a bundled asset library.

The connector does not bundle a commercial 3D generation provider. Neural generation can be added later through provider-neutral authenticated services without embedding third-party credentials in Blender.

Frequently Asked Questions

Do I need a paid ViperMesh account?

No. The public addon and local connection are free to use without a ViperMesh account. Your AI app or model provider may charge separately. The addon does not include free AI model access.

Do I need to be a programmer?

You do not need to write Python for the covered Blender edits. The initial setup still involves installing the addon and connecting a compatible AI app. Use the MCPB bundle in clients that support it, or build from source using the provided commands. The separately enabled Blender bridge and client setup mean this is not a one-click install for every environment.

Does ViperMesh replace execute_code?

No. It reduces unnecessary generated Blender Python by providing structured operations, but keeps execute_code for custom geometry, procedural effects, unusual node graphs, and uncovered workflows.

Why must the MCP process stay running?

The process retains a serialized connection to Blender. Relaunching it for every call adds avoidable startup, transport, and agent-tool overhead.

Does it require Docker?

No. Local stdio-capable MCP clients launch the Node server directly. Docker MCP Toolkit is an optional packaging and gateway route, and is not yet a supported ViperMesh installation path because host-to-Blender loopback connectivity still requires cross-platform validation.

Does the public connector require ViperMesh cloud authentication?

No. The public addon and local MCP server work without ViperMesh authentication. Future hosted models and proprietary orchestration are separate product capabilities.

Can it use installed Blender addons?

The connector can inspect installed addons and supports trusted local automation. Unknown addon operations should be reviewed before being exposed as callable agent capabilities.

Development

npm install
npm run check
python -m py_compile addon/vipermesh-addon.py

See CONTRIBUTING.md before opening a pull request.

License and Attribution

ViperMesh for Blender is released under the MIT License. It includes work derived from BlenderMCP by Siddharth Ahuja. See NOTICE.md for attribution and trademark notices.

Available Tools

9 tools
bootstrap_vipermesh_sessionBootstrap ViperMesh SessionA

Call once at session start. Checks Blender and returns compact operating context plus the recommended next calls for one persistent MCP session.

NameRequiredDescriptionDefault

No parameters

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It discloses that the tool performs a Blender connectivity check and returns context plus suggested follow-up calls, but says nothing about failure behavior, latency, or whether the check is side-effect free.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences, front-loaded with the invocation rule and followed by the return content. No filler or repetition of the tool name.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For an orchestration tool with no output schema and no annotations, the description should sketch the shape of the returned context. "Compact operating context" and "recommended next calls" gesture at it but leave the agent guessing what fields arrive.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters, so there is no parameter semantics to explain; the baseline for a parameterless tool applies. Nothing in the description muddies that.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific action and scope: it checks Blender and returns operating context plus recommended next calls for one persistent session. That distinguishes it reasonably from check_blender_connection, though it never names that sibling explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

"Call once at session start" gives clear when-to-use guidance and implies the once-per-session constraint. It stops short of naming alternatives or stating when not to call it (e.g., mid-session refreshes).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

call_blender_toolCall Blender ToolC

Call one approved ViperMesh Blender command with structured parameters.

NameRequiredDescriptionDefault
nameYes
paramsNo

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations at all, the description carries the full behavioral burden, yet it discloses nothing beyond the word "approved." It does not say what happens with an unapproved name, whether executed commands can modify or destroy data in the scene, whether an active session is required, or how failures are reported — all essential for an arbitrary dispatcher.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The single front-loaded sentence contains no filler, but its brevity comes at the cost of under-specification rather than efficiency; one or two more sentences about command discovery and params would earn their place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a generic dispatcher with a free-form nested params object, zero annotations and no output schema, the definition is far too thin — it omits discovery workflow, side-effect profile, and error behavior that an agent needs before invoking arbitrary scene commands.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% for both parameters, so the description must compensate and does not. It never explains that "name" must match an entry from list_blender_tools, nor that "params" is validated against that command's own signature — a serious gap given the untyped nested object.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description gives a verb and resource ("Call one approved ViperMesh Blender command") and the word "one" faintly distinguishes it from call_blender_tool_batch, but it never explains what a "command" is or where valid command names come from (presumably list_blender_tools). An agent still cannot tell from the description alone how this differs from run_blender_scene_stage or the batch sibling.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus call_blender_tool_batch or run_blender_scene_stage, and no mention of prerequisites such as establishing a session or discovering approved command names first. Usage is only inferable from the name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

call_blender_tool_batchCall Blender Tool BatchB

Run an ordered bounded sequence of approved ViperMesh Blender commands through one persistent session. Use only when intermediate observations are not needed to choose the next command.

NameRequiredDescriptionDefault
commandsYes
stopOnErrorNo

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations at all, the description carries the full behavioral burden. It does add real context — execution is ordered, bounded, and runs in one persistent session against 'approved' commands — but it says nothing about error handling (the stopOnError parameter is never mentioned), whether side effects from earlier commands persist after a failure, or what the call returns. Those are material gaps for a tool that mutates a scene.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tight sentences with zero filler; the core operation is front-loaded and the usage constraint follows immediately. Nothing is repeated from the schema or the title.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema and no annotations, and the description does not cover return values, per-command results, or failure behavior. For a batch execution tool with an undocumented stopOnError flag, the definition is too thin to let an agent invoke it confidently in error-sensitive situations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% across two parameters, so the description must compensate and does not. 'Ordered bounded' hints at array ordering and the 32-item cap, but stopOnError is never explained and the name/params shape of each command entry is left entirely to the schema. An agent gets no guidance on what the second parameter actually does.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: 'Run an ordered bounded sequence of approved ViperMesh Blender commands through one persistent session.' The notions of ordering, boundedness and a single persistent session separate it from a single-command tool. It stops short of naming call_blender_tool as the non-batch counterpart, so the sibling distinction is implied rather than stated.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

'Use only when intermediate observations are not needed to choose the next command' is a genuine selection criterion that tells the agent when this tool is appropriate and, by implication, when the single-command sibling is. There is no explicit exclusion for error-sensitive sequences or a named alternative, which keeps it below a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

check_blender_connectionCheck Blender ConnectionA

Check whether the local ViperMesh Blender addon is responding on its configured loopback socket.

NameRequiredDescriptionDefault

No parameters

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full behavioral burden. It usefully discloses that the probe is local and loopback-socket based, implying a cheap, side-effect-free read, but it does not say how non-responsiveness is surfaced (error vs. boolean), whether there is a timeout, or what the caller should do next.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with no filler. The resource and scope (local, loopback) come first, and nothing is repeated from the title.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter connectivity probe with no output schema, the definition covers what is being checked and where. The remaining gap is the shape of the result on failure, which matters slightly more here than for a typical read tool since the outcome is the entire product.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters, so the baseline of 4 applies. The description correctly implies the target socket is configuration-driven rather than a caller-supplied argument, which matches the empty input schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: checking whether the ViperMesh Blender addon responds, scoped to a configured loopback socket. That is enough to separate it from siblings such as call_blender_tool or list_blender_tools, which act on the addon rather than merely probing it. It stops short of an explicit sibling contrast, so a 4 rather than a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is only implied: an agent can infer this is a pre-flight connectivity probe to run before invoking other Blender tools. There is no explicit when-to-use statement, no guidance on what to do after a failure (e.g., run bootstrap_vipermesh_session), and no named alternative.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_3d_guidance_documentGet 3D Guidance DocumentB

Read one approved Markdown reference from the checked-in ViperMesh agent skill.

NameRequiredDescriptionDefault
filenameYes

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so the description carries the full burden. 'Read' plus 'approved' and 'checked-in' communicates that this is a safe, read-only lookup against a curated bundle rather than arbitrary filesystem access. It does not disclose behavior on an unknown filename, path handling, or the shape/size of the returned document.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One short, front-loaded sentence with no filler; the resource and scope are established immediately. It is arguably too terse for the disclosure burden it carries, but nothing is wasted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple single-parameter lookup with no output schema and no annotations, the definition covers what the tool fetches but not what comes back (raw Markdown text) or how failures surface. An agent could call it, but could not predict the response or error handling.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single 'filename' parameter has zero schema description coverage, so the schema supplies only a 1-255 character string constraint. The description implies it names a Markdown reference in the skill bundle, but adds no format guidance (extension, relative path, case sensitivity) or examples to compensate for the coverage gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a concrete verb and resource: 'Read one approved Markdown reference from the checked-in ViperMesh agent skill.' That is specific enough to distinguish it from siblings like call_blender_tool or run_blender_scene_stage. It stops short of naming its natural counterpart, search_3d_guidance, so sibling differentiation is only implicit.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is only implied: 'one approved Markdown reference' suggests retrieval of a specific already-known document, as opposed to searching. It never says when to prefer this over search_3d_guidance, nor what to do when the filename is unknown, so the agent must infer the search-then-read workflow.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_blender_agent_contextGet Blender Agent ContextC

Load the public compact ViperMesh operating rules for persistent Blender MCP sessions.

NameRequiredDescriptionDefault

No parameters

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are supplied, so the description carries the full burden, yet it never says whether this is a pure read, whether it mutates session state, whether it requires an active Blender connection, or roughly how much text it returns for 'compact'. The word 'compact' is the sole nod to output size, and 'public' is unexplained.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with no padding or redundancy. It is efficient, though its brevity borders on under-specification rather than tightness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-argument context loader the description should say what the agent receives and how it relates to the bootstrap sibling, especially since there is no output schema. It is minimally viable but leaves the agent guessing about the return payload and the sequencing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters at 100% coverage, so there is nothing for the description to disambiguate. Baseline 4 applies for a no-parameter tool.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The verb 'Load' and the object 'operating rules' give a rough sense of the operation, but 'compact ViperMesh operating rules' and 'persistent Blender MCP sessions' are product jargon that an agent cannot resolve from the text alone. It does not distinguish this from the sibling bootstrap_vipermesh_session, which plausibly loads overlapping session material.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no explicit when-to-use, when-not-to-use, or ordering guidance, and with siblings like bootstrap_vipermesh_session, check_blender_connection and list_blender_tools in the same family, the agent has no basis to pick this one first. 'Persistent Blender MCP sessions' is the only contextual hint and it is not framed as a condition.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_blender_toolsList Blender ToolsC

List Blender commands available through the trusted local portable gateway, including execute_code for fallback measurement.

NameRequiredDescriptionDefault
queryNo
categoryNo

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full behavioral burden and discloses almost nothing: it does not say the call is read-only, whether 'trusted local portable gateway' implies an auth/connection prerequisite, or whether results are cached or paginated. The single useful signal is that execute_code is exposed for fallback measurement.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One compact sentence with no filler, and the core purpose is front-loaded. It is short to the point of under-specification rather than wordiness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a discovery tool with no output schema, no annotations, and two undocumented parameters, the description should at minimum explain what the listing returns (names only? schemas?) and how query/category narrow it. Neither is covered, leaving an agent unable to predict the response shape.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the description says nothing about the two optional parameters, query and category, such as whether they filter by name, substring, or exact category value. The agent must guess the filtering semantics entirely from bare property names.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('List Blender commands available through the trusted local portable gateway') and even names one returned item, execute_code. It does not distinguish itself from close siblings like call_blender_tool or check_blender_connection, so it falls short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no statement of when to call this versus call_blender_tool, call_blender_tool_batch, or check_blender_connection. The only hint is the parenthetical 'for fallback measurement' attached to execute_code, which does not tell an agent when to prefer this listing tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

run_blender_scene_stageRun Blender Scene StageC

Run one compact scene-workflow stage over the persistent Blender session. Use build, inspect_preview, and finalize as separate decision points; standalone tools remain available for repairs and unusual work.

NameRequiredDescriptionDefault
stageYes
presetNo
samplesNo
commandsNo
blendPathNo
cameraNameNo
renderPathNo
previewPathNo
resolutionXNo
resolutionYNo
targetNamesNo
spatialRelationsNo
groundingToleranceNo
preservePresentationNo

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full behavioral burden. It discloses one useful trait, that the session is persistent across calls, but says nothing about whether stages mutate prior scene state, what happens on a partial failure, whether a bootstrapped session is required first, or what the call returns.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the core action, and no filler. The second sentence carries real routing information but is vague about what the 'decision points' entail, so it spends words without fully earning them.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 14-parameter mutation tool with no annotations and no output schema, the definition is materially under-specified. An agent cannot tell which of the many optional parameters each stage consumes, nor what a successful or failed stage looks like.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% across 14 parameters, so the description must compensate and largely does not. Only the stage enum values are echoed; preset, samples, commands, blendPath, renderPath, previewPath, resolution, targetNames, spatialRelations, groundingTolerance, and preservePresentation are all left unexplained by both schema and description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: running one scene-workflow stage over a persistent Blender session, with build/inspect_preview/finalize named as the stages. It also distinguishes itself from the sibling standalone tools, though the word 'stage' alone would be opaque without the enum in the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives a clear workflow directive to treat build, inspect_preview, and finalize as separate decision points, and notes that standalone tools remain for repairs and unusual work. However, it never explains what each stage actually does or when a caller should pick inspect_preview over finalize, so stage selection is left to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_3d_guidanceSearch 3D GuidanceC

Search checked-in ViperMesh 3D tool skills and optionally the configured semantic guidance store.

NameRequiredDescriptionDefault
limitNo
queryYes
sourceNo
minSimilarityNo

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It does not explain what "checked-in" means operationally, whether the semantic store requires configuration or authentication, what happens when the store is unavailable, or what the result format and pagination behavior are.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single compact sentence with the core purpose front-loaded and no wasted wording. Its brevity is efficient, though it leaves important semantics unexplained rather than being structurally confusing.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a four-parameter search tool with no annotations, no output schema, and zero schema description coverage, the description is too thin to be complete. It omits result behavior, source selection details, and parameter meanings that an agent would need to invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% across four parameters, so the description should compensate but mostly does not. It loosely hints at the semantic source option, but never explains query semantics, the meaning of the source enum values, the limit, or minSimilarity.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ("Search") and resource ("checked-in ViperMesh 3D tool skills" plus an optional semantic guidance store), so the agent can understand what the tool retrieves. It does not explicitly distinguish itself from the sibling get_3d_guidance_document, but the search-oriented framing is reasonably clear.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase "optionally the configured semantic guidance store" hints that the tool can search two sources, but it gives no explicit guidance on when to use this tool versus get_3d_guidance_document or list_blender_tools. There are no exclusions or conditions for choosing between local and semantic search.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 9 tool updatesv1.3.0
    • First observedbootstrap_vipermesh_session
    • First observedcall_blender_tool
    • First observedcall_blender_tool_batch
    • First observedcheck_blender_connection
    • First observedget_3d_guidance_document
    • First observedget_blender_agent_context
    • First observedlist_blender_tools
    • First observedrun_blender_scene_stage
    • First observedsearch_3d_guidance

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    C
    maintenance
    Connects Blender to AI through the Model Context Protocol to enable prompt-assisted 3D modeling and scene manipulation. It supports object creation, material control, and arbitrary Python code execution directly within the Blender environment.
    22
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Connects Blender to AI assistants through the Model Context Protocol, enabling direct AI control of 3D modeling, scene creation, and manipulation via natural language.
    MIT