Skip to main content
Glama

FERS — structural FEM

Add a code check

add_unity_check
Read-only

Append a unity (code) check to a model's analysis.unity_checks. check is a UnityCheckDefinition JSON (see get_check_schema). Returns the updated model JSON to pass to run_unity_checks. Free.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "check": "<check>"
    },
    "name": "add_unity_check"
  }
}

Input Schema

NameRequiredDescriptionDefault
checkYesStringified UnityCheckDefinition JSON (get its schema + an example from get_check_schema)
modelNoStringified FERS model JSON
model_refNoHandle from stash_model, used INSTEAD of `model`. Avoids sending the whole document on every step; the tool returns the same handle back.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior4/5

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

With readOnlyHint=true already declared, the description adds the key clarification that the tool returns an updated model JSON rather than persisting anything, which resolves why a readOnly annotation makes sense for an "add" operation. It also discloses the append semantics and zero cost. It does not mention duplicate-check handling or validation failures, which is why idempotentHint=false is left unexplained.

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?

Three short sentences, front-loaded with the action and target, followed by payload guidance and the return/native-next-step. The trailing "Free." is one word and carries a real cost signal used for planning.

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?

No output schema exists, and the description covers the return value (updated model JSON to feed to run_unity_checks), which is the essential unknown. For a mutation tool with rich annotations and 100% schema coverage, the remaining gap is minor: nothing is said about duplicate handling, ordering of checks, or model/model_ref selection.

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 baseline is 3; the description still adds value by naming the exact JSON type of `check` (UnityCheckDefinition) and pointing to get_check_schema for its schema and example. The `model` vs `model_ref` tradeoff is left entirely to the schema text, so it doesn't fully compensate.

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?

States a specific verb and resource ("Append a unity (code) check") plus the exact destination field (analysis.unity_checks). The following sentence routes to get_check_schema for the payload shape and to run_unity_checks for the next step, so an agent can distinguish it from add_load, add_load_case, and run_unity_checks without opening any schema.

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?

Gives a clear operating context: fetch the definition schema from get_check_schema first, then pass the returned model to run_unity_checks. It also signals the tool is cheap ("Free"), encouraging iterative use. It stops short of stating when not to use it or how it differs from stash_model/load_model workflows, but the sequencing guidance is explicit.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.