Call n8n Workflow Tool not working: video sub-workflow
If an n8n agent says it couldn't run your sub-workflow, publish it: the tool returns 'Workflow is not active' outside the test panel. More checks inside.

If the Call n8n Workflow Tool works in the test panel but the agent says it couldn't get data in production, publish the sub-workflow. The n8n docs say that with Database as the workflow source, a production run needs a published sub-workflow; otherwise the call fails with "Workflow is not active and cannot be executed", and that error text goes back to the agent as the tool result.
The n8n facts come from the Call n8n Workflow Tool page, read 2026-09-29. The Sume facts come from Video Generation and Jobs and results. Sume has no n8n connector for this: the sub-workflow holds a plain HTTP Request node that calls POST /v1/videos.
Why does the agent say it couldn't retrieve data?
The docs warn that the error "can be easy to miss inside a longer agent response". Their advice is to check that the sub-workflow has been published and that its execution list shows a run. If the list shows no run at all, the sub-workflow never ran, so it never reached Sume.
Which checks fix the tool?
These are the settings the n8n page ties to behavior you can observe from the agent side.
| Symptom | What the docs say | Check |
|---|---|---|
| "Workflow is not active and cannot be executed" | Database source in production needs a published sub-workflow | Publish it and look for a run in its execution list |
| Every call uses the first item's value | In sub-nodes an expression always resolves to the first item | Send one item per tool call, or pass values as Workflow Inputs |
| Inputs missing on the tool | Define the Workflow Input Schema in the sub-workflow, then select Refresh | Refresh the fields after you change the schema |
| Agent never picks the tool | Description tells the agent when to use the tool | Write when to call it and what input it takes |
What should the sub-workflow do with a Sume video job?
Submit and return, do not wait. Sume's POST /v1/videos answers with a 202 and a job id; the clip finishes later. Have the sub-workflow return id, status, and polling_url from that response, and give the agent a second workflow tool that reads the job.
Pass the request id in as a Workflow Input and send it as the Idempotency-Key. Sume's docs say a replay of the same key returns the original job, so if the agent calls the tool twice for the same request, the second call gets the original job back instead of starting another. Use a new key for a new video.
Is the test panel a reliable check?
Not for publishing. The docs single out production runs, "not the manual/chat test panel", as the case where an unpublished sub-workflow fails, so a green test does not prove the production path. Publish, run the agent from its production trigger, and confirm the sub-workflow's execution list shows the run.
What about paid calls the agent should not make alone?
A sub-workflow tool spends whatever its HTTP Request node is set up to spend. Sume reserves balance on submit at provider list times 1.25, so keep the tool's inputs narrow, such as a fixed model and a bounded duration, and add an approval step before the submit; n8n human in the loop shows one.
Sources
Related posts
More in Integrations
- Can Notion send webhooks? Start an AI video job from a page
Yes: Notion's Send webhook action posts page properties to your URL, and integration webhooks report changes. Call Sume from your own endpoint.
- ChatGPT plugins vs MCP server: where does Sume fit?
A plugin is a package that can carry an MCP server. Sume is the server. Here is how the two relate in ChatGPT and Codex, and what a Sume connection still needs.
- Claude Code --callback-port: do you need it for Sume MCP?
No. --callback-port is for servers that need a pre-registered redirect URI. Sume registers clients dynamically, so Claude Code's default random port works.
- Claude Code headersHelper: read the Sume API key at connect
Claude Code's headersHelper runs a command at connect time and merges its JSON into the request headers. Use it to send a Sume API key from a secret store.
Written by Sume