Skip to main content
Glama
tugraskan

swatplus-mcp

by tugraskan

writers

Find every assignment of a variable in SWAT+ Fortran source with line numbers and full logical statements for derived-type paths. Covers the entire code tree exhaustively, never sampled or truncated.

Instructions

Routines that assign a variable, with line numbers and the complete logical assignment statement for derived-type paths when the RHS sidecar is installed. Exhaustive over the whole tree, never sampled or truncated. Relevant scanner warnings are returned separately when present.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
variableYesVariable or derived-type root, e.g. sw_volume_begin

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.1

TDQS

A3.7/5.0
Behavior4/5

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

With no annotations provided, the description carries the full disclosure burden. It discloses exhaustiveness ('never sampled or truncated'), output content (line numbers and complete assignment statements), and that scanner warnings are returned separately. It does not explicitly state read-only behavior, but the operation is clearly a read-only lookup, and the sidecar caveat is a useful limitation disclosure.

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?

Three sentences each contribute meaningful information: purpose/output, exhaustiveness, and warning behavior. The core purpose is front-loaded. The first sentence is grammatically dense and includes the unexplained 'RHS sidecar' term, which prevents a perfect score.

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 simple one-parameter tool with no output schema, the description tells the agent what is returned, how complete it is, and what caveats exist. It does not explain what the RHS sidecar is or specify the exact return structure, but enough is present for correct invocation and basic result interpretation.

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

Parameters3/5

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

Schem description coverage is 100%, so the schema already documents the 'variable' parameter and its derived-type root usage. The description adds only a minor nuance about derived-type paths with the sidecar, which is more behavioral than parameter-semantic. Baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's core function: finding routines that assign a given variable, with line numbers and logical assignment statements. It differentiates from read/call-oriented siblings like read_output and callers by focusing on write/assignment locations. The phrase 'when the RHS sidecar is installed' is an opaque qualifier that slightly clouds the main purpose.

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

Usage Guidelines3/5

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

Usage guidance is implied: if you need to know where a variable is assigned, this is the tool. However, no explicit when-not-to-use instructions or alternatives are mentioned, leaving the agent to infer from sibling names. The exhaustiveness statement hints at use cases but does not formalize them.

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