For AI agents · Claude Code · Codex · OpenClaw

SwiftyClip is the agent-native video clipper

Nine MCP tools. Zero cloud uploads. A single prompt in Claude Code can ingest a 60-minute podcast, score the top 5 clips, render them with captions, and schedule them to TikTok — in under 15 minutes on M2 Pro.

Model Context Protocol

Standard JSON-RPC 2.0 over stdio. Compatible with every MCP client.

Per-token allowlists

Users can restrict which tools a given agent session can call. Configured in Settings → Agents.

Loopback-only bridge

The TCP bridge binds to 127.0.0.1. The CLI never calls out to the internet.

Quickstart

Install SwiftyClip. Run the server:

$ swiftyclip mcp

Add it to your Claude Desktop config:

{
  "mcpServers": {
    "swiftyclip": {
      "command": "swiftyclip",
      "args": ["mcp"]
    }
  }
}

Then use it like any other tool in the agentic workflow guide.

The 9 tools

clip.ingestImport a video file and start a new project.
{ "path": "~/Movies/episode.mp4" }
clip.listProjectsList all projects currently in the library.
{}
clip.listSegmentsList all segments for a given project.
{ "projectId": "..." }
clip.transcribeRun on-device transcription on a project.
{ "projectId": "..." }
clip.analyzeRun the content analysis pipeline.
{ "projectId": "..." }
clip.scoreSegmentsRank segments by virality score.
{ "projectId": "...", "targetCount": 10 }
clip.renderRender a segment to MP4 with captions.
{ "segmentId": "..." }
clip.exportToDesktopExport a segment to the Desktop folder.
{ "segmentId": "..." }
clip.scheduleSchedule a clip for posting on a platform.
{ "segmentId": "...", "platform": "tiktok", "scheduledAt": "2026-04-25T09:00:00Z" }

Full request/response examples are in /docs/mcp.

One prompt. A week of shorts.

From the agentic-workflow guide — paste into Claude Code:

Use swiftyclip_mcp to process ~/Movies/episode_14.mp4.
Find the top 5 clips that are 45-75 seconds about building an
AI startup. Render them with the "Bold & Punchy" caption style
and save to ~/Desktop/NewClips/. Name them clip-1..5.mp4.

Claude calls clip.ingest clip.analyzeclip.scoreSegments clip.render 5 times. You don't touch the app.