Setup
Windsurf reads MCP servers from ~/.codeium/windsurf/mcp_config.json (or via Windsurf Settings → MCP Servers → Add server). Because AVCLabs Media MCP speaks standard stdio MCP, the config is identical to Claude Code's:
{
"mcpServers": {
"media-mcp": {
"command": "npx",
"args": [
"-y",
"-p",
"@avclabs.ai/media-mcp@latest",
"media-mcp"
],
"env": {
"API_KEY": "your-api-key"
}
}
}
}Requires Node.js ≥ 18. Create an API key in the dashboard — free quota, no credit card.
What Cascade can do with it
| Tool | What it does |
|---|---|
create_task | Submit async video enhancement (upscaling, denoise, quality) |
get_task_status | Poll progress; returns the output video URL on completion |
enhance_video_sync | Sync enhancement for short clips (45s truncation) |
enhance_image_sync | Sync image enhancement and 1–4x upscaling |
colorize_image_sync | Colorize black-and-white photos |
denoise_image_sync | Remove image noise and grain |
get_image_task_status | Poll image task progress; returns the output image URL |
sam3_predict | SAM3 segmentation from a text prompt → masks, boxes, scores |
get_sam3_task_status | Poll SAM3 task progress; returns the result URL |
Per-capability packages (video, image, SAM3) are coming soon — installing only the one you need keeps Cascade's tool context smaller and its tool selection more accurate.
Example prompts
- "Enhance ./assets/intro.mp4 to 1080p, then update index.html to use the new file"
- "Colorize ./assets/archive-portrait.jpg and save it next to the original"
- "Segment all UI elements in ./mockup.png and list their bounding boxes"
Because Cascade can chain steps, a single instruction can enhance a video and then wire the output path into your code — the part that normally requires a second manual pass.
