Developers / AI

Let your AI run ClipFox

Connect your own assistant — Claude, ChatGPT, Cursor, n8n or Zapier — and ask it to import a video, find the best clips, tweak them and write the posting copy. Every action follows the same ownership, plan limits and rights rules as the app.

2-minute setup

  1. Open Settings → Connect your AI (Creator plan and above) and create a key. Copy it — it's shown once.
  2. Claude Desktop / Claude.ai: Settings → Connectors → Add custom connector. Server URL https://clipfox.lovable.app/mcp, and add the header Authorization: Bearer cfx_live_… (or use the config below).
  3. ChatGPT, Cursor and other MCP clients: add a remote MCP server (Streamable HTTP) with the same URL and Bearer header.
  4. n8n / Zapier: use an HTTP Request node against the REST API with the Bearer header.
{
  "mcpServers": {
    "clipfox": {
      "command": "npx",
      "args": ["mcp-remote", "https://clipfox.lovable.app/mcp", "--header", "Authorization: Bearer cfx_live_YOUR_KEY"]
    }
  }
}

What your AI can do

  • whoami

    Plan, limits and usage

  • import_video_from_link

    Import from Drive, Dropbox, OneDrive or a direct video link (rights confirmation required)

  • list_projects / get_project

    Project status and transcript availability

  • transcribe_project

    Returns a one-click link (runs in your browser)

  • find_clips / list_clips

    AI clip finder with scores and reasons

  • update_clip

    Trim, title, hook, caption style, look

  • generate_publish_kit

    Titles, descriptions, hashtags for 7 platforms + credit line

  • get_render_link / get_export

    Render link and download URL

  • list_campaigns / join_campaign / submit_campaign_post

    Creator Campaigns

  • log_post / get_stats

    Track posts, views and leaderboard rank

  • delete_project

    Permanently delete a project

REST API examples

curl https://clipfox.lovable.app/api/v1/me -H "Authorization: Bearer $CLIPFOX_KEY"

curl -X POST https://clipfox.lovable.app/api/v1/projects \
  -H "Authorization: Bearer $CLIPFOX_KEY" -H "Content-Type: application/json" \
  -d '{"source_url":"https://www.dropbox.com/s/abc/talk.mp4?dl=0","source_type":"own","rights_confirmed":true}'

curl -X POST https://clipfox.lovable.app/api/v1/projects/PROJECT_ID/find-clips \
  -H "Authorization: Bearer $CLIPFOX_KEY" -H "Content-Type: application/json" -d '{"count":5}'

Errors always look like {"error":{"code":"…","message":"…"}}. Full reference: OpenAPI 3.1.

Limits & rules

  • Creator, Agency, Lifetime and pay-as-you-go: 60 requests per minute and 2,000 per day per key; up to 5 keys.
  • Agent plan: 300 requests per minute and 20,000 per day per key; up to 10 keys, plus webhooks.
  • Usage counts toward your plan's exports, transcriptions and daily AI calls, exactly like the app. When the monthly quota is used up, credits are spent automatically; with no credits left the API returns 402 credits_required with a buy_url.
  • No paid plan? Any credit pack unlocks the API and MCP connector on the Free plan.
  • Importing requires rights_confirmed: true — your AI must ask you first. It's recorded as your rights confirmation.
  • Video platform pages (YouTube, TikTok, Twitch, Instagram, X…) can't be imported. Share your own file via Drive or Dropbox.
  • Admin tools are never available through keys. Revoking a key takes effect immediately.

Agent plan and credits

Agent: for AI automations

$89/month or $890/year

  • 500 exports / month
  • 3,000 transcription minutes / month
  • 10 API keys · 300 req/min
  • Webhooks for your automations
  • Priority processing
  • Everything in Agency, 1080p, no watermark
See pricing

Credit packs (pay as you go)

One-time, never expire. Used only after your plan's monthly quota. 1 credit = 1 export, 1 find-clips run or 10 minutes of transcription.

  • Starter: $10 for 50 credits
  • Pro: $25 for 150 credits
  • Bulk: $60 for 400 credits

Webhooks (Agent plan)

Add an https endpoint in Settings → Webhooks and choose events: project.imported, project.transcribed, clips.found, export.ready. Each event is a JSON POST like { id, event, created_at, data }. Failed deliveries are retried 3 times (after 1, 5 and 30 minutes); the last 50 deliveries are shown in Settings.

Every request carries X-ClipFox-Signature: t=<unix seconds>,v1=<hex>, where v1 is HMAC-SHA256 of "<t>.<raw body>" with your endpoint's signing secret (shown once when you add it). Verify it before trusting the payload:

import crypto from "node:crypto";

// rawBody: the exact request body string; header: req.headers["x-clipfox-signature"]
export function verifyClipFox(rawBody, header, secret) {
  const parts = Object.fromEntries(header.split(",").map((p) => p.split("=")));
  const t = Number(parts.t);
  if (!t || Math.abs(Date.now() / 1000 - t) > 300) return false; // 5 min replay window
  const expected = crypto.createHmac("sha256", secret).update(`${t}.${rawBody}`).digest("hex");
  return crypto.timingSafeEqual(Buffer.from(expected), Buffer.from(parts.v1 ?? ""));
}

Why some steps open a link

ClipFox processes video on your own device, so nothing heavy runs on our servers. Transcription and MP4 rendering therefore need your browser: transcribe_project and get_render_link return a link. Open it while signed in and the job starts by itself; your AI can then continue with find_clips or get_export.