Give my agent video generation: MCP, REST or Agent Completions?

Three ways to give an agent video generation on Sume: the hosted MCP server, the /v1/videos REST API as your own tool, or Agent Completions for the whole task.

5 min readSume
All posts

You can give an agent video generation three ways with Sume. Connect the hosted MCP server at https://mcp.sume.com/mcp if your agent's client speaks remote MCP; wrap POST /v1/videos as your own tool if you run the tool loop yourself; or hand the whole task to Sume's agent with POST /v1/agent/completions. All three are asynchronous, and none returns a finished clip in the first response.

The choice is about who runs the loop, not about the video itself. This page lists what each route needs, from Sume's docs read 2026-09-29.

How do the three routes compare?

The differences are in the credential, the first call and what you poll.

From Sume's MCP, video and Agent Completions docs, read 2026-09-29.
RouteYour agent callsCredentialYou then
Hosted MCPgenerate_videoOAuth or API keyjobs_wait, jobs_result
REST as a toolPOST /v1/videosAPI keyPoll polling_url or use callback_url
Agent CompletionsPOST /v1/agent/completionsAPI key with agent_completions:writePoll GET /v1/agent-runs/{id}

When is MCP the right route?

When the client already speaks remote MCP: Claude Code, Cursor, Codex and others list the tools for the model with no glue code. Omit payload.model and generate_video routes to sume/auto. Paid calls need an idempotency_key, and dry_run=true previews cost.

When should I wrap the REST API myself?

When your loop is your own code, for example a function-calling model without an MCP client. POST /v1/videos follows the OpenRouter video shape: model and prompt required, duration, resolution and aspect_ratio optional.

curl -X POST https://api.sume.com/v1/videos \
  -H "Authorization: Bearer $SUME_API_KEY" \
  -H "Idempotency-Key: agent-clip-001" \
  -H "Content-Type: application/json" \
  -d '{"model": "sume/auto", "prompt": "A paper boat in a rain gutter", "duration": 5}'

When does Agent Completions fit?

When the task, not the tool call, varies: you send an instruction and Sume's agent plans, generates and returns an agent.run receipt. generation_spend_cap_usd is required and has no default, and the response is a receipt, not a chat completion. Streaming is not available yet.

curl -X POST https://api.sume.com/v1/agent/completions \
  -H "Authorization: Bearer $SUME_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"instruction": "Make a 5 second product teaser.", "generation_spend_cap_usd": 5}'

What is common to all three?

Never resubmit a paid create because a wait timed out. Over MCP, jobs_wait returns wait_slice_expired after at most 55 seconds and you wait again on the same ids; over REST, keep polling the same job; on Agent Completions, keep polling the same run. Set a spend ceiling before you leave the loop unattended.

Sources

Related posts

More in Agents

All Agents posts

Written by Sume