Skip to main content

dcc-mcp-server-bin — PyPI distribution blueprint

Status: blueprint — packaging files are wired but no PyPI release has shipped yet. Tracked in issue #1002 (deliverable 3 of RFC #998 Addendum A.7).

This directory packages the crates/dcc-mcp-server Rust binary as a platform-specific binary-only PyPI wheel, following the same pattern as ruff, uv, cmake, and pyright. The result is a single pip install dcc-mcp-server that drops the gateway / sidecar / translate CLI onto PATH for Python 3.7+ regardless of which DCC the user runs.

Why a separate PyPI package?

dcc-mcp-core is a PyO3 wheel — its _core.so is loaded into the host Python interpreter (mayapy / blender-python / hython). The sidecar binary, by contrast, is meant to run as its own OS process; bundling it into dcc-mcp-core would couple two artefacts with very different release cadences and ABI matrices. Splitting them is the standard pattern.

Package Distributes Audience
dcc-mcp-core (existing) PyO3 wheel (_core.so + Python facade) Skill authors, plugin/addon code running inside a DCC interpreter
dcc-mcp-server (this dir) platform-specific Python 3.7+ binary wheels Operators, sidecar spawners, anyone who wants a standalone gateway
dcc-mcp-<dcc> (each repo) pure-Python plugin/addon glue DCC plugin loaders (userSetup.py, addon register(), …)

Layout

pkg/dcc-mcp-server-bin/
├── pyproject.toml              ← maturin config, bindings = "bin"
├── python/
│   └── dcc_mcp_server/
│       └── __init__.py         ← binary_path() helper for subprocess spawn
└── README.md                   ← this file

The Rust source is not duplicated here — pyproject.toml sets manifest-path = "../../crates/dcc-mcp-server/Cargo.toml" so maturin builds the existing workspace crate.

Local build

# Build a wheel for the current platform / Python
cd pkg/dcc-mcp-server-bin/
vx pip install maturin
vx maturin build --release

# Resulting wheel lands in ../../target/wheels/dcc_mcp_server-*.whl
vx pip install ../../target/wheels/dcc_mcp_server-*.whl
dcc-mcp-server --help

The wheel uses maturin bindings = "bin", so it does not load a Python extension module and has no CPython ABI dependency. Its metadata deliberately declares Requires-Python: >=3.7 so embedded Python 3.7 hosts such as Maya 2022 can install it directly.

Cross-platform CI release

Wheels are built by the build-binaries job in .github/workflows/release.yml (there is no separate server-binary workflow) and published to PyPI by the publish-server-pypi job.

OS Arch Wheel platform tag
manylinux2014 x86_64 manylinux_2_17_x86_64
Windows x86_64 win_amd64
macOS universal2 macosx_10_12_universal2

The wheels are retagged to py3-none-<platform> by scripts/release/server_wheel_tags.py, so a single wheel serves every supported Python version. Linux wheels are deliberately built for manylinux2014 rather than a newer baseline so older DCC-hosted Python environments such as Maya 2022 can install them.

Both jobs are gated on release-please creating a release. The repository is released as a single release-please package, so the server package ships from the same v<version> tags as the core release — there is no separate dcc-mcp-server tag stream.

Usage from a DCC plugin

# In a Maya plugin / Blender addon, after `pip install dcc-mcp-server`:
import os, subprocess
from dcc_mcp_server import binary_path

_proc = subprocess.Popen([
    str(binary_path()),
    "sidecar",
    "--dcc", "maya",
    "--host-rpc", "commandport://127.0.0.1:6000",
    "--watch-pid", str(os.getpid()),
])

That's the entire plugin → sidecar wiring. Per-DCC HostRpcClient implementations land in their respective adapter repos.

Metadata

Release files for dcc-mcp-server 0.20.39

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

Built distributions (wheels)

Table of built distributions (wheels) for dcc-mcp-server 0.20.39
File Interpreter ABI Platform
dcc_mcp_server-0.20.39-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
dcc_mcp_server-0.20.39-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl Python 3 none Linux glibc 2.17+ x86-64 Details
dcc_mcp_server-0.20.39-py3-none-macosx_10_12_universal2.macosx_10_12_x86_64.macosx_11_0_arm64.whl Python 3 none macOS 10.12+ x86-64, macOS 11.0+ ARM64, macOS 10.12+ universal2 (ARM64, x86-64) Details

Total release size: 78.6 MB

Release files / dcc_mcp_server-0.20.39-py3-none-win_amd64.whl

Download URL dcc_mcp_server-0.20.39-py3-none-win_amd64.whl
Size 19.7 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
2d65ce325ccfa8820774c5c6cebdaf83026022eb2fec72a4a20bdcbee903425d
BLAKE2b-256 checksum
How to use checksums
bd40a736cc80795455c30288e3e95c79a6c4fccde05b788f89a2ecd89207ae1b
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 Oct 1, 2026.

Transparency log

Release files / dcc_mcp_server-0.20.39-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl

Download URL dcc_mcp_server-0.20.39-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Size 20.0 MB
Tags Linux glibc 2.17+ x86-64 Python 3
SHA-256 checksum
How to use checksums
10389eae97ca4366371113e1cfa4d69232f8e00d1ab4699f57aa065d9328fce8
BLAKE2b-256 checksum
How to use checksums
5ee38c0cfd80d59931247bcaa316fc9f0397c80ea9f35535e8a0af3112d3e8d6
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 Oct 1, 2026.

Transparency log

Release files / dcc_mcp_server-0.20.39-py3-none-macosx_10_12_universal2.macosx_10_12_x86_64.macosx_11_0_arm64.whl

Download URL dcc_mcp_server-0.20.39-py3-none-macosx_10_12_universal2.macosx_10_12_x86_64.macosx_11_0_arm64.whl
Size 38.8 MB
Tags Python 3 macOS 10.12+ universal2 (ARM64, x86-64) macOS 10.12+ x86-64 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
df632e0c6eff71f14265e55f5490e6199b37328b18688f31720d228b670938a2
BLAKE2b-256 checksum
How to use checksums
4a186ff75ace687c77a019223bb6ebc564b19f1ef37eb63f8d7f66c5166fbffd
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 Oct 1, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.20.39 This release

3 release files

0.20.9

3 release files

0.20.8

3 release files

0.20.7

3 release files

0.20.6

3 release files

0.20.5

3 release files

0.20.4

3 release files

0.20.3

3 release files

0.20.2

3 release files

0.20.1

3 release files

0.20.0

3 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