MCP.Market

Clipkit MCP server

online · 100% uptime
by clipkit.dev·dev.clipkit/clipkit·v1.0.0·17 stars

MCP server for Clipkit — gives AI agents a video toolbox via the Clipkit schema.

B72/100grade B
What users say
No reviews yet
Be the first
Safety scan
B72/100

full report

Adoption
Growing

17 stars

Reviews

Write one

Nobody has reviewed Clipkit yet.

If you have run it, two minutes of your experience saves the next person an afternoon.

Clipkit tools (15, 4 write)

write = sends, deletes, buys or posts
  • add_elementFree

    Append a single element to an existing project — a TWEAK, e.g. dropping in one more caption or shape. By default it is added at the top level; pass parent_id to add it INTO a group (nested). The element is any valid schema element: video, image, text, shape, audio, group, caption, or particles. To create a composition or add several elements at once, build the JSON and use set_project instead. The new element is validated as part of the project as a whole before being added. Call get_schema(element_type) for the exact per-type fields; unrecognized keys are flagged.

  • create_projectwrite actionFree

    Create a new, blank Clipkit project with the given dimensions and duration, and return its project_id. Defaults: 1920×1080, 10 seconds, 30 fps, output_format "mp4". Call this first when starting a new video. Pass an existing project_id to reset that project to blank; omit it to start a fresh project (note the returned id for subsequent tools).

  • create_promowrite actionFree

    Assemble a designed-looking promo/intro/product/data video from the Clipkit pattern library: give an ordered list of SCENES and the words, and it bakes in the camera, glass, lighting, motion blur, timing, and layout, then returns an editor link. This is a FAST option when a conventional promo structure fits — it is NOT the only way to make a video and NOT a default; for anything specific or original, author the JSON yourself and call set_project (the full creative range). When you do use this, MIX scene types to fit the brief and vary the structure — a video can be a single kinetic headline, three title cards, a showcase montage, or a data explainer; you do NOT need a hero or a cta. Scene types: hero (glass-orb logo reveal: wordmark, tagline?), kinetic (letter-fly headline: text, subtitle?), showcase (a screenshot tilted in 3D: screenshot URL), title (full-frame title card: headline, kicker?, subtitle?), cta (closing card with a glass button: wordmark, tagline?, cta), stats (hero numbers: stats[{label,current,previous?}], title?), bars (bar chart: bars[{label,value,previous?}], title?), ranking (top-N list: items[{label,value}], title?), pie (pie cards: cards[{label,value,total,previous?}], title?). The data scenes (stats/bars/ranking/pie) look best with theme "mux".

  • delete_elementwrite actionFree

    Delete the element with the given id, anywhere in the tree (including one nested inside a group or its mask) — a tweak to an existing composition. (The project must keep at least one top-level element.)

  • describe_projectFree

    Return a compact, human-readable summary of the current project — dimensions, fps, duration, an element breakdown by type, a per-track timeline (paint order low→high), and render-time warnings. Much cheaper to read than get_project's full JSON; use it to orient yourself or sanity-check structure without dumping the whole source.

  • edit_elementFree

    Change fields on the element with the given id by merging in a partial element — only the keys you include change. The id may be any element ANYWHERE in the tree, including one nested inside a group (or its mask). Pass a whole nested value (e.g. a new `keyframe_animations` array) to replace that key; set a key to null to remove it. This is for TWEAKING an existing composition. To create a composition or change many elements at once, edit the JSON and call set_project instead. The result is re-validated before being accepted.

  • get_projectFree

    Return the full current Clipkit source as JSON. Use this to inspect the project, pass it to a render pipeline, or compose follow-up edits.

  • get_schemaFree

    Return the authoritative JSON Schema for a Clipkit Source — exact field names, types, and enums, generated from the protocol. Call with no argument for the full Source schema, or with element_type (e.g. "text", "shape", "particles") for just that element's fields (much smaller). Use this when authoring with set_project / add_element so you never guess a field.

  • ingest_assetFree

    Fetch a remote media URL (image/video/audio) and HOST it on Clipkit, returning a stable asset_url to put in an element's `url`. Use this so the project's media survives — the original link may rot, be private, or block hotlinking. Anonymous projects allow up to 5 hosted assets / 100 MB total / 50 MB per file; when the limit is hit, tell the user to open the project (open_in_editor) and sign in to add more. Requires project_id.

  • load_projectFree

    Import a previously shared project as the current project, by its share id or its editor URL (e.g. https://clipkit.dev/editor?id=…), returning its project_id. Use this to continue working on a project the user opened in the editor or shared earlier — the round-trip for open_in_editor. Pass an existing project_id to load into that project; omit it to load into a new one.

  • open_in_editorFree

    Validate the current project and create a link that opens it in the Clipkit web editor, where the user can preview and refine it. This shares the PROJECT (nothing is rendered — that's render_video). Use after composing or editing. Returns a URL.

  • preview_stillFree

    Render a single frame of the current project to a PNG and return it as an image you can look at. This is how you check your work — in chat there is no other way to see what a composition actually looks like. Use it liberally: after composing, after edits, and at different times to inspect motion. Stills are FREE (credits are only spent by render_video). Pass `time` (seconds) to choose the frame; defaults to 0.

  • read_docsFree

    Return a canonical Clipkit doc as text. topic "card" = the ~8KB compact authoring card — the recommended context for authoring; "pattern-data-viz" / "pattern-cinematic-ui" / "pattern-ui-screencast" = ~4-5KB archetype pattern cards (proven idioms: count-ups and bar rows; product hero shots with camera rigs; faked app UI with typing/cursor/clicks) — load ONE alongside the card when the brief matches its archetype; "agents" = the full authoring guide (fetch only when the card doesn't cover a need); "protocol" = the formal field spec; "brand" = brand reference. (Same docs offered as MCP resources, exposed as a tool so you can read them directly — resources are not always model-readable.)

  • set_projectFree

    Replace the entire project with the given source JSON, returning its project_id. This is the PRIMARY way to build: use it to create a composition or to add/change many elements at once. (To tweak a single element in an existing project, use edit_element / add_element / delete_element instead.) REVISION RULE: if you are iterating on a video that already exists in this conversation — the user asked for changes, you are fixing your own work — you MUST pass its project_id so the project is updated in place and keeps one editor link and its version history. Omitting project_id creates a NEW, unrelated project and strands the old one; only omit for a genuinely different video. The input is validated against the @clipkit/protocol before being accepted; invalid inputs return an error. Shape: { width, height, duration, frame_rate, output_format, background_color?, fonts?, camera?, lights?, elements:[…] }; every element has a `type` plus base fields (id, x, y, width, height, time, duration, track, opacity, rotation, animations, keyframe_animations) and type-specific fields. For exact field names + types call get_schema (optionally with an element_type) — the runtime ignores unrecognized keys, and this tool flags any it does not recognize.

  • validate_projectwrite actionFree

    Run the @clipkit/protocol validator against the current project AND surface render-time warnings even when the JSON is valid — things that pass the schema but the runtime will silently drop or clip: emoji / non-ASCII text (the runtime font atlas is ASCII-only), elements that run past the composition end, a missing top-level duration. Run it before you share or render the project. For a fuller timeline read-back, use describe_project.

Public scan report

scanner v0.1.9 · 2026-09-25 · same rubric, same numbers if you re-run it

1 high
  • –Code scanremote-only server, no package to scann/a
  • Live reliabilityremote reachable in 1992ms20/20
  • Tool poisoning15 tool descriptions checked15/15
  • Auth qualityopen endpoint exposes 4 write-action tools with no auth3/15
  • Maintenancelast push 45 days ago12/15
  • Maintainer identitynamespace and repository owner differ4/10

Findings (1)

  • highWrite-action tools reachable without authenticationauth.open-write
Overall 72/100. Components that don't apply are left out of the denominator. Any critical finding is an F.RubricAppeal a findingJSON

How Clipkit compares

Against every graded Media MCP server, from our own scans and uptime checks. Updated after each scan run.

Safety score
72/100
higher than 40% of 1,337 Media servers
Tools
15
the typical Media server has 7
Tools that change things
27%
typical: 4%. Fewer write tools means less an agent can break
Uptime
100%
of our recent checks; the typical remote Media server answers 100%
Response time
636 ms
faster than 24% of 862 Media servers
GitHub stars
17
more than 90% of 715 Media servers

What its tools let an agent do: 7 read · 4 create · 3 change · 1 delete

Install Clipkit in Claude Code, Cursor or VS Code

claude mcp add --transport http clipkit https://www.clipkit.dev/mcp
Add to Cursor

What the publisher says

From the Clipkit repository's README, as published. We do not edit it. Read it on GitHub

ClipKit

The video infra for agents. ClipKit turns a JSON timeline — the open ClipKit Protocol — into rendered video on the GPU. Describe a video as structured data; get an MP4. Built for AI agents and the developers shipping them.

clipkit.dev · Docs · Protocol · Agent quickstarts

https://github.com/user-attachments/assets/ff4b7e9b-2e0a-40f4-a6a1-042e981fc65f

↑ Made with ClipKit. Every frame of this promo was rendered from a ClipKit Protocol document — no editor, no timeline UI, just structured data. ▶ Play if it doesn't load inline.

Quick start

npm install -g @clipkit/cli

clipkit new my-video.json                 # scaffold a Source
clipkit render my-video.json -o out.mp4   # render locally (headless Chrome)

…or from code:

import { render } from '@clipkit/renderer';
import { writeFile } from 'node:fs/promises';

const { buffer } = await render({ source });   // source = a ClipKit Protocol document
await writeFile('out.mp4', buffer);

Local rendering uses your installed Google Chrome (for WebCodecs). For GPU-accelerated and pro-format (ProRes / AV1 / transparent) output, render on the hosted service with clipkit render --cloud.

What's here

A monorepo; each package publishes to npm under the @clipkit scope.

For AI agents

ClipKit ships an MCP server — point your agent at it and it can build, validate, preview, and render ClipKit videos:

npx -y @clipkit/cli mcp        # stdio MCP server

See the agent quickstarts for Claude, Cursor, and more.

License

Apache-2.0 — except @clipkit/runtime, which is under the Business Source License 1.1 and converts to Apache-2.0 four years after each release. In plain terms: use it, embed it, build your own product on it, and render for your own customers — all free. The one thing you can't do is offer a competing hosted ClipKit-rendering service. See LICENSING.md and TRADEMARK.md.

Nothing above is checked by us. What we check is on the safety report.

Clipkit: common questions

Is Clipkit MCP server safe?
Mostly: it is graded B (72/100). Read the Clipkit safety report
How do I install Clipkit?
It runs remotely at www.clipkit.dev. Add it to Claude Code, Cursor, VS Code or Claude Desktop with the snippets above, or call it through the mcp.market gateway without installing anything.
Does Clipkit need an API key?
Not as far as the registry entry and our scan can tell: no credentials are declared or required.
Is Clipkit maintained?
The last commit was 84 days ago (2026-08-12). The latest release is v1.0.0.
Is Clipkit up?
100% of our last 28 checks got an answer. We check remote servers about four times a day.
What can I use instead of Clipkit?
Servers from other publishers that do the same job: Katto MCP server, Remove AI Watermarks MCP server and Openshorts MCP server.
How does Clipkit compare with other Media MCP servers?
safety score 72/100 (higher than 40% of 1,337 Media servers); tools 15 (the typical Media server has 7); tools that change things 27% (typical: 4%. Fewer write tools means less an agent can break). Full comparison.

Alternatives to Clipkit

Same job from other publishers: the closest match first, then the best rated.

  • Katto
    AI video clipping MCP: long videos and podcasts into scored, captioned 9:16 shorts.
    B
  • Remove AI Watermarks
    Identify and remove AI watermarks and provenance metadata from your own images and video.
    A
  • Openshorts
    Turn long videos into viral vertical shorts and publish them to TikTok, Instagram and YouTube.
    A
  • FFmpeg
    Trim, convert, resize, compress, and remix audio and video.
    A
  • Kinocut
    Guardrailed video editing for AI agents: FFmpeg, captions, effects, Hyperframes, and receipts.
    B