Run a node through MCP
Use this route when the result should follow the project’s graph and appear on its nodes. Start with a selected project, a supported node and a Look, build and generate key. This is a paid-capable workflow.
Quote the current plan
Section titled “Quote the current plan”Read the project and choose the actual node ID. Inspect its inputs and warnings, then request a quote:
{ "name": "price_quote", "arguments": { "project_id": "<url or id returned by list_projects>", "tool": "run_node", "params": { "node_id": "<node id returned by read_project_graph>", "mode": "up_to" } }}Review the planned upstream work, estimate and warnings. Agree a spending ceiling before starting. If inputs or settings change, quote again.
Start and follow the run
Section titled “Start and follow the run”Call run_node with the same project, node and mode plus the accepted max_cost_usd. The ceiling must cover a positive estimate. A zero ceiling is a useful refusal boundary; it does not make a paid plan free.
If the plan warns that it will overwrite human edits, resolve those warnings before using accept_warnings: true. Do not treat that flag as a standard default.
Keep the returned run_id and wait with get_run:
{ "name": "get_run", "arguments": { "project_id": "<url or id returned by list_projects>", "run_id": "<run_id returned by run_node>", "wait_s": 20 }}Use bounded waiting instead of rapid repeated polls. A terminal status ends the wait; only done reports normal completion. Read costs, saved revision, individual node outcomes and any scriptwriter report. A failed or unknown critic check does not establish that the script passed review.
Read the result back
Section titled “Read the result back”Read the graph again. Verify that the intended result reached the intended node and inspect the image, text or complete clip. Use artifact retrieval when a downloadable material is needed.
up_to can reuse current results; regen requests a new result at the target and can charge again. The node reference states which nodes run through this route. For unsupported nodes, use a documented individual operation or the browser workflow.
On busy, not_saved, interruption or uncertain charging, follow recover a run before retrying.
Last checked: 14 October 2026. Examples are validated without executing a paid run.
