Skip to main content
Glama
vegetableno1

dualsphysics-mcp

by vegetableno1

measure_tool

Interpolate SPH particle values at user-defined points and export CSV time series for flow analysis and validation.

Instructions

MeasureTool: interpolate SPH values at points -> CSV time series.

For the dam-break validation use a horizontal line of points just above the bottom (examples/dambreak_val2d/points_damtip.txt) with density (default -vars:-all,rhop): points beyond the surge front read 0, so the furthest wet point is the front position that validate_dambreak compares against the experiment.

Args: job_id: Job whose data/ directory holds the Part_*.bi4 files. dirdata: Explicit particle data directory (alternative to job_id). points_file: MeasureTool points file (POINTS/POINTSLIST/POINTSENDLIST). pointsdef: Inline points definition, e.g. "ptels[x=0:0.01:4,z=0.03]". variables: Variables to interpolate (default density only). onlytype: Particle filter (default fluid only). savecsv: CSV output prefix (default measure/damtip inside the job). savevtk: Optional VTK prefix for the measuring points. extra_args: Extra MeasureTool flags (a -csvsep here overrides ours).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
job_idNo
dirdataNo
savecsvNomeasure/damtip
savevtkNo
onlytypeNo-all,+fluid
pointsdefNo
variablesNo-all,rhop
extra_argsNo
points_fileNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
commandYes
csv_filesNo
next_stepNo
vtk_filesNo
duration_sNo
file_countNo
returncodeYes
stderr_tailNo
stdout_tailNo
output_filesNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.1

TDQS

A4.5/5.0
Behavior4/5

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

With no annotations, the description carries the behavioral disclosure burden. It reveals meaningful behaviors: interpolation produces CSV time series, points beyond the surge front read 0, defaults are fluid-only density, and extra_args can override output settings. It does not cover failure modes or side effects beyond file outputs, but it is still substantially transparent.

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 well structured: a one-line purpose, a focused use-case paragraph, then a compact args list. Every sentence contributes useful information, and the most important usage guidance is front-loaded.

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

Completeness4/5

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

For a complex tool with 9 optional parameters and no annotations, the description covers all parameters, a realistic validation workflow, defaults, and file outputs. The only notable gap is that neither job_id nor dirdata is marked required in the schema, and the description does not explicitly state that at least one of them must be supplied.

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?

Schema description coverage is 0%, yet every parameter is explained in plain language. The description clarifies the job_id/dirdata alternative, gives a concrete pointsdef example, and notes the default variable and particle filters. This fully compensates for the empty schema descriptions.

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 opening sentence 'MeasureTool: interpolate SPH values at points -> CSV time series' names a specific verb, resource, and output format. It also ties the tool into the dam-break validation workflow, distinguishing it from siblings like validate_dambreak and partvtk.

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 gives a concrete when-to-use scenario: for dam-break validation, use a horizontal line of points just above the bottom, with density as the default variable. It explains the resulting surge front behavior and how validate_dambreak consumes it, but it never explicitly states when not to use this tool or how it compares to siblings.

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