InstantClips

ai.instantclipsPublished by instantclips.aiOfficial publisherv1.10.1Updated Nov 6, 2026

Create branded vertical video ads from ecommerce product URLs or product photos.

VerifiedStreamable HTTPWeb executableBusiness & CommerceMedia & Design

Overview

AI-generated overview

InstantClips turns an ecommerce product page or photos into a short vertical video ad, letting an assistant import products, draft the plan and render the…

What you can do
  • Import products from a store URL or from photos, and list existing products and brands
  • Read a product's import status, ideas, drafted video direction, settings and credit cost
  • Create or edit brands and products, and attach a product to the right brand
  • Write, edit or redraft the next video's creative direction and settings
  • Generate the video, then poll its render and hand back download and share links
  • Record the user's rating of a finished video and send feedback about the tools
When to use it
Useful when you sell products online and want short vertical ads for TikTok, Instagram Reels or Stories built from a product page or photos, including several hooks for testing. It is not a text-to-video generator and is not meant for cinematic films, presenter scripts or horizontal 4K.
Requirements
A hosted endpoint over Streamable HTTP, or the instantclips-mcp npm package as a local stdio adapter, which needs Node.js 20 or newer. An InstantClips account with credits; sign-in through OAuth when the client supports it, otherwise a bearer token from the account settings, supplied as the Authorization header or the INSTANTCLIPS_TOKEN environment variable.
Before you install
generate_video spends the user's credits, so confirm the direction, settings and cost first; a free account gets watermarked videos. The token gives full access to the account and must be kept out of committed files. Product text and photos come from third parties and should be treated as data, not instructions. Imports and renders are sent to external AI services, and finished videos get a public share page.

Installation

In SourceWeft

  1. Open InstantClips in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/ai.instantclips%2Finstantclips/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "instantclips": {
      "type": "http",
      "url": "https://app.instantclips.ai/mcp"
    }
  }
}

README

InstantClips MCP

English · Español · 简体中文

[M8ven Verified] [mcptry]

InstantClips turns an e-commerce product into short-form vertical video for TikTok, Instagram Reels and Stories. It runs a hosted MCP server, so Claude Code, Codex, Cursor, VS Code, the Claude app, ChatGPT or any other MCP client can do what the web app does: import a product, draft the plan, and generate the video.

This is not a text-to-video generator. InstantClips reads the product page — photos, price, details — and builds the ad from what is actually there. The plan is written first and shown to you; the video follows the plan. That is why it is cheap enough to run across a catalogue, and why the result is the product you sell rather than a guess at it.

Free to start: the welcome credits cover the first video, and there is no card to enter. After that, one-time credit packs, or an Agency membership for anyone running several brands. See pricing.

  • Where it fits. Beside a scheduler (Postiz, Buffer) that posts what comes back. Beside an attribution tool that tells you which hook worked. Instead of an editor when you have a product page and no footage.
  • Not for. Cinematic hero films. A presenter reading your script. Horizontal 4K. Products with no page and no photos.
  • Built for. Shopify sellers, dropshippers, brands and agencies running social for several stores at once.

The product server stays hosted. This repository contains its connection guide, registry metadata, example HTTP client and a small open-source stdio adapter for clients that cannot connect to a remote server directly. The adapter answers initialization, ping and tool discovery from a generated snapshot, then sends authenticated tool calls to the hosted endpoint. The hosted server remains the source of truth; the product implementation is not duplicated here.

Endpoint

Endpointhttps://app.instantclips.ai/mcp
TransportStreamable HTTP, stateless
MethodPOST, JSON-RPC 2.0
AuthSign in when your client asks (OAuth 2.1), or Authorization: Bearer <token> for callers with no browser

Paste one address into your assistant and sign in when it asks. That is the whole setup. The first time it calls, the server sends you to sign in to InstantClips and approve the assistant; there are no keys to copy. Every assistant you approve is listed under Authorized apps in settings, where you can disconnect it.

The connection is to your own account: same brands, products, credits and plan limits as the web app. Signing in creates an account if you do not have one, with credits for the first video.

Opening the endpoint in a browser returns the setup page rather than a protocol error, with one-click install buttons for Cursor and VS Code.

Install

Connect to the hosted endpoint directly whenever your client supports Streamable HTTP; it takes you through sign-in on first use. Use a token and the stdio adapter (under "No browser?" below) only for scripts and automated runners that cannot open a sign-in page.

Any coding agent

Paste this into Claude Code, Codex or any agent that runs commands. It adds InstantClips itself, then tells you how to sign in:

text
Set me up with InstantClips by following the instructions at https://app.instantclips.ai/mcp.md

The instructions it follows are app.instantclips.ai/mcp.md: the commands below, one section per client.

Claude Code

bash
claude mcp add --transport http --scope user instantclips https://app.instantclips.ai/mcp

Then run /mcp inside Claude Code and choose instantclips to sign in. --scope user adds it to every project; without it, Claude Code adds a server only to the folder you run the command in.

Codex

bash
codex mcp add instantclips --url https://app.instantclips.ai/mcp

It adds InstantClips to ~/.codex/config.toml, which the Codex CLI, the Codex IDE extension and the ChatGPT desktop app all read, and opens your browser to sign in. codex mcp login instantclips starts the sign-in again.

Cursor and VS Code

One-click install buttons are on the setup page. They open the app, add InstantClips, and sign you in on first use.

Claude app

  1. In Customize › Connectors, select + › Add custom connector, paste https://app.instantclips.ai/mcp and select Add.
  2. Select Connect and sign in to InstantClips.
  3. In a conversation, turn InstantClips on under + › Connectors.

On a Team or Enterprise plan, an owner adds it first under Organization settings › Connectors, and each member then connects it in Customize › Connectors.

ChatGPT

  1. On chatgpt.com, turn on Developer mode in Settings › Security and login.
  2. Open chatgpt.com/plugins, select + and create an app for https://app.instantclips.ai/mcp with OAuth, then sign in to InstantClips when asked.
  3. In a conversation, choose Developer mode from the + menu and select InstantClips.

On a Business, Enterprise or Edu workspace, an admin creates the app under Workspace settings › Apps › Create and publishes it for the workspace.

In ChatGPT, attach the product photos to the conversation and ask for the video: the plugin takes attachments directly (image_files on create_product_from_images, add_image_files on update_product), so photos need no adapter and no token there.

Menu names are the apps' own as of September 2026. If they have moved, Claude's custom connector guide and OpenAI's developer mode guide have the current ones.

Any other MCP client or agent

OpenClaw, Hermes, or an agent you wrote yourself: point it at the address over Streamable HTTP. The server announces its sign-in flow the standard way, so a client that follows the spec needs nothing else. Anything that cannot open a sign-in page uses a token instead, below.

No browser? Use an access token

Scripts, CI jobs and agents that cannot open a sign-in page authenticate with a long-lived token instead. Mint one at app.instantclips.ai/settings#ai-access. It gives full access to your account, so keep it out of anything you commit.

With a token, the same clients look like this:

bash
# Claude Codeclaude mcp add --transport http --scope user instantclips https://app.instantclips.ai/mcp --header "Authorization: Bearer YOUR_TOKEN"
toml
# Codex, in ~/.codex/config.toml[mcp_servers.instantclips]url = "https://app.instantclips.ai/mcp"http_headers = { Authorization = "Bearer YOUR_TOKEN" }

To keep the token out of the Codex file, swap the header for bearer_token_env_var = "INSTANTCLIPS_TOKEN" and export it in your shell instead. Any other client sends an Authorization: Bearer header. Nothing on the wire is InstantClips-specific. The chat apps always have a browser to sign in with, so they use the steps above rather than a token.

Stdio-only clients and headless runners

The instantclips-mcp npm package is a thin stdio-to-HTTPS adapter. It serves initialization and tool discovery locally for a fast, credential-free cold start, then reads the token from the environment and sends tool calls to InstantClips:

json
{  "mcpServers": {    "instantclips": {      "command": "npx",      "args": ["-y", "instantclips-mcp"],      "env": {        "INSTANTCLIPS_TOKEN": "YOUR_TOKEN"      }    }  }}

For an automated connectivity check, including the live tool names:

bash
INSTANTCLIPS_TOKEN="your-token" npx -y instantclips-mcp --check --json

The token is accepted only through INSTANTCLIPS_TOKEN, never as a command-line argument, so it does not appear in the process list. It is required for tool calls, but not for initialize, ping, or tools/list. Node.js 20 or newer is required.

Photos on this machine: the adapter can upload them itself, so a video can be made from files that never left your laptop. Through the adapter, create_product_from_images takes image_paths (paths to the files, up to 9, 8 MB each) in place of image_urls, and update_product takes add_image_paths. The files are packaged and posted straight to InstantClips as the product's photos — nothing is downloaded from anywhere. Drag the files into a client that hands the assistant their paths (Claude Code, Cursor, VS Code, terminal agents) and say what you want made. Send image_paths on its own: with hosted image_urls in the same call the adapter refuses rather than dropping the URLs; add hosted photos afterwards with update_product.

Starter prompts

Five to begin with. Swap in a link or a product name.

  1. "Make a video ad for this product: [URL]"
  2. "Import every product on this collection page and draft plans for all of them. Don't generate anything yet."
  3. "Show me the plan for [product] and rewrite the hook to lead with the price."
  4. "Make three videos for [URL] with three different hooks, so I can test them."
  5. "Which of my brands is this product for? Then make the video."

Tools

The workflow, in order:

  1. Import — import_product_from_url for a store page, or create_product_from_images when there is no page to read.
  2. Wait for the import — poll get_product until import_status is "imported".
  3. Choose the idea, then read the plan — offer the product's ideas, as the website does. The user's pick, or their own words, goes in update_video_direction's creator_note, which writes the plan; redraft_video_direction with no idea picks one for them. The plan comes back as text for the user to review, and update_video_direction changes anything in it.
  4. Generate — generate_video, passing expected_credit_cost: the cost the user was told, as get_product reported it. A mismatch is refused without charging.
  5. Collect — poll get_video until it is done, then give the user download_url, the video's own page and its public share link.

Another video for the same product is the same flow on that product: editing or redrafting opens the next video's draft, and generate_video with no draft renders another take of the last plan. A generated video itself cannot be changed. Every get_product response carries next_step: what to do now. Once the user has watched a video, rate_video records their verdict; send_feedback sends the team a note about the tools themselves, with the user's OK.

Brands work the same way: list_brands, create_brand, set_product_brand. Every video is drafted in a brand's voice, so an import whose storefront matches no existing brand stops and asks rather than guessing.

Each tool's exact parameters are published by the hosted server. The generated manifest/instantclips-mcp.json snapshot lets stdio clients and registries inspect those same schemas without a credential. Maintainers refresh it with npm run sync:manifest, no token needed, since the hosted server lists its tools without signing in; npm run check:manifest fails, naming what drifted, when the committed snapshot differs from the live server. Run python example.py tools below when you specifically want to print the live schemas over HTTP.

Credits

Importing a product, drafting the plan and editing it are all free. generate_video is the only tool that spends credits, and it requires your explicit go-ahead — the tools report the cost first, and generate_video takes that number back as expected_credit_cost, refusing a launch whose cost has changed. An agent cannot quietly run up a bill. See pricing.

example.py

A dependency-free MCP client — Python 3.9+, standard library only, no pip install. It authenticates with a token, since a script has no browser to sign in with.

bash
export INSTANTCLIPS_TOKEN="your-token"
python example.py tools                 # every tool, with its live input schemapython example.py call list_brands '{}' # call one tool with JSON arguments

tools is the one to run first: it prints the real parameter names and types for every tool, which is what you need before scripting the workflow above.

Links

  • instantclips.ai/automate — what the automation is for: a real result made from a store page, starter prompts, the tools in order, and the rules. It does not repeat the setup; this file and the app's setup page are where that lives.
  • app.instantclips.ai/llms.txt — machine-readable description of the product and the tool sequence
  • Terms · Privacy

Registry

server.json is this server's entry in the official MCP registry, which the other directories ingest from. One ai.instantclips/instantclips entry carries both the hosted endpoint in remotes and the stdio adapter in packages, so a host can choose the transport it supports without creating two identities for the same tool surface.

The npm package's mcpName must exactly match that registry name. The repository link points to the open-source adapter; the hosted product implementation is not in this repository.

The ai.instantclips namespace is the reverse-DNS of the domain, which requires publishing under DNS or HTTP domain auth rather than GitHub auth. Authenticating with GitHub instead would force the entry into io.github.instantstudioai/... and give up the branded namespace.

Publish the npm package first, then re-publish this same registry entry with mcp-publisher publish after bumping its version. Domain authentication keeps the branded ai.instantclips namespace; do not replace it with an io.github.* name. The signing key stays out of the repository — .gitignore covers *.pem, and a committed private key is a published one.

npm is published from GitHub Actions, not from a laptop. Commit the version bump (package.json, server.json, and the pins in test/shim.test.js), then push a tag named for it (git tag v1.7.2 && git push origin main v1.7.2); .github/workflows/publish.yml runs the tests and publishes through npm's trusted publishing, with no npm token and no browser confirmation. The job stops if the tag does not match package.json's version. The package's trusted publisher on npmjs.com names this repository and publish.yml, so renaming the workflow file breaks publishing.

A new version can take several minutes to appear on npm, and the registry refuses an entry whose npm version it cannot find ("version … was not found"; nothing changes). Run the mcp-publisher step once https://registry.npmjs.org/instantclips-mcp/<version> answers.

Log in and publish in one command — the registry token expires five minutes after login — and the domain is verified over HTTP, not DNS: instantclips.ai/.well-known/mcp-registry-auth on the marketing site serves this key's public half (v=MCPv1; k=ed25519; p=…), and there is no TXT record, so login dns fails with "no MCP public key found".

bash
mcp-publisher login http --domain instantclips.ai \  --private-key "$(openssl pkey -in key.pem -text -noout | awk '/priv:/{f=1;next} /pub:/{f=0} f' | tr -d ' :\n')" \  && mcp-publisher publish

test/shim.test.js pins the snapshot's server version and server.json's version; a release moves both.

glama.json is the separate, Glama-specific file that claims the listing there. A server under an organisation rather than a personal account can only be claimed with that file present. It carries ownership only. In Glama's Dockerfile form, use build steps ["npm install --omit=dev"], CMD arguments ["node", "./bin/instantclips-mcp.js"], and any dummy value for the required INSTANTCLIPS_TOKEN placeholder. Glama's initialization and tool-quality checks use the bundled manifest and never transmit that placeholder upstream. Do not put a real account token into a third-party build sandbox.

License

MIT — see LICENSE. The license covers this repository's contents; use of the hosted service is governed by the Terms of Service.

Source: README.md at commit 7574974

Tools

15

list_brands

List the account's brands

The account's brands, the plan's brand limit, and `account`: `credits_remaining`, `top_up_url`, and `watermarked: true` on a free account. Call it before answering `brand_decision_required`, so the user chooses a brand by name.

Takes no parameters.

list_products

List the account's products

The account's products, newest first, including ones made on the website. Use it to find a product_id you don't have, then `get_product`. Carries `account`, as `list_brands` does.

Parameterslimitquerybrand_id

import_product_from_url

Import a product from its page URL

Start a product from its page URL; returns at once, so poll `get_product`. It detects the brand, and an external AI service reads the page into facts and ideas. A store locked to another account is refused and reported to support.

Parametersurlrequiredbrand_id

create_product_from_images

Create a product from photos

Start a product from photos when it has no page (`import_product_from_url` when it does). Photos carry no brand: ask the user which, or pass `brand_id`. An external AI service then reads the photos; poll `get_product`.

Parametersnamerequiredbrand_idimage_urlsdescriptionimage_filescreator_note

get_product

Get a product and its video direction

Read a product: import status, brand decision, photos, the video direction with its settings and `credit_cost`, and its videos. Poll every 20-30 s while it imports or drafts. `next_step` says what to do now.

Parametersproduct_idrequired

create_brand

Create a brand for a product

Create a brand for a product waiting on `brand_decision_required` and attach it; then offer its ideas. Ask the user first: it takes a brand slot. A photos product needs `name` from the user, and the voice, market and keywords they give.

Parametersnamevoicekeywordsproduct_idrequiredtarget_market

set_product_brand

Attach a product to an existing brand

Attach a product waiting on `brand_decision_required` to an existing brand (`list_brands`), once the user confirms it belongs there; then offer its ideas (`get_product`). `replace_identity` rewrites that brand for every product on it.

Parametersbrand_idrequiredproduct_idrequiredreplace_identity

update_brand

Edit a brand's identity

Edit a brand's `name`, `voice`, `target_market` or `keywords` (a new list replaces the old); only the fields you pass change. Future drafts use them; `redraft_video_direction` rewrites a direction already drafted.

Parametersnamevoicebrand_idrequiredkeywordstarget_market

update_product

Edit a product's facts, link and photos

Edit a product's name, description, price and posted `link_url`, and add or remove photos; only the fields you pass change. The direction is drafted from these facts, so `redraft_video_direction` after changing them.

Parametersnamepricelink_urlproduct_idrequireddescriptionadd_image_urlsadd_image_filesremove_image_ids

update_video_direction

Edit the video direction and render settings

Edit the next video's `creative_direction`, its idea (`creator_note`), settings and photos; only the fields you pass change. Settings are parameters, not direction text. A new idea, length or ratio rewrites the direction: poll `get_product`.

Parametersratioproduct_idrequiredresolutioncreator_notetarget_marketduration_secondscreative_directionselected_image_ids

redraft_video_direction

Draft a new creative direction

Draft the next video's direction through an external AI service: with none and no idea yet, from one of the product's ideas we choose; else another take in its format. It overwrites edits: confirm first. Poll `get_product`.

Parametersproduct_idrequired

generate_video

Generate the video (spends credits)

Render the video. SPENDS THE USER'S CREDITS: ask first, with the direction, settings, cost and any watermark, and pass the cost as `expected_credit_cost`. External services render it; it gets a public share page and may send account email.

Parametersproduct_idrequiredexpected_credit_costrequired

get_video

Check a video's render status

Check one video's render. `next_step` says what to tell the user and when to poll again; follow it, since it knows how long this render has run. Mention a watermark only when `watermarked` appears. Done or failed: `launched_with` is its plan.

Parametersvideo_request_idrequired

rate_video

Rate a finished video

Record the user's own verdict on a finished video they have watched: `reaction`, and optional `issues` and `comment` in their words. Never rate for them, and ask at most once. A second call replaces the rating.

Parametersissuescommentreactionrequiredvideo_request_idrequired

send_feedback

Tell the InstantClips team about a problem with these tools

Send the InstantClips team a note about these tools: one that failed or surprised, or something the user wanted that no tool does. Show the user the note and send it only with their OK. Not for support or ratings.

Parametersmessagerequired

Version history

7
  1. v1.10.1LatestNov 6, 2026
  2. v1.10.0Nov 3, 2026
  3. v1.9.0Oct 23, 2026
  4. v1.7.2Oct 9, 2026
  5. v1.7.1Sep 30, 2026
  6. v1.7.0Sep 29, 2026
  7. v1.6.0Sep 16, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts