A short clip finishes while you wait and a long one does not, and forcing every caller through the async path adds a poll loop to jobs that never needed it. Providing both lets the caller choose based on what they are actually submitting. The status tool naming its states explicitly is the practical detail — an agent polling a job needs to know what completion looks like rather than inferring it from the absence of an error. The segmentation tool sits apart from the video work; it is the same vendor's capability rather than part of the same pipeline.
A media processing client with two paths for video enhancement — asynchronous with a status poll, or synchronous blocking — and a separate image segmentation tool.
- create_task submits an enhancement job asynchronously, and get_task_status reports processing, completed or the failure state.
- enhance_video_sync does the same work but blocks until it finishes, for when the caller would rather wait than poll.
- Both upload paths accept two methods, so the source can be provided in whichever form you have it.
- sam3_predict runs SAM3 segmentation on an image and returns the inference result.
API_KEY.
One command plus a key — npm install -g @avclabs.ai/media-mcp, then supply credentials
