MCP sessionsREST API
MCP docs

Add this URL. Allow access. Stay Connected.

The public edets MCP is video only. Happy path: paste https://edets.com/api/mcp, sign in on edets.com, click Allow access. No key in chat. Tokens refresh so restart stays Connected. Revoke anytime at /settings/mcp.

Ad Pack MCP v1

Use Edets OAuth for Ad Packs. Quote, status and outputs are read-only. Creation, planning, checkout and retries are being piloted with approved accounts before broader release.

The seven tools are edets_ad_pack_create, edets_ad_pack_plan, edets_ad_pack_quote, edets_ad_pack_checkout, edets_ad_pack_status, edets_ad_pack_retry, and edets_ad_pack_outputs.

Create returns a saved pack ID while the server prepares references. Send an MCP image, base64 image or public HTTPS image URL; never a local filepath. Reuse idempotency keys when retrying requests.

Ask the customer to approve the exact quote before creating Stripe checkout. All five scene tickets appear after verified payment. Poll status every 3–5 seconds; the server keeps processing when the client disconnects. Download outputs with the same OAuth authorization. A plain API key cannot use Ad Pack tools.

How to connect

Protocol URL https://edets.com/api/mcp. Leave the Authorization header empty. The marketing page at /mcp stays HTML. Do not POST JSON-RPC there.

Cursor · Grok custom connector · Claude
{
  "mcpServers": {
    "edets": {
      "url": "https://edets.com/api/mcp"
    }
  }
}
  1. Paste the URL. Choose OAuth — don't paste a key.
  2. Allow access in the browser. Scopes are human-readable.
  3. Connected. Restart keeps the session. Revoke in Settings if you want the next call to 401.
CI / fallback only — Bearer key

Clients without OAuth can still send Authorization: Bearer edets_live_… minted at /api/keys. Prefix is edets_live_. The secret is shown once. Never the ad story or chat happy path.

{
  "mcpServers": {
    "edets": {
      "url": "https://edets.com/api/mcp",
      "headers": {
        "Authorization": "Bearer edets_live_…"
      }
    }
  }
}

Prepaid seconds

Currency is prepaid seconds of clip time. One generated second burns one second. This is not takes and not casino chips. Call Account before you generate. Failed jobs return seconds to the pool. Buy more at /api/seconds.

edets Max vs edets Motion

quality: "max" is edets Max — higher fidelity. On Max, size=720 is 768P (short edge 768). quality: "motion" is edets Motion — faster motion path; size=720 is 720P. Public sizes are 480 and 720 only. Aspect includes landscape 16:9. Send a full-sentence prompt, not a mood word. Set mute: true when the plate must be silent.

Tool reference

Account
edets_account
Who's connected and remaining seconds. Alias: check_balance for one release.
Create clip and wait
edets_generate_video_and_wait
Cook a clip and return when the file is ready. still accepts a data URL (data:image/jpeg;base64,…) or an MCP image {type,data,mimeType} for a file on the caller’s computer, or a public https URL. Hosted MCP cannot read a local path. quality is max (edets Max) or motion (edets Motion). seconds is 5–15 and burns 1:1 prepaid seconds. size is 480 or 720 (Max 720 = 768P). aspect is 9:16, 1:1, 4:5, or 16:9. mute=true strips audio (no machine hum).
Clip status
edets_job_status
Still cooking or ready. Poll a generation id: queued → running → succeeded or failed. Failed jobs return seconds to the pool. Alias: check_status.
Create clip
generate_video
Alias for one release. Queue one clip and return a generation id to poll. Prefer Create clip and wait.
Create campaign
create_campaign
Queue a multi-shot IG/TT/FB campaign. intent is product, character, or make_something. Campaigns do not auto-compose.
Compose campaign
compose_campaign
After shots succeed, stitch the master and platform packs (ig_9x16, tt_9x16, fb_4x5).

Example prompts

Who is connected and how many prepaid seconds are left?

Make a 5-second edets Max clip from this local still (data URL). She turns and looks at camera. 720, 16:9, mute. Wait until it is ready.

Is generation 7c1e4d2a-9b0f-4c3e-8a11-2f6d9e4b81c0 still cooking?

Compose campaign IG-01 after the shots succeed.