Skip to main content
Glama

engineering.safety_factor

Read-onlyIdempotent

Calculate safety factor as allowable stress divided by absolute applied stress, returning 'safe' if the result is at least 1 and 'unsafe' otherwise.

Instructions

안전율 SF = 허용응력 / |작용응력| 을 계산하고 SF 1 이상이면 'safe', 미만이면 'unsafe' 를 반환한다. 두 응력은 같은 단위(Pa 또는 MPa)이며 allowable_stress 는 0 초과, applied_stress 는 0 이 아니어야 하고 부호는 무시된다. 요구 안전율(예: 1.5)과 비교하지 않으므로 safe 만으로 설계 적합을 판단하면 안 된다. 반올림 없이 50자리 유효숫자.

Input Schema

NameRequiredDescriptionDefault
applied_stressYes
allowable_stressYes

Output Schema

NameRequiredDescriptionDefault
_metaNo서버가 붙이는 영수증(integrity), 엔진, 힌트
traceYes계산 근거(tool, formula, inputs, steps, output)
verdictYes
safety_factorYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.3.0

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already declare readOnlyHint, idempotentHint, and closed-world behavior, so the description is not responsible for the safety profile. It adds substantive behavioral context beyond annotations: unit consistency, allowable_stress > 0, applied_stress != 0, sign ignored, no rounding, and 50 significant digits.

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 tightly packed sentences with no filler. The formula and return classification are front-loaded, followed by validation constraints and then the interpretation caveat.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values do not need full explanation, but the description still names the 'safe'/'unsafe' output and adds precision and constraint details. For a two-parameter, read-only calculator, nothing essential is missing.

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

Parameters5/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 carry parameter meaning. It fully compensates by specifying that both stresses share the same unit (Pa or MPa), that allowable_stress must be positive, that applied_stress must be nonzero, and that the sign of applied_stress is ignored.

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 the exact formula (SF = allowable stress / |applied stress|) and the classification rule (safe if SF >= 1, else unsafe). This is a specific verb+resource with enough detail to distinguish it from stress-calculation siblings like engineering.mech_stress.

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?

Provides clear usage context and an explicit interpretation caveat: it does not compare against a required safety factor, so 'safe' alone should not be used to judge design adequacy. It does not name alternative tools or say when another sibling is preferable, which keeps it from a 5.

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

Deploy Server

Other Tools