Skip to main content
Glama

Cavi Godot MCP

Review a static textured GLB as an interactive Godot Web scene and capture a source-bound image. The server runs locally over MCP stdio.

Install

Requires Python 3.15 or newer and uv. In a source checkout:

uv sync --locked

The command is .venv/bin/cavi-godot-mcp. Configure an MCP client with that executable and these environment variables:

{
  "mcpServers": {
    "godot": {
      "command": "/absolute/path/to/godot-mcp/.venv/bin/cavi-godot-mcp",
      "env": {
        "CAVI_GAME_ART_WORKSPACE": "/absolute/path/to/workspace",
        "CAVI_GODOT_BIN": "/absolute/path/to/godot",
        "CAVI_GODOT_WEB_TEMPLATE": "/absolute/path/to/web_nothreads_release.zip",
        "CAVI_CHROMIUM_BIN": "/absolute/path/to/chrome-headless-shell",
        "CAVI_NODE_BIN": "/absolute/path/to/node"
      }
    }
  }
}

Capture requires macOS or Linux. Use a Godot editor and matching single-threaded Web export template, a headless Chromium with WebGL 2 support, and Node.js 22 or newer. The workspace must already exist. Tool discovery and godot_status do not launch these programs.

Related MCP server: godot-mcp

Review an asset

  1. Place a self-contained static textured .glb in the workspace. Inputs are static GLB 2.0 files up to 64 MiB with embedded PNG or JPEG textures; skins and animations are rejected.

  2. Call godot_review_prepare with its relative source, a new relative directory, and a view of front, three-quarter, or side.

  3. Call godot_review_capture with the review directory. It imports and exports with Godot, captures a rendered frame in headless Chromium, and records its inputs and process evidence.

  4. Call godot_review_inspect to check the source, tool and artifact hashes and inspect pending cleanup and the latest attempt. Open the capture for visual review. Review inspection limits receipt metadata to 1 MiB and individual artifacts to 256 MiB.

To use the interactive view, serve the receipt's relative bundle within the review directory:

python3 -m http.server --bind 127.0.0.1 --directory <review-directory>/<bundle>

Drag to orbit, scroll to zoom, and press R to reset. The white bar is one metre long. Stop the server after review.

Godot's headless mode does not render; the capture uses a Godot Web export with the Compatibility renderer and WebGL 2. A prop-only input cannot establish room architecture, collision, or traversal. Godot appearance is not Unity toon appearance: perform final import, visual, and runtime acceptance in the consuming engine.

If capture reports an unknown outcome, call godot_review_inspect and inspect the latest attempt's evidence. A pending cleanup marker blocks another capture; do not remove it until the owned processes and output have been resolved. Report security concerns privately as described in SECURITY.md.

Available Tools

4 tools
godot_review_captureC

Capture the prepared review in an isolated browser.

Inputs: directory (required). Returns: object

godot_review_inspectB
Read-onlyIdempotent

Check review hashes and report pending cleanup and the latest attempt.

Inputs: directory (required). Returns: object

godot_review_prepareC

Prepare a new owned static GLB review in the workspace.

Inputs: source (required), directory (required), view. Returns: object

godot_statusA
Read-onlyIdempotent

Report whether each review dependency is configured without launching it.

Inputs: no named parameters. Returns: object

Tool Schema Changelog

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

Loading tool schema changelog…

    TDQS

    B3/5.0

    Scored across 4 tools

    Disambiguation4/5

    The four tools map to distinct stages of a review workflow: status checks configuration, prepare creates a review, capture runs it in a browser, and inspect verifies hashes. The only mild overlap is prepare vs. capture, which both concern the same review object, but the descriptions make the ordering and intent clear enough to avoid misselection.

    Naming Consistency4/5

    All names share a consistent godot_ prefix and use snake_case, with a predictable godot_review_<verb> pattern for three of the four tools. godot_status breaks the pattern by omitting the review_ segment, a minor deviation that is still readable.

    Tool Count4/5

    Four tools is on the low end but appropriate for a narrow, staged review pipeline where each tool corresponds to a pipeline step. Nothing feels redundant or like padding.

    Completeness3/5

    The lifecycle status → prepare → capture → inspect is covered, but godot_review_inspect only reports pending cleanup without any tool to actually perform cleanup or dispose of a review. There is also no way to list or fetch an individual review's details, leaving a notable dead end in the surface.

    Maintenance

    ActivityMaintained
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      B
      quality
      C
      maintenance
      Enables MCP-compatible clients to render, inspect, and diagnose OpenMoonRay scenes through a local MoonRay runtime, with support for interactive viewing, scene validation, and render comparisons.
      25
      Apache 2.0
    • A
      license
      Not graded
      quality
      B
      maintenance
      Enables AI agents to inspect, author, debug, simulate, and visually verify Godot 4.x projects through standard MCP tools, including scene editing, runtime control, and viewport capture.
      187 npm
      5
      MIT
    • A
      license
      Not graded
      quality
      C
      maintenance
      Enables local Blender-based product modeling and photography by exposing project management, scene editing, rendering, image inspection, and asset publishing tools to MCP hosts like Claude Code, with versioned .blend revisions and PNG renders.
      GPL 3.0
    • A
      license
      Not graded
      quality
      B
      maintenance
      Enables MCP hosts and coding agents to model, inspect, measure, and deliver real Blender scenes through 15 tools and 217 catalog operations, returning actual rendered images after key edits. Works against a live Blender GUI via addon or a persistent headless worker, producing editable .blend files, GLB exports, previews, and acceptance records.
      1
      BSD 3-Clause