Skip to main content
Glama
codersag

ls-dyna-mcp

by codersag

scan_solver_messages

Counts LS-DYNA solver errors, warnings, and implicit step retries in d3hsp, messag, or mes0* files, reading the newest matching output by default.

Instructions

Count errors, warnings and implicit step retries in d3hsp, messag or mes0* files: '*** Error nnnnn', 'FATAL ERROR', 'Nonlinear solver failed to find equilibrium', 'automatic time step size DECREASE, RETRY step'. The default name (empty, or the bare d3hsp / messag) picks the newest d3hsp[nn] / messag[nn]; file in the reply says which was read. Args: directory, name

Input Schema

NameRequiredDescriptionDefault
nameNo
directoryYes

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.9.2

TDQS

A3.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 burden well: it states the exact patterns counted, explains default file selection by picking the newest d3hsp[nn]/messag[nn], and notes that the reply's `file` field reports which file was read. It does not explicitly say the operation is read-only or mention limits, but 'Count' strongly implies a non-modifying scan.

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?

The description is front-loaded with the core action and stays compact. The pattern list earns its place by defining exactly what is counted, while 'Args: directory, name' is slightly redundant with the schema but not harmful.

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?

Given an output schema exists, the description gives enough detail to call the tool correctly: patterns, default file selection, and the reply's `file` indicator. The main missing piece is routing guidance relative to sibling tools, but for correct invocation the description is largely complete.

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?

Schema description coverage is 0%, so the description must compensate. It adds meaningful semantics for `name` by explaining the empty/bare default and newest-file selection, but it only lists `directory` and `name` as 'Args' without describing what `directory` should contain.

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 uses a specific verb, 'Count', and specific resources, d3hsp/messag/mes0* files, plus concrete patterns such as '*** Error nnnnn' and 'FATAL ERROR'. It is clear what the tool does, but it does not explicitly distinguish itself from nearby siblings like tail_solver_file, check_run_health, or read_implicit_progress.

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

Usage Guidelines2/5

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

The description gives no explicit when-to-use or when-not-to-use guidance. It never contrasts this scanner with alternatives such as tail_solver_file, check_run_health, read_implicit_progress, or list_solver_files, so the agent must infer when this is the right tool.

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