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.

4 min readSume
All posts

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

Tool mapping, pages read 2026-10-05
fal toolClosest Sume toolNote
search_modelsvideo-router_models, catalog_listCatalog discovery
get_model_schemavideo-router_models capabilities, tools_schema for a tool contractDifferent things: model envelope versus tool contract
recommend_modelOmit payload.model to route to sume/autoRouting, not a recommendation call
search_docsNo equivalent in the Sume docsNot claimed
run_modelgenerate_video then jobs_waitSume splits submit and wait
submit_jobgenerate_videoNeeds idempotency_key; dry_run optional
check_jobjobs_statusRead tool
get_job_resultjobs_resultAlso takes job_ids for a wave
cancel_jobjobs_cancelWrite tool; works only before generation starts
get_pricinggeneration_admission_preview or dry_runPreview, no job created
upload_fileassets_upload_url then assets_completeHosted 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 no generate_video until mcp:write is granted, or an API key is used.
  • Image 1.0 and Video 1.0 are not in tools_list; the hosted generate_video routes through the catalog.
  • Use tools_list as 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

All Comparisons posts

Written by Sume