Product videos from a chat agent: dry run first, then submit

Higgsfield added slash commands in ChatGPT. When an agent makes product videos on Sume's hosted MCP, preview with dry_run, then submit with a key.

5 min readSume
All posts

When a chat agent makes product videos through Sume's hosted MCP server, have it call the paid tool with dry_run=true first, read the estimate, then repeat the call without it and with a fresh idempotency_key. Higgsfield's changelog says its ChatGPT extension (2026-09-30) offers slash commands /effects, /product, and /genjutsu. Sume has no slash-command layer; the agent calls MCP tools instead.

Tool and gate facts are from Sume's MCP tools and gates page, read 2026-10-02; the Higgsfield line is from its changelog.

What does the agent call?

generate_video creates the job (it replaced the retired video-router_create alias), then jobs_wait and jobs_result return the output. tools_list and tools_schema tell the agent the live contract, and the docs say not to assume parity with the HTTP API. To connect a ChatGPT workspace to a remote server, see How to add an MCP server to ChatGPT.

Which safety gates apply?

Every write and paid tool requires an idempotency_key, which the docs call a transport and dedup key, not human approval. dry_run=true previews admission and cost without submitting. max_spend_usd is enforced only when provided. Under OAuth, paid tools stay hidden until the session has mcp:write; there is no separate paid scope.

Gates from Sume's MCP tools and gates docs, read 2026-10-02.
GateRequired?Meaning
idempotency_keyYes, on write and paid toolsDedup key, not approval
dry_run=trueOptionalCost and admission preview only
max_spend_usdOptionalCap, only when you pass it
mcp:write scopeFor OAuth sessionsNeeded to see paid tools

What should I tell the agent?

Put the order in its instructions: tools_schema for generate_video, a dry run, then a submit only after the user confirms the spend. The docs' own playbook for a paid avatar create uses the same order. Tell it to reuse the same idempotency_key on retries and never to resubmit a paid create after a timeout.

How long does a wait last?

A jobs_wait call can hold for up to 55 seconds, so the client's timeout must exceed that; MCP tool call timeouts on long video jobs covers the slicing pattern.

Treat the dry run as part of the conversation: the agent shows the estimate, the user says yes or no, and only then does the paid call go out. Log the idempotency key with the user's confirmation, so a retry after a dropped connection reuses the same key. If the agent cannot see paid tools, check whether the session has write scope before assuming the tool is missing.

Sources

Related posts

More in Integrations

All Integrations posts

Written by Sume