MCP video tools compared: fal's 11 tools vs Sume's
fal's MCP relay has 11 tools. Sume's video loop is generate_video, jobs_wait and jobs_result, plus catalog and preview tools. Mapping inside.

fal's MCP relay lists 11 tools: search_models, get_model_schema, recommend_model, search_docs, run_model, submit_job, check_job, get_job_result, cancel_job, get_pricing and upload_file. Sume's hosted MCP has a larger and differently grouped set, and the video loop is generate_video, then jobs_wait, then jobs_result. The table gives the nearest Sume tool for each fal tool. It is a mapping of jobs-to-be-done, not a claim that the arguments match.
Nearest equivalents
| fal tool | Closest Sume tool | Note |
|---|---|---|
search_models | video-router_models, catalog_list | Catalog discovery |
get_model_schema | video-router_models capabilities, tools_schema for a tool contract | Different things: model envelope versus tool contract |
recommend_model | Omit payload.model to route to sume/auto | Routing, not a recommendation call |
search_docs | No equivalent in the Sume docs | Not claimed |
run_model | generate_video then jobs_wait | Sume splits submit and wait |
submit_job | generate_video | Needs idempotency_key; dry_run optional |
check_job | jobs_status | Read tool |
get_job_result | jobs_result | Also takes job_ids for a wave |
cancel_job | jobs_cancel | Write tool; works only before generation starts |
get_pricing | generation_admission_preview or dry_run | Preview, no job created |
upload_file | assets_upload_url then assets_complete | Hosted MCP cannot read files from your machine |
The Sume loop
Call generate_video with an idempotency_key. Then call jobs_wait with the job id. Remote waits are bounded: default 50 seconds, cap 55. When a slice expires, call jobs_wait again with the same ids and never submit the paid create again. Finally call jobs_result, or pass include_results: true to jobs_wait to get the result with the wait. jobs_wait takes 1-20 ids, with wait_for of all or any.
{
"idempotency_key": "clip-2026-10-05-001",
"dry_run": true,
"max_spend_usd": 3,
"payload": {
"prompt": "A ceramic mug turning slowly on a marble counter"
}
}Differences that affect an agent
- Under OAuth
mcp:read, Sume hides paid and write tools. The agent will see nogenerate_videountilmcp:writeis granted, or an API key is used. - Image 1.0 and Video 1.0 are not in
tools_list; the hostedgenerate_videoroutes through the catalog. - Use
tools_listas the source of truth. The mapping here comes from the docs on the date above.
Waiting in bulk
The fal tools list a separate check_job and get_job_result. On Sume, jobs_wait can wait on up to 20 jobs at once, with wait_for set to all or any. With all, one call returns when every job is terminal or the slice ends. A fan-out of 8 videos therefore needs one wait per slice, not 8.
Reading results is also batched: jobs_result takes the same job_ids and returns a job_result_batch in request order. Partial success is normal. An id that still runs comes back as job_not_completed, and partial_failure.failed_job_ids names the ids that need a second read.
Sources
Related posts
More in Comparisons
- Five entry video subscriptions total $132 a month; Sume Pro is $40
Descript, Submagic, Quso, Zebracat and Biteable entry plans add up to $132 a month as listed. What one Sume plan plus metered usage does instead.
- Free video plans compared: Synthesia, HeyGen, Headliner, Sume
Synthesia Basic gives 500 credits, HeyGen Free 3 videos, Headliner Free 1 audiogram. What Sume's $0 plan includes and what it does not.
- Gemini Flash TTS 130+ languages, Flash-Lite 100+: check yours first
Google lists 130+ languages for Gemini 3.8 Flash TTS and 100+ for Flash-Lite. A count is not a quality bar; test your language on Sume with 2 calls.
- Voice agent cost per minute: Gemini 3.8 Live vs gpt-realtime-2.1
Gemini 3.8 Live lists $0.005 per minute in and $0.018 out; gpt-realtime-2.1 lists $32 / $64 per 1M audio tokens. Convert tokens to minutes before you compare.
Written by Sume