Skip to main content
Glama
Mesteriis

Plasticity MCP

plasticity_analyze_static_fem

Run static linear-elastic FEA on a selected solid to check stress and displacement under defined supports and loads, using isotropic or orthotropic material data.

Instructions

Run bounded linear-elastic CalculiX analyses for one selected native Solid, modeled as one material and one print process; never combine material datasets. The default isotropic model uses youngsModulusMPa and poissonRatio with exact matching evidence. A process-matched uniaxial coupon may supply the isotropic Young's modulus only; use plasticity_match_material_coupon_data first and bind only an unambiguous exact-process record. Poisson ratio always needs separate evidence.

To use an orthotropic model, pass orthotropicMaterial. In that mode youngsModulusMPa is E1 and poissonRatio is nu12; orthotropicMaterial supplies E2, E3, nu13, nu23, G12, G13 and G23. When the immutable exact-process coupon record contains the measured full tensor and nu12, bind it with orthotropicMaterial.couponRecordId and process, and set materialCoupon to the same record ID/process. The server checks E1, nu12, all seven remaining constants, each evidence object and the confirmed print frame against that record before solving and again when the saved report is read. Otherwise, provide separate exact-value evidence for every property. Measured/sourced evidence requires URL, SHA-256 and locator; assumptions require an explicit derivation and remain scenario-only. The server rejects an unstable normal-compliance matrix and non-positive moduli. Give axis1DirectionGlobal, axis2ReferenceDirectionGlobal, and buildDirectionGlobal in the global CAD frame. The build direction must be explicitly user-confirmed or sourced, and material axis 3 must align with it; axis 3 is the layer-normal direction. Axis 1 and 2 are orthogonalized into a right-handed local frame; zero or parallel axes are rejected. Without layerPlanePlan, this is one homogeneous frame. For a per-layer orientation analysis, pass a complete layerPlanePlan made from the exact single-material process and G-code: profile hash and measured layer height must match orthotropicMaterial.process; the plan must include every layer (up to 256), confirmed slicer-to-CAD and coupon-road-axis mappings, and complete planar road-direction evidence for every layer. Linear deposition and XY circular arcs are integrated for I/J offsets and signed R radii. P multi-turn arcs, malformed or mixed arc forms, non-XY arc planes, absolute I/J center mode, and G5/G5.1 splines or G5.2/G5.3 NURBS blocks remain incomplete. The server cuts the STEP B-Rep at the planned interfaces before meshing, verifies each face-to-surface fragment by exact plane/bounds/area evidence, and assigns each conformal volume region the same measured tensor with that layer's mapped frame. The report marks these components as layer-local. Static FEA treats the interfaces as perfectly bonded; it does not predict delamination or interlayer failure. Use the separate cohesive-interface analysis with measured interface tests for that. Varying layer frames cannot use directional component allowables expressed in one fixed material frame. Orthotropic analyses do not accept a von Mises allowable because it is not a qualified orthotropic failure criterion. The screen checks no multiaxial interaction and is diagnostic only; it is not a failure verdict, strengthPass or print approval. Without all nine supported directional limits, no orthotropic stress screen is returned.

For an optional measured 3D Tsai-Wu screen, bind one qualified single-material print record by supplying its ID as orthotropicMaterial.tsaiWuQualificationRecordId together with orthotropicMaterial.process. The server resolves the immutable record only when it is the unique exact match for printer, filament, profile hash, orientation, infill percentage and pattern, wall loops, top/bottom shell layers, nozzle temperature and measured slicer layer height, and checks that its measured print axes match the FEA material frame. It loads the nine un-factored X/Y/Z tensile/compressive and XY/XZ/YZ shear failure strengths plus three normalized XY/XZ/YZ normal-interaction coefficients and their source evidence from that record; agents do not copy these values manually. Each strength evidence entry must attest testAxis and testMode in the confirmed material frame; each biaxial interaction and its source dependencies must attest its corresponding plane. Legacy records without directional metadata remain readable but cannot be bound to Tsai-Wu FEA. Alternatively, provide the complete inline orthotropicMaterial.tsaiWuCriterion with process-matched, direction-qualified evidence. The interaction matrix must be positive definite. CalculiX evaluates the full material-local tensor at each integration point and reports the maximum failure index and proportional load factor to index one per case and mesh. This diagnostic first-failure surface never establishes whole-part strength or print approval. It assumes one homogeneous material and does not resolve individual roads, discrete layer delamination, nonlinear response, fatigue, buckling or convergence; without measured data it is omitted.

For isotropic analyses only, an optional factoredVonMisesAllowableMPa requires directly measured/sourced matching evidence with URL, SHA-256, locator and factoredVonMisesAllowableBasis. The allowable must already include design factors and apply to this material/process; do not convert a generic datasheet strength or raw coupon peak into an allowable. Its comparison with sampled mesh peaks is diagnostic only and never establishes strength, convergence, strengthPass or print approval.

Choose either legacy supportFaceIds (all three global translations fixed on each planar face) or 1–8 explicit supportConditions; each condition fixes only its listed global translation axes x/y/z to zero at every node on that face. Ask the user to confirm the actual restraints; do not infer them from a photo or face orientation. Before solving, the tool checks that mapped support-node translations remove all six rigid-body translations and rotations; this is only a restraint-rank check and does not prove elastic stability or physical support validity. It has no friction, contact or rotational support model. Provide either legacy single-case loads or up to eight named independent loadCases. Each case may combine uniform face tractions in N/mm² and resultant face loads with force N, application point mm and free moment N·mm. Resultant-load points must lie on their selected planar faces; free moments use a balanced equivalent nodal couple over that face. Optionally request one to three mesh refinement steps, each halving meshSizeMm; the job count is bounded to 12. Cases at the same mesh level are compared only when Gmsh reproduces an identical mesh byte for byte. Each case reports sampled trends for raw maximum von Mises stress and observed displacement (increasing, decreasing, unchanged, non-monotonic, or insufficient-levels), plus raw peak-locator centroid shifts. These are diagnostics only, never a convergence pass, strength pass or print approval.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
bodyIdYes
revisionYes
faceLoadsNo
loadCasesNo
meshSizeMmYes
poissonRatioYes
layerPlanePlanNo
materialCouponNo
resultantLoadsNo
supportFaceIdsNo
youngsModulusMPaYes
supportConditionsNo
meshRefinementStepsNo
orthotropicMaterialNo
poissonRatioEvidenceYes
youngsModulusEvidenceNo
factoredVonMisesAllowableMPaNo
factoredVonMisesAllowableBasisNo
factoredVonMisesAllowableEvidenceNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

A4.5/5.0
Behavior5/5

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

Annotations only declare readOnlyHint=false, openWorldHint=false, and destructiveHint=false; the description adds far more, including validation rules, rejection of unstable matrices, job and layer bounds, and the fact that outputs are diagnostic only and never constitute a failure verdict or print approval. It also discloses key limitations: no delamination, nonlinear response, fatigue, buckling, or convergence prediction. This is rich behavioral context beyond the annotations and does not contradict them.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely long, dense, and formatted as a wall of text with no headings or grouping. While the first sentence is front-loaded and many sentences carry relevant constraints, the overall length and lack of structure make it difficult to parse for an agent. It is over-specified rather than concise.

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 the 19 parameters, nested objects, 0% schema description coverage, and absence of an output schema, the description supplies a great deal of needed context, including evidence requirements, orientation semantics, layer-plan requirements, and diagnostic limitations. It is nearly complete, though it still omits explicit semantics for bodyId, revision, and meshSizeMm, and does not detail nested evidence fields. It is complete enough to use but not flawless.

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?

With 0% schema description coverage, the description must carry the full burden, and it does so for many parameters: youngsModulusMPa, poissonRatio, orthotropicMaterial fields, couponRecordId, tsaiWuQualificationRecordId, layerPlanePlan, supportFaceIds vs supportConditions, faceLoads, loadCases, and meshRefinementSteps. However, it leaves simple top-level fields like bodyId, revision, and meshSizeMm only implicitly described, and it does not detail the nested evidence object fields. It compensates substantially but not exhaustively.

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?

The opening sentence states a specific verb and resource ('Run bounded linear-elastic CalculiX analyses for one selected native Solid') and constrains scope to one material and one print process. It also distinguishes itself from the separate cohesive-interface analysis, which covers delamination, and from the coupon-matching prerequisite tool. An agent can tell what this tool is for without opening the schema.

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

Usage Guidelines5/5

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

The description is explicit about when to use each mode: isotropic vs orthotropic, when to call plasticity_match_material_coupon_data first, when to supply layerPlanePlan, when to bind a Tsai-Wu qualification record, and when to use the separate cohesive-interface analysis. It also states that orthotropic analyses reject von Mises allowables and that directional limits are required for an orthotropic screen. This goes well beyond implied usage.

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