Skip to main content
Glama

Veltake Studio

Run a canvas

start_run

Start rendering a canvas. This SPENDS the user's coins: pass expected_total and version exactly as estimate_run answered them — if the canvas or its price changed since, the run is refused and nothing is spent. Without both, a host that can ask the person confirms the price with them; any other host is answered the price and the version. Poll get_run (a host that runs tool tasks waits for it itself).

Input Schema

NameRequiredDescriptionDefault
fundingNowho pays: personal (the person's own coins) or team (their team's pool — only when the person allowed this connection to spend team coins and the team approved this app). Omit to use the payer the person chose when connecting
versionNothe canvas version from estimate_run (with expected_total)
graph_idYescanvas id
force_nodesNoas passed to estimate_run
scope_nodesNoas passed to estimate_run
from_node_idNoas passed to estimate_run
expected_totalNototal_coins from estimate_run — omit both only when the host confirms prices with the person itself
idempotency_keyNooptional: repeat it on a retry so the retry answers the first run instead of charging again

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • changedInput schema / properties / expected_total / description
      Previous value: -"total_coins from estimate_run"New value: +"total_coins from estimate_run — omit both only when the host confirms prices with the person itself"
    • changedInput schema / properties / version / description
      Previous value: -"the canvas version from estimate_run"New value: +"the canvas version from estimate_run (with expected_total)"
    • changedInput schema / required
      Previous value: -[
      -  "graph_id",
      -  "version",
      -  "expected_total"
      -]New value: +[
      +  "graph_id"
      +]
  2. First observed

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations say only that this is a non-read-only, non-destructive, open-world call; the description goes well beyond by disclosing that coins are actually spent, that a stale canvas or price is refused with nothing spent, and that the confirmation path depends on host capability. That is exactly the cost/irreversibility context an agent needs before a spend.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the consequence (spends coins) and dense with no filler sentences. The host-behavior clause is compact to the point of being slightly cryptic, but each sentence carries a distinct decision rule.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a spending mutation with no output schema, the description supplies the safety contract, the validation failure mode, the confirmation branch, and the follow-up call. Nothing an agent needs in order to invoke it correctly appears to be missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds cross-tool semantics the schema cannot: expected_total and version must be copied verbatim from estimate_run and are validated as a pair, with a defined refusal outcome. It adds little about funding, force_nodes, scope_nodes, or from_node_id beyond 'as passed to estimate_run'.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ("Start rendering a canvas") and immediately names the two sibling tools that bracket it: estimate_run for the price/version and get_run for polling. An agent can distinguish it from estimate_run, get_run, and generate without opening any schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives explicit preconditions (pass expected_total and version exactly as estimate_run answered them), an explicit fallback branch when they are omitted that differs by host capability, and a post-call instruction (poll get_run, or wait if the host runs tool tasks). When-to-use and what-to-do-next are both covered.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources