Skip to main content
Glama

ras_manifest_write

Generate a JSON provenance manifest recording file hashes, QA status, edits, and tool calls after a HEC-RAS run, enabling audit and re-comparison while flagging any missing files.

Instructions

Write a provenance manifest (JSON) for one modelling step: the project .prj + input + result (.p##.hdf) + figure files each with a sha256, the ras_run QA status, the edits made (ras_plan_set / ras_flow_set_hydrograph returns), the tool calls, and free notes. Call it at the end of a run so the run can be audited or re-compared later. Reports any referenced file that is missing. No HEC-RAS needed.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
runNoThe ras_run return value (its QA fields are kept).
caseNoShort case name.
planNoPlan number that was run.
editsNoras_plan_set / ras_flow_set_hydrograph returns.
notesNoFree-text notes / the plain-language goal.
inputsNoInput files (.u##, .p##, rainfall CSV ...).
figuresNoPNG figures produced.
projectNoThe .prj that was run (the copy).
resultsNoResult files (.p##.hdf) from ras_run.
out_jsonYesWhere to write the manifest (e.g. runs/<case>/manifest.json).
tool_callsNoOrdered {tool, args, ok} records.
Behavior4/5

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

With no annotations, the description carries the transparency burden. It discloses key behaviors: writes a JSON manifest, reports missing referenced files, and does not require HEC-RAS. It also details the manifest structure, which goes beyond the schema. However, it does not mention overwrite behavior or return value, which are minor gaps for a write tool.

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 three sentences, front-loaded with the main purpose and followed by important usage and behavior details. No redundant wording; every sentence earns its place.

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 11 parameters, nested objects, no output schema, and no annotations, the description gives invocation timing, manifest contents, error reporting, and a system requirement. It falls short only on return value and overwrite semantics, but overall it provides sufficient context for an agent to invoke the tool 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?

Schema coverage is 100%, so the baseline is 3. The description adds meaning by explaining how parameters compose the manifest: files each with sha256, ras_run QA status, edits from ras_plan_set/ras_flow_set_hydrograph, tool_calls as {tool, args, ok}, and out_json as the write target. This enriches the schema's terse 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 description uses a specific verb and resource ('Write a provenance manifest (JSON) for one modelling step') and enumerates the manifest contents (files with sha256, ras_run QA status, edits, tool calls, notes). This clearly distinguishes it from sibling tools like ras_run or ras_results_summary, which focus on execution or analysis.

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 explicitly states when to use the tool: 'Call it at the end of a run so the run can be audited or re-compared later.' This gives concrete timing and intent. It does not name alternatives explicitly, but the sibling list makes it clear this is the manifest-writing step, and the context is sufficient.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Zhonghao1995/Agentic-HEC-RAS'

If you have feedback or need assistance with the MCP directory API, please join our Discord server