Skip to main content
Glama
tugraskan

swatplus-mcp

by tugraskan

file_io

Identify every Fortran routine that opens, reads, or writes a specified file, including unit numbers and line references, and resolve output files opened via open_output_file across the entire source tree.

Instructions

Which routines open/read/write a file, with unit numbers and lines. Resolves output files opened via open_output_file. Exhaustive over the whole tree, not truncated.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
fileYesFile name, e.g. aquifer.aqu or aquifer_day.txt

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.1

TDQS

A3.8/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 behavioral disclosure burden. It adds valuable traits: it is exhaustive over the whole tree, not truncated, and it resolves output files opened via open_output_file. This gives an agent meaningful expectations about scope and alias handling, though it does not explicitly state that the operation is read-only.

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 two sentences with no wasted words. It front-loads the core purpose and then adds two crucial refinements—open_output_file resolution and exhaustive coverage—each earning 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 single-parameter query tool with no output schema, the description conveys what is returned (routines with unit numbers and lines) and key edge behaviors. It is sufficiently complete for an agent to select and invoke the tool correctly, though it could briefly mention the result format or whether output is sorted.

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?

The schema already documents the single 'file' parameter with a descriptive example, giving 100% coverage. The description adds no new parameter-level information, which is acceptable because the schema fully defines the required input.

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 identifies routines that open/read/write a file, including unit numbers and lines. It distinguishes itself from siblings by focusing specifically on file I/O operations and by resolving files opened via open_output_file, though it lacks an explicit imperative verb like 'list' or 'find'.

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?

The description implies when to use the tool: when you need to know which routines touch a given file, or when output files are opened through open_output_file. It does not explicitly compare against sibling tools like writers, unit_users, or read_output, nor does it state when not to use it.

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