Skip to main content

dcc-mcp-katana

DCC-MCP · KATANA

Typed DCC-MCP control for Foundry Katana's node graph. Host work is marshalled through Katana's native event queue and runs on the event-processing thread. The adapter deliberately does not expose arbitrary Python, parameter expressions, render scripts, or shell commands.

Katana typed node-graph workflow

Illustrative workflow generated with OpenAI ImageGen from the retained source in docs/images/sources; it is not a Katana screenshot or host-validation artifact.

Install in Katana's Python environment

See the canonical Install and upgrade runbook for supported versions, explicit host/Python overrides, status, verification, rollback, upgrade, and receipt-driven uninstall.

python -m pip install dcc-mcp-katana
dcc-mcp-katana install --dry-run --json
dcc-mcp-katana install --yes --json

The installer writes an adapter-owned launcher that preserves the existing KATANA_RESOURCES entries; it does not modify shell profiles or registry keys. Run the machine-executable launcher returned in next_steps, then check the installation:

dcc-mcp-katana doctor --json
dcc-mcp-katana verify --json
dcc-mcp-cli load-skill katana-nodegraph --dcc-type katana

Each instance uses an OS-assigned port and registers with DCC-MCP discovery. Agents should use the stable local gateway at http://127.0.0.1:9765/mcp; DCC_MCP_KATANA_PORT is only for a deliberately fixed direct endpoint.

Typed tools

Diagnostics and inspection:

  • get_status
  • inspect_nodegraph
  • list_nodes
  • get_node
  • get_parameter

Node authoring:

  • create_node
  • rename_node
  • delete_nodes
  • set_node_position
  • select_nodes
  • set_parameter_value

Graph and project control:

  • add_port
  • remove_port
  • connect_ports
  • disconnect_ports
  • set_timeline
  • save_project

list_nodes is paginated and capped at 1,000 results. Selection and deletion are capped at 100 nodes. Parameter writes accept only JSON strings, booleans, or finite numbers. Deletion and port removal require confirm=true.

Safe project output

save_project accepts only absolute .katana paths inside DCC_MCP_KATANA_ALLOWED_ROOTS. The variable uses the platform path separator and defaults to the current user's home directory when unset. Existing files require overwrite=true; missing parent directories require create_parents=true. A successful result includes the file size and SHA-256.

Main-thread and timeout contract

At most 32 host calls may be pending. A timeout before Katana starts an operation cancels that operation. A timeout after execution starts reports an unknown final host outcome, so callers must inspect the graph before retrying a non-idempotent operation. Tool schemas carry main-thread affinity and bounded timeouts through the shared HostExecutionBridge.

Real-host smoke test

Open a disposable Katana project, configure an existing writable directory in both DCC_MCP_KATANA_ALLOWED_ROOTS and DCC_MCP_KATANA_SMOKE_ROOT, then run:

python tools/live_katana_smoke.py

The smoke test uses dcc-mcp-cli for discovery, readiness, skill loading, and typed calls. It creates a PrimitiveCreate/Merge graph, adds and connects ports, changes a typed parameter and timeline, saves a .katana file, and prints its byte count and SHA-256. Set DCC_MCP_KATANA_SMOKE_CLEANUP=1 only if the two generated nodes should be deleted after evidence is collected.

The repository's automated tests use a contract-compatible fake Katana API; they are not represented as real-host evidence. A production release should retain the real Katana version, typed CLI transcript, project hash, and visual node-graph evidence.

Development

python -m pip install -e ".[dev]"
python -m pytest -q
python -m ruff check src tests tools
python -m ruff format --check src tests tools
python tools/lint_skills.py
python -m build
python -m twine check dist/*

Agent workflows should use dcc-mcp-cli search, describe, and call rather than bypassing typed tools. If a tool is not visible, load the progressive katana-nodegraph skill first.

Metadata

Release files for dcc-mcp-katana 0.5.0

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-katana 0.5.0
File Size Uploaded
dcc_mcp_katana-0.5.0.tar.gz 36.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for dcc-mcp-katana 0.5.0
File Interpreter ABI Platform
dcc_mcp_katana-0.5.0-py3-none-any.whl Python 3 none any Details

Total release size: 71.6 kB

Release files / dcc_mcp_katana-0.5.0.tar.gz

Download URL dcc_mcp_katana-0.5.0.tar.gz
Size 36.3 kB
Tags Source
SHA-256 checksum
How to use checksums
bc008cf8c545cb87f519ea4fadfe09055c3aebb5a0132e63b47c41e00a6512cc
BLAKE2b-256 checksum
How to use checksums
a71ee06c086f9a682bcf7157e8184dbace8e2e85e1e008d7c62e9d2c66fc1e7b
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_katana-0.5.0-py3-none-any.whl

Download URL dcc_mcp_katana-0.5.0-py3-none-any.whl
Size 35.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5f3b3f5d9dbe215b52610a8d9b717cec75d149d16f56dbb51e2fe92bd8022fd2
BLAKE2b-256 checksum
How to use checksums
004a97501745ee4ee1e4b3bc3fdc195ab8a850bbad59754cdd98803b5999be15
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

0.5.1

2 release files

This release

0.5.0 This release

2 release files

0.4.0

2 release files

0.3.0

2 release files

0.2.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