Fluxcut
Start

FOR AGENTS

Connect your agent

Your agent can make Fluxcut videos for you, and a second agent can review them. It connects to Fluxcut's MCP server with a key you make, and acts as you: your projects, your budget. The same rules hold as in the app — an approval binds to the exact content, checks run before every gate, and escalations and publishing wait for you.

1. Make a key

Signed in, open Settings → Agent keys, name the key after the agent and pick its role. The key starts fcx_ and is shown once, beside one block to paste into your terminal that does all of step 2 and step 3 for the agent you pick, the key already in it. Lost the key? Replace it there: a new key, same name and role, and the old one stops working. Keep it in an environment variable, not in a file you share:

export FLUXCUT_KEY=fcx_…
makerCreates projects, fills footage, edits the brief, timeline and lines, sends back. Cannot approve or publish.
reviewerReads every gate's review packet, approves with a one-line reason or sends back. Cannot create or edit.
ownerEverything you can do in the app — except clearing an escalation, which always waits for you.

On the New video form, choose Mode: Agent, then how many agents (change it later from the project's Mode button); a project your agent creates is an Agent project, its count set by create_project(mode=…). This page is for agents you run on your computer, free on our side; to have Fluxcut's own Grok agents make it instead, choose On Fluxcut on the form.

Single agentOne maker key. The agent builds; you approve every gate in the app. No reviewer key may answer on the project.
Dual agentA maker key and a reviewer key, two agents. The maker builds; the reviewer approves or sends back the gates you allow.

In dual mode the Agents button also sets which gates the reviewer may approve. By default it may approve every gate — brief, footage, timeline, script, thumbnail, voiceover and music — except the final video, and only you publish.

2. Connect

The server is https://www.fluxcut.dev/mcp (streamable HTTP), with the key as a bearer token.

Claude Codetested

  1. Add the server

    claude mcp add --transport http fluxcut https://www.fluxcut.dev/mcp \
      --header "Authorization: Bearer $FLUXCUT_KEY"
  2. Add the skill

    mkdir -p ~/.claude/skills/fluxcut-agent && cd ~/.claude/skills/fluxcut-agent
    curl -fsSLO https://www.fluxcut.dev/agents/v28/fluxcut-agent/SKILL.md
    curl -fsSL https://raw.githubusercontent.com/Flux-AI-Agent/fluxcut-checksums/main/SHA256SUMS \
      | awk -v h="$(shasum -a 256 SKILL.md | cut -d' ' -f1)" -v f="v28/fluxcut-agent/SKILL.md" '$1==h && $2==f {ok=1} END {exit !ok}' \
      && echo checked || echo "CHECK FAILED: delete SKILL.md"
  3. For a reviewer agent, add its skill

    mkdir -p ~/.claude/skills/fluxcut-reviewer && cd ~/.claude/skills/fluxcut-reviewer
    curl -fsSLO https://www.fluxcut.dev/agents/v28/fluxcut-reviewer/SKILL.md
    curl -fsSL https://raw.githubusercontent.com/Flux-AI-Agent/fluxcut-checksums/main/SHA256SUMS \
      | awk -v h="$(shasum -a 256 SKILL.md | cut -d' ' -f1)" -v f="v28/fluxcut-reviewer/SKILL.md" '$1==h && $2==f {ok=1} END {exit !ok}' \
      && echo checked || echo "CHECK FAILED: delete SKILL.md"
  4. Check

    claude mcp list     # fluxcut: … ✔ Connected
  5. Run unattended

    claude -p "Use the fluxcut-agent skill. …" --allowedTools "mcp__fluxcut" "Bash"

The header is stored as given, so the key itself ends up in Claude Code's config. Bash lets the agent download, check and run fluxcut-capture to film; leave it out if you upload the footage yourself, and for a reviewer.

Codextested

  1. Add the server

    codex mcp add fluxcut --url https://www.fluxcut.dev/mcp --bearer-token-env-var FLUXCUT_KEY
  2. Add the playbook

    curl -fsSLO https://www.fluxcut.dev/agents/v28/AGENTS.md     # in the folder you run codex from
    curl -fsSL https://raw.githubusercontent.com/Flux-AI-Agent/fluxcut-checksums/main/SHA256SUMS \
      | awk -v h="$(shasum -a 256 AGENTS.md | cut -d' ' -f1)" -v f="v28/AGENTS.md" '$1==h && $2==f {ok=1} END {exit !ok}' \
      && echo checked || echo "CHECK FAILED: delete AGENTS.md"
  3. Check

    codex mcp list
  4. Run unattended

    codex exec -c 'mcp_servers.fluxcut.default_tools_approval_mode="approve"' "Follow AGENTS.md. …"

Codex reads the key from FLUXCUT_KEY when it starts, so the key never lands in ~/.codex/config.toml. Interactive Codex asks before each tool call; codex exec refuses them unless the server's tools are approved as above.

Grok CLItested

  1. Add the server

    grok mcp add fluxcut https://www.fluxcut.dev/mcp --transport http \
      --header 'Authorization: Bearer ${FLUXCUT_KEY}'
  2. Add the skill

    mkdir -p ~/.grok/skills/fluxcut-agent && cd ~/.grok/skills/fluxcut-agent
    curl -fsSLO https://www.fluxcut.dev/agents/v28/fluxcut-agent/SKILL.md
    curl -fsSL https://raw.githubusercontent.com/Flux-AI-Agent/fluxcut-checksums/main/SHA256SUMS \
      | awk -v h="$(shasum -a 256 SKILL.md | cut -d' ' -f1)" -v f="v28/fluxcut-agent/SKILL.md" '$1==h && $2==f {ok=1} END {exit !ok}' \
      && echo checked || echo "CHECK FAILED: delete SKILL.md"
  3. For a reviewer agent, add its skill

    mkdir -p ~/.grok/skills/fluxcut-reviewer && cd ~/.grok/skills/fluxcut-reviewer
    curl -fsSLO https://www.fluxcut.dev/agents/v28/fluxcut-reviewer/SKILL.md
    curl -fsSL https://raw.githubusercontent.com/Flux-AI-Agent/fluxcut-checksums/main/SHA256SUMS \
      | awk -v h="$(shasum -a 256 SKILL.md | cut -d' ' -f1)" -v f="v28/fluxcut-reviewer/SKILL.md" '$1==h && $2==f {ok=1} END {exit !ok}' \
      && echo checked || echo "CHECK FAILED: delete SKILL.md"
  4. Check

    grok mcp doctor     # fluxcut: handshake OK, 14 tools
  5. Run unattended

    grok --prompt-file task.md --permission-mode dontAsk --allow 'MCPTool(fluxcut__*)'

Single quotes keep ${FLUXCUT_KEY} literal; Grok expands it when it starts. Grok CLI 1.0.13 or later. A server in a project's .grok/config.toml is skipped until you trust the folder. Unattended, Grok may end its session early: say in task.md that it is one long session that ends only when the final video waits or on an escalation.

Anything else

Any MCP client that can send an Authorization header works. The server keeps no session, so a plain JSON-RPC POST is enough — useful when an MCP library won't connect through your HTTP proxy:

curl https://www.fluxcut.dev/mcp -H "Authorization: Bearer $FLUXCUT_KEY" \
  -H 'Content-Type: application/json' -H 'Accept: application/json, text/event-stream' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"list_projects","arguments":{}}}'

Not tested yet: Grok through the xAI API's remote MCP tools, Muse, and chat apps. The xAI API calls the server from xAI's side, so it needs the public URL and a key in the request.

3. Give it the playbook

The tools describe their own rules, but the playbooks make a better video: how to write the goal, what a reviewer should refuse at each gate, and how to wait without burning turns.

4. Film your footage

fluxcut-capture films your site as crisp 1080p clips, with a magnifier, a highlight and a camera zoom on what each line talks about, reads your brand colours for the closing card, and uploads the clips with your key. Your agent writes the scene file; the maker playbook says how. It needs only uv. Download it and check it against the checksum on GitHub before the first run:

WHEEL=fluxcut_capture-0.5.4-py3-none-any.whl
curl -fsSLO https://www.fluxcut.dev/agents/$WHEEL
curl -fsSL https://raw.githubusercontent.com/Flux-AI-Agent/fluxcut-checksums/main/SHA256SUMS \
  | awk -v h="$(shasum -a 256 $WHEEL | cut -d' ' -f1)" -v f="$WHEEL" '$1==h && $2==f {ok=1} END {exit !ok}' \
  && echo checked || echo "CHECK FAILED: delete $WHEEL"          # Linux: sha256sum for shasum -a 256
uvx --from ./$WHEEL fluxcut-capture brand https://your.site --logo logo.png   # colour line + real logo
uvx --from ./$WHEEL fluxcut-capture film scenes.json --base https://your.site --out footage
uvx --from ./$WHEEL fluxcut-capture upload --project my-promo --logo logo.png hook=footage/hook.mp4

The first film downloads a headless Chromium (about 100 MB). In a sandbox, allow cdn.playwright.dev and storage.googleapis.com.

Signed-in screens

Fluxcut's own agents film public pages only — they never sign in to your accounts. A screen behind your sign-in can be filmed by your own agent (Grok CLI, Claude Code or Codex) on your computer, signed in as you. Here is all fluxcut-capture login does:

  1. It opens a separate browser window — your Chrome or Edge with a fresh, empty profile. It never reads your everyday browser's passwords, cookies or history.
  2. You sign in there yourself, then close the window. Your agent never sees or types your password.
  3. That window's sign-in (its cookies) is saved on your computer only, in ~/.config/fluxcut-capture/sessions, readable by you alone. It is never uploaded — the upload command refuses it — and any fluxcut-capture command deletes a session older than a day; logout deletes it at once.
  4. film --session plays the scene file your agent wrote in a hidden browser with that sign-in and records the screen. Read the scene file first if you like: it is the steps, in plain JSON. Only the clips are uploaded.

Use a demo account with demo data, and sign out on the site when you are done to end the session there too.

uvx --from ./$WHEEL fluxcut-capture login https://app.your.site     # sign in, close the window
uvx --from ./$WHEEL fluxcut-capture film scenes.json --base https://app.your.site --session app.your.site
uvx --from ./$WHEEL fluxcut-capture logout app.your.site            # then sign out on the site

It uses your Chrome or Edge; with neither, it downloads Chromium once (about 150 MB, no admin rights). An agent in the cloud has no window to open: it gives you the scene file and these commands to run yourself.

5. Ask for a video

Use the fluxcut-agent skill. Make a 30-second promo for <product> (https://your.site):
<who it is for>, <the pain it removes>, <a real number>. Film the footage from the site
with fluxcut-capture.

Made the project in the app already? Point the agent at it by its short name:

Use the fluxcut-agent skill. Work on Fluxcut project <short name>.

Try it free first with backend "fixture": placeholder voice, music and pictures, no spend. For a team, run a reviewer in a second agent — ideally another model — with a reviewer key and the fluxcut-reviewer skill, pointed at the same project.