Sume MCP jobs_wait with 20 job_ids: wait_for any versus all
jobs_wait takes up to 20 job_ids and wait_for any or all. All is the default. Any returns early, but the other jobs keep running and billing. Examples inside.

Pass job_ids with 1 to 20 ids and pick wait_for. all is the default and returns when every id is terminal or the slice ends. any returns as soon as one id finishes, but the rest keep running and keep billing. The answer is a job_wait_batch with a status snapshot for each id.
| Input | Values | Note |
|---|---|---|
job_id | One id | Response stays job_wait |
job_ids | 1 to 20 ids | Response is job_wait_batch |
wait_for | all or any | Default all |
timeout_seconds | Default 50, cap 55 | Clamped, reported in wait_slice_clamped |
include_results | true or false | Adds results[] for completed ids |
Choosing any or all
Use all for a wave that must complete together, such as the scenes of one video. Use any when the first finished item lets you start downstream work, and keep a list of what is still running.
| Mode | Returns when | Jobs still running |
|---|---|---|
all | Every id is terminal, or the slice ends | Continue if the slice ended |
any | One id is terminal, or the slice ends | Continue, and still bill |
Request
A batch wait is a single MCP tool call with these arguments.
{
"job_ids": ["job_a", "job_b", "job_c"],
"wait_for": "all",
"timeout_seconds": 50,
"include_results": false
}Edge cases
If one id has been stopped by Sume operations, the wait answers at once with outcome: operator_stopped, and pending_job_ids names those still running. Waiting again on the stopped ids cannot change the answer. Terminal stopped jobs produce no output and their holds were refunded.
Plan limits also shape the wave: a Free workspace can have 1 job processing and 5 queued, so a 20-id wave only makes sense on larger plans or after earlier jobs finish.
Choosing the slice
The default slice is 50 seconds. A wave of image jobs often completes inside one slice; a wave of video jobs usually does not. Do not raise the value to fit a render; wait again. The server clamps anything above 55 and tells you in wait_slice_clamped.
Reading what comes back
Each entry in the snapshot carries that job's status. Act on terminal ones, remember the rest, and wait again on the remaining ids only. With include_results, completed entries come back with their results, and any that do not fit are listed in results_omitted.job_ids for a follow-up jobs_result.
A common mistake is to treat the first any return as the end of the wave and move on, forgetting that the others are still processing. Keep the list of unfinished ids in the agent's notes and wait on it until it is empty. Another is to mix workspaces: an id from a different workspace fails the entire call, so build the list from jobs your own session created.
Keep in mind that Sume's hosted endpoint is the same for every client in this series: https://mcp.sume.com/mcp, with OAuth consent on the MCP host or an API key in a header. What differs is each client's config keys, its timeout defaults and its approval prompts. When a connection misbehaves, first separate those two layers: test the endpoint with curl and your credential, and only then look at the client's settings.
Sources
More in Integrations
- Sume MCP with Write off: what an OAuth agent can still do
With OAuth read-only (mcp:read), an agent on Sume's hosted MCP can still read jobs, assets and the catalog and scrape pages. Writes and paid tools fail.
- Sume 429 queue_full from an MCP agent: wave sizes for Free to Scale
An agent that submits too many paid jobs hits 429 queue_full. Accepted capacity is 6 on Free, 24 on Pro, 48 on Startup, 120 on Scale. Wave sizes inside.
- Sume MCP script_run: fan out 3+ calls in one turn, 55 s limit
script_run runs a short JavaScript program on Sume that calls tools in a loop or in parallel. timeout_seconds is 5 to 55. Use it for 3+ similar calls.
- Sume with Zapier, Make or n8n: no app in the docs, so use HTTP
Sume's docs list no Zapier, Make or n8n app. Start Formats over HTTP, receive results on a webhook_url, and poll as a backup. Limits of each tool.
Written by Sume