Connect SendShort once and any assistant — Claude, Cursor, OpenClaw, Hermes, ChatGPT — can import a YouTube link, cut the best moments, caption them and hand back post-ready shorts.
# Add the SendShort connector
npx sendshort-agent connect
# Set your API key
export SENDSHORT_API_KEY=ss_live_•••••
# Check the assistant can see it
sendshort tools:list
# Make your first shorts
sendshort clips:create \
--source "https://youtu.be/xxxxxxxx" \
--clips 5 --ratio 9:16 --captions
Built for automation
Every tool returns structured JSON, so Claude, Cursor or ChatGPT can plan, call and verify a render on its own.
Point it at a YouTube URL or a file and it scores retention, cuts the moments and reframes to 9:16.
Word-level captions at 98%+ accuracy, brand-kit styling, automatic B-roll and zooms on every clip.
One connector, any assistant. Claude, Cursor, OpenClaw, Hermes, ChatGPT and Codex are all tested.
Give the agent a cron heartbeat and it clips new episodes the morning they land — no prompt needed.
The agent calls the exact endpoints your backend can call. No second pipeline, no drift in output.
The agent lists your brand kits, caption templates and connected destinations before it touches a video.
sendshort workspace:list
# Inspect a brand kit
sendshort brandkits:get bk_7Ka2
# Available caption templates
sendshort templates:list
One call imports the source, finds the strongest moments, burns captions and renders every ratio you asked for.
sendshort clips:create \
--source "https://youtu.be/xxxxxxxx" \
--clips 5 \
--ratio 9:16,1:1,16:9 \
--template "brand-kit" \
--language en
Clips land in your SendShort workspace. Download, tweak in the editor, or hand them to your scheduling stack.
sendshort clips:list prj_9fA2
# Download the finished renders
sendshort clips:download prj_9fA2 --all
# Or forward to your scheduler
sendshort clips:export prj_9fA2 --to postiz
From any chat
No timeline, no exports, no file juggling. Describe the shorts you want and the agent runs the whole pipeline — import, clip, caption, reframe, render.
youtube.com/watch?v=…
Import this YouTube video and make 5 shorts.
Done - prj_9fA2. Imported the video and rendered 3 high-retention clips:
SendShort agent: Done — prj_9fA2
00:42 "Hook" 9:16 · captions ✓
03:18 "Story" 9:16 · captions ✓
07:05 "Lesson" 9:16 · captions ✓
2 more rendering, webhook on finish.
Captions burned in · ready to download or keep editing in SendShort.
I shared this story
0:22
03:18 — Story
go to my website
0:48
14:50 — CTA
proof that it works
0:31
11:22 — Proof
Ask for a different aspect ratio, language, or caption style…
Desktop, Code and the API
Clip inside your editor
Shell-driven automation
Connector for Plus and Team
Chat-app driven workflows
Runs local, posts on a schedule
Raw → post-ready
Same footage, reframed to 9:16, cut to the moment that holds attention, captioned word by word and styled to your brand kit — no timeline, no export settings.
Every tool call returns structured JSON your agent can parse
A bundled SKILL.md documents every command and argument
Discovery lets the agent read brand kits before rendering
Long jobs are async with webhooks — no timeouts mid-render
Model agnostic: Claude, GPT, Gemini or open-source LLMs
Human in the loop by default — nothing publishes without you
---
name: sendshort
description: Turn long videos into
captioned shorts from chat
metadata:
requirements:
env:
- SENDSHORT_API_KEY
---
# Available tools
- sendshort workspace:list
- sendshort templates:list
- sendshort clips:create
- sendshort clips:list <project>
- sendshort clips:download <project>
The same surface over MCP or the CLI. Every call maps to a REST endpoint on the API.
Tool
Description
workspace:list
List workspaces, brand kits and destinations
templates:list
Fetch available caption templates
clips:create
Import a source and render shorts
clips:list <project>
List clips and their render status
clips:download <project>
Download finished renders
clips:export <project>
Send clips to a connected scheduler
translate <clip>
Dub and caption into 100+ languages
API and AI Agent are included on Business - everything else starts free



