Skip to main content
Glama
vegetableno1

dualsphysics-mcp

by vegetableno1

validate_dambreak

Compares dam-break front positions from a measurement CSV to Koshizuka & Oka (1996), computing per-time errors, MAE, RMSE, and max error in metres and as % of column length.

Instructions

Validate a 2D dam-break run: dam-tip front vs Koshizuka & Oka (1996).

Reads the CSV produced by measure_tool with the SAME points definition (columns map to points by order), reconstructs the front position per output time (furthest point above the wetness threshold) and reports per-time errors plus MAE / RMSE / max error in metres and as % of the column length.

Args: csv_path: MeasureTool time-history CSV. points: Points [[x, y, z], ...] in CSV column order. points_file: The points file used for the measurement. threshold: Wetness threshold (500 kg/m^3 for rhop; ~0.05 for vel). column_length: Water column length a in metres (normalisation). experiment: Embedded experiment (koshizuka1996). max_time: Ignore simulated samples beyond this time (s).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pointsNo
csv_pathYes
max_timeNo
thresholdNo
experimentNokoshizuka1996
points_fileNo
column_lengthNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
mae_mYes
notesNo
rmse_mYes
n_samplesYes
thresholdYes
experimentYes
front_seriesYes
impact_time_sNoWhen the front plateaued at the tank end (wall impact), if it did
column_length_mYes
max_abs_error_mYes
mae_pct_of_columnYes
experiment_referenceYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.1

TDQS

A4.8/5.0
Behavior5/5

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

With no annotations available, the description carries the full burden and discloses the algorithm: it reconstructs front position per output time as the furthest point above the wetness threshold, then reports per-time errors, MAE, RMSE, and max error in metres and as % of column length. It also reveals the column-order mapping and the max_time filtering behavior, giving an agent a concrete model of what happens when invoked.

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?

The description is front-loaded with purpose, then a terse method sentence, then a compact Args block. Each line carries distinct information, and no filler or repetition of schema defaults is present.

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 seven-parameter validation tool with no annotations and no schema descriptions, the description explains how the CSV, points, points_file, threshold, column_length, experiment, and max_time all interact. The presence of an output schema covers return structure, so the missing output details do not create a practical gap.

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

Parameters5/5

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

The input schema has 0% description coverage, but the Args list fully compensates: csv_path is identified as the MeasureTool history CSV, points are given an exact shape and ordering, threshold gets concrete reference values (500 kg/m^3 for rhop; ~0.05 for vel), and column_length is explained as normalisation. This is above and beyond the raw JSON schema.

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?

The first sentence names a specific verb ('Validate'), a specific resource ('a 2D dam-break run'), and the comparison benchmark ('dam-tip front vs Koshizuka & Oka (1996)'). This clearly separates it from sibling tools like measure_tool, which produces the input CSV rather than validating it.

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?

The description says the tool 'Reads the CSV produced by measure_tool with the SAME points definition', which makes the prerequisite workflow and relation to a sibling explicit. It does not state explicit exclusions or alternative conditions, but the intended post-measurement use is clear enough.

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