mcpField
K
Katto

Katto

VerifiedFeaturedRemote
katto.techMedia & Design4Updated 2d ago

About Katto

Katto is an MCP server for creators who want to turn long videos into short, vertical clips. It finds and scores moments, reframes footage, adds captions, and supports editing and publishing through tools.

Key features

  1. 01Find and score clip-worthy moments
  2. 02Reframe video to vertical 9:16
  3. 03Add captions and dub clips
  4. 04Edit, trim, and retitle clips
  5. 05Publish or schedule clips to connected platforms

Use cases

  1. 01Make short clips from a podcast episode
  2. 02Create vertical highlights from a Twitch VOD
  3. 03Translate captions or dub a clip
  4. 04Schedule a finished clip for social media

MCP support

Exposes clipping, editing, publishing, feedback, account, and reference tools to MCP clients. Clients can connect to the hosted Streamable HTTP endpoint with OAuth 2.1 or run the local npx server with an API key.

Configuration

Remote servers need no local install. Pick your client, then copy the config or install in one click.

Endpointhttps://mcp.katto.tech/mcp
Copy install command
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.

Packages
npmkatto-mcp0.6.1

Tools

16
ParameterTypeRequiredDescription
urlstringYesPublic video URL to clip.
configobjectNoOptional pre-clip settings.
config.genrestringNoe.g. podcast, gaming, sports, interview
config.clipLengthenumNolt30 | 30_60 | 60_90 | 90_180
config.customPromptstringNo
config.topicsstringNo

Details

From the project README

katto-mcp

npm version npm downloads license MCP Registry

The AI video clipping MCP server. Turn long videos into scored, captioned, vertical 9:16 short clips from any MCP client (Claude, Cursor, Claude Code, ChatGPT, VS Code, and other conformant clients). Drop in a YouTube link, a podcast, or a Twitch VOD and get publish-ready shorts back through natural conversation.

Powered by Katto, an AI video clipper that turns long-form video (podcasts, interviews, streams, webinars) into short-form clips for TikTok, Reels and YouTube Shorts. Katto is a flat-priced, no-credits alternative to tools like OpusClip: the Creator plan's 25-video monthly quota covers videos up to 90 minutes each. API and MCP access is included on every plan, including the free one (2 videos/month), not gated behind a paid or enterprise tier.

What it does

Ask your agent something like "clip the best moments from this podcast and reframe them for TikTok" and Katto will:

  • find the strongest 30 to 90 second moments in a long video and score each clip 0 to 100 on Hook, Flow, Value and Trend,
  • reframe to vertical 9:16 with face tracking, split-screen for two speakers, and stacked layouts for gaming,
  • burn animated captions (auto-captioned in 99 languages via Whisper large-v3; word-by-word timing in 41 of them, sentence-level in the rest) and optionally dub into 105 languages,
  • and hand back publish-ready MP4 files plus SRT caption urls.

Typical uses: repurpose a YouTube video into shorts, turn a podcast episode into clips, cut highlights from a Twitch VOD, or convert a long interview into vertical social posts.

Two ways to connect

Hosted (zero-install, recommended)

Point any OAuth-capable MCP client at the hosted endpoint and sign in with your Katto account. The API key never touches your disk, and you can revoke access anytime:

https://mcp.katto.tech/mcp   (Streamable HTTP, OAuth 2.1)
Local (npx)

For Cursor, CI and scripts. Create an API key at katto.tech/dashboard/api-keys, then add the server to your MCP client config:

{
  "mcpServers": {
    "katto": {
      "command": "npx",
      "args": ["-y", "katto-mcp"],
      "env": { "KATTO_API_KEY": "sk_live_..." }
    }
  }
}

The hosted endpoint above also accepts Authorization: Bearer sk_live_... directly for key-based clients.

Install per client

Claude Code (hosted, OAuth):

claude mcp add --transport http katto https://mcp.katto.tech/mcp

Claude Desktop — Settings → Connectors → Add custom connector → https://mcp.katto.tech/mcp, then sign in. (Or add the npx block above to claude_desktop_config.json.)

Cursor — Settings → MCP → Add → paste the npx JSON block above (uses KATTO_API_KEY).

VS Code (MCP extension) — add the same npx block to your MCP settings, or point it at the hosted URL if your client supports remote OAuth servers.

ChatGPT (Developer mode / connectors) — add a custom connector with URL https://mcp.katto.tech/mcp.

Gemini CLI (extension, hosted, OAuth):

gemini extensions install https://github.com/miracleweasel/katto-mcp

then /mcp auth katto to sign in. The extension (gemini-extension.json + GEMINI.md) points at the hosted endpoint; no key on disk. Manual alternative in ~/.gemini/settings.json: "mcpServers": { "katto": { "httpUrl": "https://mcp.katto.tech/mcp" } }.

Antigravity CLI (agy, Gemini CLI's successor) — add the hosted server to ~/.gemini/config/mcp_config.json: "mcpServers": { "katto": { "serverUrl": "https://mcp.katto.tech/mcp" } }, or run agy plugin import gemini after installing the Gemini CLI extension above.

Tools

29 tools, in five groups: nine for clipping, eight for editing, four for publishing, one for feedback, seven for account and reference.

Clipping:

  • katto_create_clip_job(url | upload_id, config?) clip a long video from a public link (YouTube, Twitch, Kick, Vimeo, Zoom, Google Drive, Dropbox, Loom, LinkedIn, Facebook, Rumble, Dailymotion, Medal.tv, or a direct https link to a video file) or a file uploaded with katto_upload_video. Returns a job id.
  • katto_upload_video(filename, content_type, size) clip a local file: returns a presigned upload url to PUT the file to, then katto_create_clip_job with upload_id.
  • katto_get_job(id) poll until status is completed; clips holds the finished MP4 + caption (SRT) urls.
  • katto_get_clips(id) just the finished clips of a job (MP4 + SRT + title + virality score).
  • katto_get_transcript(id) the job's timestamped transcript segments.
  • katto_list_jobs(limit?, cursor?, status?) your recent jobs, newest first (keyset pagination).
  • katto_cancel_job(id) cancel a running job and refund the monthly video slot.
  • katto_create_clip(id, start_seconds, end_seconds, aspect?, auto_reframe?) a new clip from any time range of the source (3-180 s, up to 10 per video, within 7 days). No quota.
  • katto_more_clips(id, count?) render more clips from the moments Katto scored but did not render. No quota.

Editing (no quota):

  • katto_rerender_clip(id, clip_index, layout_mode?, caption_style?) re-render one clip with a new reframe layout or caption style.
  • katto_dub_clip(id, clip_index, languages) re-render a clip dubbed into one or more of 105 languages.
  • katto_get_rerender(id, rerender_id) poll a re-render for the new versioned clip url.
  • katto_translate_captions(id, clip_index, language) re-render a clip with its captions translated into one of 19 languages (Creator).
  • katto_retitle_clip(id, clip_index, style? | title?) AI-regenerate a clip's title, or save your own.
  • katto_adjust_clip(id, clip_index, start_offset_seconds?, end_offset_seconds?) trim or extend a clip (relative to its original bounds, 3-180 s; extending works within 7 days of the job) and re-render it.
  • katto_add_hook(id, clip_index, text?, position?, duration?) burn a hook over the first seconds; without text, Katto's AI writes one.
  • katto_generate_post_text(id, clip_index, platform?) AI-written title / caption / hashtags per platform, ready for katto_publish_clip. Nothing is posted.

Publishing:

  • katto_list_connected_accounts() which of the 7 platforms are connected in Katto, and whether one needs a reconnect. Call it before publishing.
  • katto_publish_clip(id, clip_index, platform, caption?, schedule_at?, ...) post a clip now or later to a social account connected in the Katto dashboard (YouTube, TikTok, LinkedIn, Instagram, Bluesky, Mastodon, Threads). Posts publicly: clients should confirm with the user first (annotated destructive). Paid plans; scheduling on Creator.
  • katto_list_scheduled_posts(status?, limit?, cursor?) the scheduled posts, newest first, with their status and error.
  • katto_cancel_scheduled_post(scheduled_post_id) cancel a post that has not gone out yet (annotated destructive).

Feedback:

  • katto_rate_clip(id, clip_index, rating, reason?) record the user's good/bad verdict on a clip, like the thumbs on the results page.

Account and reference:

  • katto_get_usage() your plan and remaining monthly video quota.
  • katto_get_account() the connected account, this key's scopes, and quota.
  • katto_get_brand_kit() your saved brand kits (colors, caption font, layout, watermark).
  • katto_get_webhook_secret() your webhook signing secret and how to verify signed callbacks (returns a secret — treat it like a credential).
  • katto_list_sources() the link sources Katto can clip from, with an example url each.
  • katto_list_clip_lengths() the valid target clip-length buckets.
  • katto_list_caption_styles() the caption-style presets you can pass as caption_style when creating a job or re-rendering a clip.

Jobs draw from your Katto plan's monthly video quota (25 on Creator, 10 on Solo, 2 on Free), with source videos up to 90, 60 and 30 minutes respectively. The underlying REST API also supports Idempotency-Key safe retries, read-only scoped keys, and signed HMAC webhooks. See the docs.

Env

varrequireddefault
KATTO_API_KEYyes(none)
KATTO_API_URLnohttps://katto.tech

Full docs: katto.tech/docs/api

Security & data

  • Hosted auth is OAuth 2.1 — the API key is never written to your disk, and you can revoke a connected client anytime from your Katto account settings.
  • Local auth uses a scoped sk_live_ key you create yourself; keys can be read-only, and the npx server only sends it to KATTO_API_URL (default katto.tech) over HTTPS.
  • katto_get_webhook_secret returns a signing secret — handle it like any credential; it is only needed to verify inbound webhook signatures.

Also listed on

Public Discovery

Katto – AI video clipping MCP server: turn long videos and podcasts into scored, captioned, reframed 9:16 clips, from any MCP client (Claude, Cursor, ChatGPT). Hosted, OAuth 2.1, no API key on disk.

Intents this server covers: AI video clipping MCP server, MCP server for short-form video, MCP to turn podcasts into clips, video clipping for AI agents (Claude / Cursor / ChatGPT).

Example prompts:

  1. "Clip the best moments from this podcast episode and reframe them for TikTok: https://youtube.com/watch?v=…"
  2. "Check the status of my last clipping job and give me the download links for the finished clips."
  3. "Take clip 2 from that job, dub it into Spanish and re-render it with the Bold caption style."

License

MIT — see LICENSE.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.