Skip to main content
Glama

Gradient Dynamics: thermal and CFD simulation

Judge convergence

assess_convergence
Read-onlyIdempotent

Judge whether a finished simulation converged by the user's own standard. Unset fields keep the standard test: every reported residual (continuity, Ux, Uy, Uz, energy) at or below 1e-3 and none rising over the last 20% of iterations; forces count only when named in forces. Uses the run's full saved history: no compute, no charge, and the saved verdict is unchanged. Report the status, its reasons and the thresholds used. When the user states their standard before a run, pass it as run_simulation's convergence_criteria.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "job_id": "<job_id>"
    },
    "name": "assess_convergence"
  }
}

Input Schema

NameRequiredDescriptionDefault
forcesNoForce coefficients that must also settle, e.g. drag_coefficient, lift_coefficient; default none.
job_idYes
residualsNoResiduals to judge, e.g. continuity; default every one reported.
window_fractionNoShare of the iterations run, counted back from the last, that the test examines.
force_band_floorNoSpread always allowed, for coefficients near zero.
window_iterationsNoExamine this many final iterations instead of window_fraction.
force_band_percentNoLargest max-min spread of each named force coefficient over the window, as a percentage of its mean.
max_final_residualNoEach final residual must be at or below this value (default 1e-3); null drops the limit.
residual_rise_ordersNoA residual is rising when the window's later half is this many orders of magnitude above its earlier half.
min_residual_orders_droppedNoAlso require each residual to have fallen this many orders of magnitude from its peak.

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, and non-destructive, so the description earns credit for the extra facts it supplies: the run's full saved history is used, nothing is recomputed, nothing is charged, and the saved verdict is unchanged. That answers the main questions an agent would have before invoking a judging tool, though it says nothing about failure modes (e.g., a job that is still running or lacks a saved history).

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

Conciseness5/5

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

Front-loaded with the purpose in the first clause, then the default standard, then the operational facts, then the return and routing hint - every sentence carries distinct information and nothing is repeated from the schema or annotations.

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 10-parameter judging tool with an output schema, the description covers what is judged, the default thresholds, the no-compute/no-charge behavior, and what the response reports (status, reasons, thresholds) - everything needed to select and call it correctly.

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?

With 90% schema coverage the schema already documents each parameter, so the baseline is 3; the description adds real meaning by spelling out the composite default standard - residuals from continuity, Ux, Uy, Uz and energy at or below 1e-3, no rise over the last 20% of iterations, and forces counted only when named - which shows how the thresholds and window parameters interact. It does not explain the fallback between window_fraction and window_iterations or the two force-band knobs, leaving some parameters to the schema alone.

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?

"Judge whether a finished simulation converged by the user's own standard" gives a precise verb and resource plus the scope (finished runs only), which clearly separates it from run_simulation and from history-viewing siblings.

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?

It establishes the triggering context (a finished simulation is being judged) and points to the right entry point for the related case: pass the user's standard as run_simulation's convergence_criteria before the run. It stops short of naming an alternative for when the verdict should be inspected rather than computed, so it is clear but not fully routed.

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