Skip to main content
Glama

Run simulation

run_simulation
Idempotent

Run the saved model's declared state machines or an existing operational scenario. Reports transitions, requirement verdicts over time and unmatched events. No fluid, rigid-body or FMU solver. Paid. Call it directly: it charges what the job uses, never more than its estimated maximum or the max_spend_credits you set. request_id is optional; set one to make a retry safe. Returns job_id immediately. Poll get_job_status for later progress.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "run_simulation"
  }
}

Input Schema

NameRequiredDescriptionDefault
rowsNoOnly for cost_mode "agent_authored" on generate_safety_analysis: {conditions:[{target,description,severity,...}],modes:[{target,mode,severity,occurrence,detection,...}]}; with analysis "stpa": {losses:[{id,description}],hazards:[{id,description,losses}],controllers:[{target,processModel}],controlActions:[{from,to,name,ucas:[{id,type,context,contextVariables,hazards,constraint}|{type,notApplicable,rationale}]}],feedback:[{from,to,name,updates}],constraints:[{id,name,text}]}.
modelNo
studyNo
eventsNo
formatNo
promptNo
stop_sNo
analysisNoFor generate_safety_analysis: fha, fmea, both (default) or stpa. stpa needs no standard.
fidelityNo
model_idNoA model from a generation job (model_ id) or a saved studio model (m_ id); a saved model is read at the head of main.
providerNo
standardNo
cost_modeNomanaged
max_depthNoOnly for run_agent_swarm: levels of division, 1 to 3 (default 2). At 2 and 3, a subsystem the orchestrator judges too large for one agent is divided again inside its frozen boundary.
subsystemNoFor reprompt_agent: qualified name of the subsystem, e.g. "Rover::DriveUnit". For run_agent_swarm on a saved model: the subsystem to decompose one level further (its parts get the agents); leave it out to work on the whole system's subsystems.
request_idNo
scenario_idNo
simulationsNo
specificationNoOnly for cost_mode "agent_authored" on generate_system_model and build_full_system; see those tools for its schema.
simulation_typeNo
max_spend_creditsNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • addedInput schema / properties / analysis / description
      Added value: +"For generate_safety_analysis: fha, fmea, both (default) or stpa. stpa needs no standard."
    • changedInput schema / properties / analysis / enum
      Previous value: -[
      -  "fha",
      -  "fmea",
      -  "both"
      -]New value: +[
      +  "fha",
      +  "fmea",
      +  "both",
      +  "stpa"
      +]
    • changedInput schema / properties / rows / description
      Previous value: -"Only for cost_mode \"agent_authored\" on generate_safety_analysis: {conditions:[{target,description,severity,...}],modes:[{target,mode,severity,occurrence,detection,...}]}."New value: +"Only for cost_mode \"agent_authored\" on generate_safety_analysis: {conditions:[{target,description,severity,...}],modes:[{target,mode,severity,occurrence,detection,...}]}; with analysis \"stpa\": {losses:[{id,description}],hazards:[{id,description,losses}],controllers:[{target,processModel}],controlActions:[{from,to,name,ucas:[{id,type,context,contextVariables,hazards,constraint}|{type,notApplicable,rationale}]}],feedback:[{from,to,name,updates}],constraints:[{id,name,text}]}."
  2. First observed

TDQS

A4/5.0
Behavior5/5

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

Adds substantial behavior beyond the annotations: the tool is paid, charges only actual usage, is capped by the estimate and max_spend_credits, is asynchronous (returns job_id immediately), and becomes retry-safe only when request_id is supplied. This correctly explains the idempotentHint while making clear the default is not automatically safe to retry.

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-loads purpose immediately and keeps the remaining sentences operational: scope limits, cost model, retry safety, and polling. The 'Paid.' fragment and dense cost sentence are efficient rather than wasteful, though the pricing/retry block could be tightened slightly.

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

Completeness2/5

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

For a 21-parameter, asynchronous, paid tool with no output schema, the description covers the return contract only minimally ('returns job_id immediately') and leaves key selection ambiguity unresolved, notably when to use top-level events/stop_s/scenario_id versus the nested simulations array. It is not enough to call the tool correctly without heavy schema inference.

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

Parameters2/5

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

Only request_id and max_spend_credits gain real meaning from the description, and the two simulation modes are loosely implied. With 21 parameters and 29% schema description coverage, most inputs (format, fidelity, provider, standard, study, cost_mode, model vs model_id vs scenario_id, and the simulations array vs top-level fields) are left unexplained in both places.

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 ('Run the saved model's declared state machines or an existing operational scenario') and names the reported outputs (transitions, requirement verdicts over time, unmatched events). It also draws a clear negative boundary ('No fluid, rigid-body or FMU solver'), so an agent knows this is not a general physics solver.

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

Usage Guidelines4/5

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

Gives clear conditions for use (declared state machines or an existing operational scenario), an explicit exclusion for other solver types, and operational guidance on retries via request_id and polling via get_job_status. It stops short of naming sibling alternatives such as verify_model or run_trade_study for related analyses.

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