katto-mcpSAFE
Katto's official MCP server for AI video clipping — turn long videos & podcasts into scored, captioned 9:16 clips from Claude, Cursor or ChatGPT.
Overview
From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.
[](https://www.npmjs.com/package/katto-mcp) [](https://www.npmjs.com/package/katto-mcp) [](./LICENSE) [](https://registry.modelcontextprotocol.io)
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 19 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 ve
23d257e5c7d0OBSERVED · 2026-10-13Connect
Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control. Replace the environment placeholders with a token scoped to the least it needs.
claude mcp add katto-mcp --env KATTO_API_KEY=${KATTO_API_KEY} -- npx -y [email protected]Exposed tools (16)
15 read · 1 write · 0 destructive.
| Tool | Risk | Description |
|---|---|---|
katto_cancel_job | read | Cancel a still-running job (queued/processing) and refund the monthly video slot. |
katto_create_clip_job | write | Submit a long video (YouTube, Twitch, Vimeo, Rumble, Zoom, Dailymotion) to Katto. Returns a job id; |
katto_dub_clip | read | Re-render one finished clip dubbed into one or more of 19 languages (en, es, fr, it, pt, hi, ja, zh, de, ko, nl, pl, ru, tr, id, vi, th, uk, ar). Does |
katto_get_account | read | Get the account behind this key: plan, this key |
katto_get_brand_kit | read | Get your saved brand kits (colors, caption font and position, default layout, watermark url). |
katto_get_clips | read | Convenience: fetch just the finished clips of a job (9:16 MP4 urls + caption SRT urls). |
katto_get_job | read | Get the status and clips of a Katto job by id. When status is |
katto_get_rerender | read | Poll a re-render started by katto_rerender_clip or katto_dub_clip. Returns { status, clip_url, captions_url, dub_urls } — dub_urls is { lang: url } and is where a DUB lands (clip_url stays the undubbed re-render), null otherwise. |
katto_get_transcript | read | Get the compact transcript of a completed job as timestamped segments |
katto_get_usage | read | Get your current plan and monthly video quota: { plan, videos_used, videos_limit, videos_remaining }. |
katto_get_webhook_secret | read | Get your webhook signing secret and how to verify Katto |
katto_list_caption_styles | read | List the valid caption_style preset names for katto_rerender_clip (e.g. |
katto_list_clip_lengths | read | List the valid values for the optional config.clipLength on katto_create_clip_job (target clip |
katto_list_jobs | read | List your recent Katto jobs, newest first. Paginate with |
katto_list_sources | read | List the video platforms Katto can clip from, with an example URL for each. Use this to confirm a |
katto_rerender_clip | read | Re-render one finished clip with a new reframe layout and/or caption style. Does NOT use video quota. |
Trust audit
SAFEgrade B · trust 89/100 Nothing in the source contradicts what it says it does. Grade A is reserved for packages that have also passed the behavioural sandbox.
| Layer | What it checks | Result |
|---|---|---|
| L0 | Provenance & inventory | PASS |
| L1 | Static analysis of the code | PASS |
| L2 | Instruction surface (what it tells the agent) | PASS |
| L3 | Class-specific surface | PASS |
| L4 | Behavioural (sandbox) | SKIPPED |
What the source does
- Filesystem
- none-observed
- Network
- declared (1 observation(s))
- Shell
- none-observed
- Dependencies
- not all pinned
- Secrets in source
- none-found
Findings (2)
sudo mv mcp-publisher /usr/local/bin/
@modelcontextprotocol/sdk
Gates applied: no_behavioural_pass.
23d257e5c7d0full audit observations/trust-audit/mcp-server/miracleweasel__katto-mcp.json · Report an issue / request a re-scanAudit history
Every audit this server has had. A grade with a past is a grade somebody is still checking.
| Date | Source | Verdict | Grade | Score | Change |
|---|---|---|---|---|---|
| 2026-10-13 | 23d257e5c7d0 | SAFE | B | 89 | first audit |
Questions
What is the katto-mcp MCP server?
Katto's official MCP server for AI video clipping — turn long videos & podcasts into scored, captioned 9:16 clips from Claude, Cursor or ChatGPT.
What tools does katto-mcp expose?
16 in total: 15 read-only, 1 that write, and 0 that can delete or overwrite. Every one is listed on this page with its risk.
Is katto-mcp safe to connect to an agent?
The audit found nothing in the source that contradicts what it says it does, and graded it B (89/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean server reads B.
What credentials does katto-mcp need?
It reads KATTO_API_KEY from the environment. Give it a token scoped to the least it needs — an agent that can be talked into calling a tool can be talked into calling it with your credentials.
How does katto-mcp run?
It speaks stdio, so it runs as a local process your client starts. It is published on npm as katto-mcp at 0.5.9.
How current is this page?
The grade is for one exact copy of the source (23d257e5c7d0), read on 2026-10-13. The repository is watched and re-audited when it changes.