Skip to main content

dcc-mcp-openusd

DCC-MCP · OPENUSD

Agent workflow

AI agents should use the shared gateway through dcc-mcp-cli; IDE users may continue to use the MCP endpoint. Prefer typed skills and tools over raw scripts.

Install or update the CLI

dcc-mcp-cli is the preferred control path for every shell-capable agent. If it is missing, ask the user before installing the latest official release:

# Linux/macOS
curl -fsSL https://raw.githubusercontent.com/dcc-mcp/dcc-mcp-core/main/scripts/install-cli.sh | sh

# Windows PowerShell
powershell -ExecutionPolicy Bypass -c "irm https://raw.githubusercontent.com/dcc-mcp/dcc-mcp-core/main/scripts/install-cli.ps1 | iex"

Keep an official build current through the release manifest:

dcc-mcp-cli update check
dcc-mcp-cli update apply

update apply downloads and stages the latest CLI for the next launch. It does not update a running dcc-mcp-server; update that server in its own environment.

dcc-mcp-cli dcc-types
dcc-mcp-cli list
dcc-mcp-cli search --query "<task>" --dcc-type openusd
dcc-mcp-cli describe <tool-slug>
dcc-mcp-cli call <tool-slug> --json '{"key":"value"}'

dcc-types reports release-catalog support; list reports live sessions. If a tool belongs to an inactive progressive skill, call dcc-mcp-cli load-skill <skill-name> --dcc-type openusd before retrying. For post-task improvement, attach a stable session id with --meta-json, query dcc-mcp-cli stats --range 24h --session-id <task-id>, then pass the bounded evidence to the review_skill_improvement prompt from dcc-mcp-skills-creator.

OpenUSD adapter and skills for the DCC Model Context Protocol ecosystem.

dcc-mcp-openusd runs a headless OpenUSD-oriented MCP server that can create portable USD project folders, author simple stages, add references, validate stages, and package USDZ-like archives. It is designed to plug into the dcc-mcp-core gateway and skills-first workflow.

Install

Follow the wheel-first installation and lifecycle guide. The adapter requires dcc-mcp-core>=0.19.45. After installing a trusted wheel, run:

dcc-mcp-openusd doctor --json
dcc-mcp-openusd verify --json

The base install operates in text-fallback mode: it reads and writes USDA text without requiring the Pixar USD runtime. This mode is suitable for lightweight agents, CI gates, and environments where native USD libraries are unavailable.

For full OpenUSD runtime behavior, install the optional Pixar USD bindings:

python -m pip install --only-binary=:all: "dcc-mcp-openusd[openusd]"

The [openusd] extra pulls in usd-core>=24.11 (the Pixar open-source USD Python bindings, importable as pxr). With pxr installed, all stage authoring, material binding, camera/light definition, time-sampled animation, and composition-arc operations go through the native USD runtime.

Runtime mode detection

from dcc_mcp_openusd.runtime import detect_runtime

runtime = detect_runtime()
print(runtime.has_pxr)  # True when pxr is installed
print(runtime.version)  # API tuple label, for example "0.26.5"

Every public function returns a "runtime" field in its result dict — "pxr" when the native runtime was used, "text-fallback" otherwise.

Feature boundary

Feature Text-fallback pxr runtime
create_stage, create_project USDA text Native Usd.Stage
list_stage, define_xform, define_prim USDA parse + insert Native API
add_reference, set_xform_ops USDA text Native API
validate_stage, snapshot_stage, package_usdz USDA checks Native validation
Material binding (UsdShade) Requires pxr
Camera / Light (UsdGeomCamera, UsdLux) Requires pxr
Time-sampled animation Requires pxr
Sublayer / payload composition Requires pxr

Advanced features that cannot be expressed through text-fallback raise OpenUsdError("... requires the Pixar USD (pxr) package. Install it with: pip install usd-core") when pxr is absent.

Run

dcc-mcp-openusd

The instance uses an OS-assigned direct port. Connect through the stable local gateway, or discover the exact direct URL with dcc-mcp-cli list.

Daemon startup, explicit pidfiles, identity-verified platform-specific stop, upgrade, and uninstall are documented in install.md. Doctor and verify never start the service or daemon.

Bundled Skills

The package ships seven bundled skills:

Skill Purpose
openusd-project Create self-contained project folders and snapshots.
openusd-stage Create stages, list prims, define xforms, set xform ops, modify stage metadata, and add references.
openusd-validate Validate stage invariants and package a USDZ-style archive.
openusd-material Create UsdShadeMaterial prims, attach UsdPreviewSurface shaders, and bind materials to geometry.
openusd-light-camera Create cameras (UsdGeomCamera) and lights (DistantLight, SphereLight) with transforms.
openusd-animation Set stage time codes and author translate/rotate/scale time samples.
openusd-composition Add sublayers, payloads, variant sets, and variant selections for multi-layer scenes.

Agents should follow the normal DCC-MCP flow:

  1. search_skills(query="openusd stage")
  2. load_skill("openusd-stage")
  3. Call a typed tool such as openusd_stage__create_stage
  4. Validate with openusd_validate__validate_stage

Scope

This repository is intentionally an adapter/domain-skill package, not a new core USD engine. dcc-mcp-core remains the shared transport, gateway, validation, telemetry, and skill-loading foundation. This package owns OpenUSD-specific project semantics, stage authoring tools, validation policy, and packaging workflows.

Development

# Minimal setup (text-fallback, fast CI gate)
pip install -e ".[dev]"
pytest tests/ --ignore=tests/e2e

# Full setup (pxr runtime, material/light/animation/composition tests)
pip install -e ".[dev,openusd]"
pytest tests/e2e/ -v
ruff check src tests tools
python -m build

The CI matrix enforces both modes:

  • test-minimal — no pxr, runs unit tests + contract test (text-fallback baseline)
  • test-openusd — with pxr, runs the e2e golden-path suite

Release

The repository uses release-please; PyPI publishing is wired through the pypi GitHub environment.

Release files for dcc-mcp-openusd 0.8.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for dcc-mcp-openusd 0.8.2
File Size Uploaded
dcc_mcp_openusd-0.8.2.tar.gz 57.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for dcc-mcp-openusd 0.8.2
File Interpreter ABI Platform
dcc_mcp_openusd-0.8.2-py3-none-any.whl Python 3 none any Details

Total release size: 113.9 kB

Release files / dcc_mcp_openusd-0.8.2.tar.gz

Download URL dcc_mcp_openusd-0.8.2.tar.gz
Size 57.4 kB
Tags Source
SHA-256 checksum
How to use checksums
004f30d07fcf9c90e54f87911521978356a10241fc00521578d3fe5acb44fae3
BLAKE2b-256 checksum
How to use checksums
f5868571bc1385aa9d54e48a2c1c2052ee26bb33613c471f215d20163d55b60c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release files / dcc_mcp_openusd-0.8.2-py3-none-any.whl

Download URL dcc_mcp_openusd-0.8.2-py3-none-any.whl
Size 56.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8e03a04dbc37c0fa8d19e74d963d8a41bc3a120d29888cadc9077c9b8d7081c4
BLAKE2b-256 checksum
How to use checksums
09e66c5ae7427b36e517139343b2f858c118187c4689826ee7c2f25603bc9478
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.8.2 This release

2 release files

0.8.1

2 release files

0.8.0

2 release files

0.7.0

2 release files

0.6.0

2 release files

0.5.0

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.0

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page