# Loopcut (pypi · loopcut)

Blender cloud tools for agents: GPU renders, free assets, 3D models, character motion, sound, voice.

- Trust score: 81/100 (high trust)
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-10-24

## Components

- pypi · `loopcut`: 81/100 (this document), [markdown](https://verifymcp.io/servers/loopcut-ai-loopcut/loopcut.md), [page](https://verifymcp.io/servers/loopcut-ai-loopcut/loopcut)

## Channel facts

- Registry: `pypi`
- Package: `loopcut`
- Version: `0.2.2`
- Transport: `stdio`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-10-24.

- **Supply Chain Security**: 100/100
  - No malware found by supply-chain analysis.
  - No known CVEs affecting this package version or its production dependencies.
  - Runs setuptools.build_meta at install time, a recognised build step with no custom scripting around it.
  - No production dependencies, so there is no dependency health to assess.
- **Provenance & Transparency**: 97/100
  - Source repository is publicly reachable at the declared URL.
  - Cryptographically verified build provenance (signed, bound to loopcut-ai/loopcut).
  - Clear OSI-approved license (GPL-3.0-or-later).
  - Actively maintained (last published 2 days ago).
  - Disclosure check failed: no security disclosure policy was found in the source repository.
- **Schema Quality & AI Usability**: 62/100
  - AI-judged instruction clarity (good).
  - Context-footprint check failed: tool/resource definitions use about 2224 tokens (~202/item across 11 items; 11 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 17/100
  - Stability observed for 5 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 99/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 98% of tool parameters carry a description.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 11 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 12 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### How do I install the Loopcut MCP server?

Loopcut runs locally as a PyPI package, launched with uvx loopcut. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add loopcut-ai-loopcut -- uvx loopcut
```

### Cursor

```json
{
  "mcpServers": {
    "loopcut-ai-loopcut": {
      "command": "uvx",
      "args": [
        "loopcut"
      ]
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "loopcut-ai-loopcut": {
      "command": "uvx",
      "args": [
        "loopcut"
      ]
    }
  }
}
```

### Codex

```bash
codex mcp add loopcut-ai-loopcut -- uvx loopcut
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "loopcut-ai-loopcut": {
      "type": "local",
      "command": [
        "uvx",
        "loopcut"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add loopcut-ai-loopcut --command uvx --arg loopcut
```

### Hermes

```yaml
mcp_servers:
  loopcut-ai-loopcut:
    command: "uvx"
    args: ["loopcut"]
```

### Netclaw

```json
{
  "McpServers": {
    "loopcut-ai-loopcut": {
      "Transport": "stdio",
      "Command": "uvx",
      "Arguments": [
        "loopcut"
      ]
    }
  }
}
```

### Vellum

```bash
assistant mcp add loopcut-ai-loopcut -t stdio -c uvx -a loopcut
```

### Other

```json
{
  "mcpServers": {
    "loopcut-ai-loopcut": {
      "command": "uvx",
      "args": [
        "loopcut"
      ]
    }
  }
}
```

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-10-24 (score 81, +1)

No change was recorded against any check on this day. Stability & Change Management went from 13 to 17. That category is still filling its 30-day observation window: 4 days of observed history at the previous scan, 5 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-23 (score 80, +15)

- [security improvement] Malware scan: unverified → pass

### 2026-10-22 (score 65, +1)

- [functional] Package version: 0.2.1 → 0.2.2

### 2026-10-21 (score 64, 0)

- [functional] Package version: 0.2.0 → 0.2.1

### 2026-10-20 (score 64, +1)

- [functional improvement] Stability: unverified → 0.03
- [functional] Package version: 0.1.1 → 0.2.0

### 2026-10-19 (score 63)

First indexed and scored.

## MCP tools (11)

### `loopcut_login` (~82 tokens)

Sign in to Loopcut

Sign in to the user's Loopcut account, or switch accounts. Any tool called while signed out does this by itself. Opens the sign-in page in the browser and waits; if it returns a verification_url instead, show it to the user and call again after they approve.

Input parameters:

- `wait_seconds` (integer): Seconds to wait before returning progress (default 40).

### `loopcut_account` (~35 tokens)

Loopcut account

The signed-in Loopcut account: plan, credit balance, Private mode and no-generation settings, and which tools it can use.

### `render_quote` (~475 tokens)

Cloud rendering

Price a cloud render of a saved .blend on an RTX 4090. Packs the scene and every texture, library and cache it uses with a local headless Blender and uploads what the cloud lacks. While the result says status "preparing", call again with the same arguments. Frames default to frame 1 only. Check warnings for missing files (they render pink). Returns a quote and spends nothing; call job_start with the quote_id once the user agrees to the price.

Input parameters:

- `blend` (string, required): Path to the saved .blend file.
- `blender` (string): Blender executable to pack with (default: LOOPCUT_BLENDER, PATH, then the usual install folders).
- `camera` (string): Name of the scene camera object. If omitted, use the active camera in the bundle.
- `confirm_token` (string): Only if the user approved going past a daily_limit_reached or rate_limited refusal: its confirm_token.
- `denoise` (boolean): Denoise rendered frames (Cycles; EEVEE ignores it). Defaults to true.
- `engine` (string): Render engine. Use the scene's own: "eevee" when scene.render.engine is BLENDER_EEVEE. Defaults to "cycles".
- `frame_end` (integer): Last frame to render, inclusive; must be at least frame_start. Defaults to frame_start for a single frame, or 120 frames for a turntable.
- `frame_start` (integer): First frame to render, inclusive. Defaults to 1.
- `frame_step` (integer): Spacing between rendered frames. Defaults to 1.
- `resolution_pct` (integer): Percentage of the scene output resolution. Defaults to 100.
- `samples` (integer): Samples per pixel: Cycles samples, or EEVEE render samples. Defaults to 128 for Cycles and 64 for EEVEE.
- `turntable` (object): Render a 360° turntable instead of the scene camera: a generated camera orbits the target objects (or the whole scene) once across frame_start..frame_end, so the frames loop seamlessly. If frame_end…
- `wait_seconds` (integer): Seconds to wait before returning progress (default 40).

### `asset_search` (~247 tokens)

Loopcut cloud asset library

Search free CC0 libraries (Poly Haven, ambientCG, Physically Based) for models, materials, HDRIs and textures, with licence, size, preview and download details. Try it before generating a model or texture. Free: runs at once and returns the results.

Input parameters:

- `kind`: Asset category to search: one kind, a list of kinds, or any for every kind. Defaults to model.
- `license` (string): License filter. Defaults to cc0; any currently returns the same CC0 sources.
- `limit` (integer): Maximum number of search results. Defaults to 10.
- `max_polycount` (integer): Maximum source-stated polygon count, for models only; ignored for other kinds. Assets with no stated polycount are excluded when set. Defaults to no cap.
- `min_resolution` (integer): Minimum longest side in pixels of the largest texture, HDRI or model texture set offered by the source. Assets with no stated resolution are excluded when set. Defaults to no minimum.
- `query` (string, required): Search terms describing the desired asset; at most 1000 characters.
- `sources` (array): Libraries to search. Defaults to all.

### `image_to_3d` (~225 tokens)

Image to 3D

Make a textured 3D model (GLB) from a prompt, a local reference image, or both. For new props and concept meshes, not exact CAD. Takes 1-5 minutes. Returns a quote and spends nothing; call job_start once the user agrees to the price.

Input parameters:

- `confirm_token` (string): Only if the user approved going past a daily_limit_reached or rate_limited refusal: its confirm_token.
- `image` (string): Local path to a PNG or JPEG or WebP file, at most 20 MB.
- `prompt` (string): Describe the object to generate. Optional when an image file is supplied; otherwise required, at most 1024 characters.
- `quality` (string): Generation detail. Defaults to final (80 credits); draft costs 25 credits.
- `textured` (boolean): Include PBR materials and textures. Defaults to true; false returns geometry only.
- `topology` (string): Preferred face topology. Defaults to triangles; quads are a target rather than a guarantee of clean edge flow.

### `remesh` (~226 tokens)

Retopology

Cloud remesh: rebuild a mesh with clean quads or triangles at a target face count, with its textures baked onto the new mesh. Export the object to a .glb first. Quads come back as FBX, triangles as GLB. Returns a quote and spends nothing; call job_start once the user agrees to the price.

Input parameters:

- `confirm_token` (string): Only if the user approved going past a daily_limit_reached or rate_limited refusal: its confirm_token.
- `model` (string, required): Local path to a GLB file, at most 150 MB.
- `target_faces` (integer): Output face count, 500–200000; the current route supports up to 20000 quads or 40000 triangles. Omit it to let the service choose from the source. By purpose: game prop or background asset 2000–5000,…
- `topology` (string): Preferred output face topology. Defaults to quads.

### `sound_effect` (~161 tokens)

Sound effects

Make a sound effect (WAV, 0.5-30 s) from a description: impacts, ambience, foley. Not speech or music. Returns a quote and spends nothing; call job_start once the user agrees to the price.

Input parameters:

- `confirm_token` (string): Only if the user approved going past a daily_limit_reached or rate_limited refusal: its confirm_token.
- `duration_seconds` (number): Length of the effect in seconds. Defaults to 2; accepted range is 0.5–30.
- `loop` (boolean): Make the start and end join for repeated playback. Defaults to false.
- `prompt` (string, required): Describe the sound source, action, environment and acoustic character; at most 4000 characters.

### `voice_line` (~216 tokens)

Voice lines

Speak a line of text as WAV audio with a chosen voice and direction, for characters or narration. Returns a quote and spends nothing; call job_start once the user agrees to the price.

Input parameters:

- `confirm_token` (string): Only if the user approved going past a daily_limit_reached or rate_limited refusal: its confirm_token.
- `direction` (string): Performance direction such as tone, pace and emotion; at most 1000 characters. If omitted, use a neutral delivery.
- `language` (string): BCP-47 language tag, for example en-US or fr-FR. Defaults to en-US; supported languages depend on the route.
- `text` (string, required): Words to speak; at most 2000 characters.
- `voice` (string): Voice character: Zephyr (bright), Puck (upbeat), Charon (informative), Kore (firm), Fenrir (excitable), Leda (youthful), Aoede (breezy), Sulafat (warm). Defaults to Kore.

### `job_start` (~163 tokens)

Start a quoted job (spends credits)

Start a quoted job; this spends the user's Loopcut credits, at most the quote. Only call it after the user agreed to the quoted price or set a budget that covers it. Calling it again for the same quote returns the same job. Waits for the job and downloads the results when it finishes in time.

Input parameters:

- `confirm_token` (string): Only if the user approved going past a daily_limit_reached or rate_limited refusal: its confirm_token.
- `out_dir` (string): Folder for the results (default: loopcut_outputs/<job_id>, or loopcut_renders/<job_id> next to the .blend).
- `quote_id` (string, required)
- `wait_seconds` (integer): Seconds to wait before returning progress (default 40).

### `job_status` (~127 tokens)

Job status and results

Wait for a job, then download its results (hash-checked; finished files are kept). Call it again until the result has the files or the status is failed or canceled. A first render can spend minutes starting a GPU.

Input parameters:

- `job_id` (string, required): Job id from job_start, e.g. job_…
- `out_dir` (string): Folder for the results (default: loopcut_outputs/<job_id>, or loopcut_renders/<job_id> next to the .blend).
- `wait_seconds` (integer): Seconds to wait before returning progress (default 40).

### `job_cancel` (~40 tokens)

Cancel a job

Cancel a queued or running job. Unspent credits are refunded.

Input parameters:

- `job_id` (string, required): Job id from job_start, e.g. job_…

## Diagnostics

Captured diagnostic sections: Provenance, Install scripts, Dependencies. The full working is on the page: https://verifymcp.io/servers/loopcut-ai-loopcut/loopcut#diagnostics

## Score history

- 2026-10-24: 81
- 2026-10-23: 80
- 2026-10-22: 65
- 2026-10-21: 64
- 2026-10-20: 64
- 2026-10-19: 63

## Common questions

### What is the Loopcut MCP server?

Loopcut is an MCP server listed in the public MCP registry as io.github.loopcut-ai/loopcut. Blender cloud tools for agents: GPU renders, free assets, 3D models, character motion, sound, voice. This page covers its PyPI package (loopcut).

### Is the Loopcut MCP server safe to use?

Loopcut scores 81 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 24 October 2026. Its build provenance is signed and verified. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the Loopcut MCP server expose?

Loopcut exposes 11 tools: loopcut_login, loopcut_account, render_quote, asset_search, image_to_3d, and 6 more. Their descriptions and schemas cost roughly 1,997 tokens of context every time the server is loaded.

### Is the Loopcut MCP server still maintained?

Loopcut is still listed as active in the MCP registry. We last reached this channel on 24 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

### What licence is the Loopcut MCP server under?

Loopcut declares the GPL-3.0-or-later licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.

## Links

- PyPI project: https://pypi.org/project/loopcut/
- Socket report: https://socket.dev/pypi/package/loopcut
- Repository: https://github.com/loopcut-ai/loopcut
- Website: https://loopcut.org/render
- Changelog RSS feed: https://verifymcp.io/servers/loopcut-ai-loopcut/loopcut.xml
- Changelog JSON feed: https://verifymcp.io/servers/loopcut-ai-loopcut/loopcut.json
- HTML version of this page: https://verifymcp.io/servers/loopcut-ai-loopcut/loopcut
