clipwright-speed
AI-facing MCP tool that applies a LinearTimeWarp speed change to clips
in an OpenTimelineIO (OTIO) timeline.
What it does
clipwright_set_speed reads an existing OTIO timeline, attaches (or replaces)
a LinearTimeWarp effect on the target clip(s) using the given speed multiplier,
and writes the result to a new OTIO file. The input timeline is never modified
(non-destructive). Applying the same speed twice replaces rather than stacks
the warp (idempotent).
Tool: clipwright_set_speed
| Parameter | Type | Required | Description |
|---|---|---|---|
timeline |
string |
yes | Path to the input .otio timeline file |
output |
string |
yes | Path for the output .otio file (must differ from timeline) |
options.speed |
float |
yes | Playback speed multiplier (0.25–8.0). Values > 1.0 speed up, < 1.0 slow down. |
options.clip_index |
int | null |
no | Zero-based clip index in V1 (gaps excluded). null applies to all clips. |
Speed range
Valid range is 0.25 to 8.0 inclusive. Values outside this range return an
INVALID_INPUT error with a hint.
Idempotency
Applying clipwright_set_speed twice with the same speed on the same clip
results in exactly one LinearTimeWarp effect — no stacking.
Non-destructive
The input timeline file is never modified. All changes go to the output path.
Foreign warps
Pre-existing LinearTimeWarp effects that were not created by
clipwright-speed (i.e., lacking metadata["clipwright"]) are preserved.
MCP Registration Example
{
"mcpServers": {
"clipwright-speed": {
"command": "clipwright-speed"
}
}
}
Or with an explicit Python path:
{
"mcpServers": {
"clipwright-speed": {
"command": "/path/to/.venv/bin/python",
"args": ["-m", "clipwright_speed.server"]
}
}
}
Prerequisites
- Python 3.11+
- opentimelineio 0.18+
- clipwright 0.3.0+ (core package)
License
MIT
Metadata
Release files for clipwright-speed 0.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| clipwright_speed-0.3.0.tar.gz | 7.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| clipwright_speed-0.3.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 17.8 kB
Release files / clipwright_speed-0.3.0.tar.gz
| Download URL | clipwright_speed-0.3.0.tar.gz |
|---|---|
| Size | 7.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
038d1d267807419399e034bfa20e0f3b7eed13c84e0a2a672c072a49987f33c1
|
|
BLAKE2b-256 checksum How to use checksums |
cec68c1e907de33ef3f9857ac68d05db14e84de490e71992046f8c7cf57dcb47
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.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 Jul 25, 2026.
Transparency logRelease files / clipwright_speed-0.3.0-py3-none-any.whl
| Download URL | clipwright_speed-0.3.0-py3-none-any.whl |
|---|---|
| Size | 9.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3f4e7ed7c3589fd3c437e6fdda11555d1950717f83ee907379f6a6212d6bd598
|
|
BLAKE2b-256 checksum How to use checksums |
c61192c59dee9b74380328a3c72e97981bec94cf813fc189bd1b933ca04158cb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.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 Jul 25, 2026.
Transparency log