Skip to content

Radiology, Radiation Oncology & Computer-Assisted Surgery Reference ​

ModelScript provides first-class polyglot compilation, static safety verification (M9101–M9910), numerical simulation, and cross-domain projections for Radiology, Radiation Oncology, Biomechanics, and Computer-Assisted Surgery (CAS). All nine clinical engineering packages lower directly into the linear-memory DAEBuilder arena and interoperate with Modelica 3.x, SysML v2, OpenSCAD, ISO 10303-21 STEP, CalculiX/Abaqus, SBML, and ROS/Gazebo URDF.


1. Domain Package Matrix ​

PackageClinical DomainFile ExtensionsDiagnostic RangePrimary Projections
@modelscript/opensimMusculoskeletal Biomechanics & Surgical Rehabilitation.osimM9101–M9110Modelica 3.x (.mo), ROS/Gazebo URDF (.urdf), DAE Arena
@modelscript/dicom-rtClinical Radiotherapy (RTSTRUCT, RTPLAN, RTDOSE).rtplan, .rtstruct, .rtdose, .dicom-rtM9201–M9210OpenSCAD 3D CSG (.scad), SysML v2 (.sysml), DAE Arena
@modelscript/cellmlPhysiological & Electrophysiology Modeling (CellML 1.0/1.1/2.0).cellmlM9301–M9310Modelica 3.x (.mo), SBML Level 3 (.sbml), DAE Arena
@modelscript/febioSoft-Tissue Hyperelastic/Biphasic FEA & SOFA Surgical Scenes.feb, .scnM9401–M9410CalculiX/Abaqus (.inp), Modelica 3.x (.mo), DAE Arena
@modelscript/niftiVolumetric Medical Imaging & Segmentation (NIfTI-1/2 & NRRD).nii, .nrrd, .nhdrM9501–M9510OpenSCAD (.scad), ISO 10303-21 STEP (.stp), DAE Arena
@modelscript/topasMonte Carlo Proton/Hadrontherapy & Radiotherapy Physics.topas, .macM9601–M9610OpenSCAD (.scad), Modelica 3.x (.mo), DAE Arena
@modelscript/three-mfPatient-Specific Surgical Guides & 3D-Printed Implants (ISO/ASTM 52915).3mfM9701–M9710ISO 10303-21 STEP (.stp), OpenSCAD (.scad), DAE Arena
@modelscript/igtlOpenIGTLink & PLUS Toolkit Surgical Navigation & Tracking.igtl, .plus.xmlM9801–M9810ROS URDF (.urdf), Modelica 3.x (.mo), DAE Arena
@modelscript/owl2 (ontospm)OntoSPM / LapOntoSPM Surgical Process & Safety Ontology.ofn, .owl, .ontospmM9901–M9910SysML v2 (.sysml), OWL 2 Functional Syntax (.ofn)
Rendering diagram...

2. @modelscript/opensim — Musculoskeletal Biomechanics (.osim) ​

Parses OpenSim 3.x and 4.x XML (<OpenSimDocument>, <Model>, <BodySet>, <JointSet>, <ForceSet>, <MarkerSet>, <WrapObjectSet>, <ConstraintSet>), simulates Hill-type muscle-tendon equilibrium and multibody joint dynamics, and projects to Modelica 3.x and URDF.

Mathematical Foundations ​

  1. Neural Excitation-Contraction Activation Dynamics (Thelen 2003 / Millard 2012):

    dadt=u−aτ(a,u),τ(a,u)={τact(0.5+1.5a)u>aτdeact0.5+1.5au≤a
  2. Active & Passive Force-Length and Force-Velocity Equilibrium:

    fL(l~M)=exp(−(l~M−1)2γ),fPE(l~M)=exp⁡(kPE(l~M−1)/ϵ0M)−1exp⁡(kPE)−1FT=F0M(afL(l~M)fV(v~M)+fPE(l~M))cos⁡α

Diagnostic Rules (M9101–M9110) ​

CodeRule IDSeverityDescription
M9101opensim-unresolved-body-frameerrorJoint, marker, wrap object, or muscle path point references an undefined body frame.
M9102opensim-non-positive-body-masserrorBody specifies mass≤0 or non-positive principal moments of inertia (Ixx,Iyy,Izz≤0).
M9103opensim-kinematic-tree-cycleerrorKinematic joint graph contains a directed cycle or multiple parent joints without a <ConstraintSet> loop constraint.
M9104opensim-invalid-coordinate-rangeerrorCoordinate rangeMin >= rangeMax or defaultValue lies outside [rangeMin, rangeMax].
M9105opensim-invalid-muscle-parameterserrorMuscle maxIsometricForce <= 0, optimalFiberLength <= 0, or tendonSlackLength <= 0.
M9106opensim-excessive-pennation-angleerrorMuscle pennationAngleAtOptimal is outside [0,π/2) radians.
M9107opensim-insufficient-muscle-path-pointserrorMuscle has fewer than 2 path points or all path points attach to the exact same body frame.
M9108opensim-unresolved-wrap-objecterrorMuscle <PathWrap> references an undefined <WrapObject> identifier.
M9109opensim-invalid-time-constantswarningMuscle τact≤0, τdeact≤0, or τact>τdeact.
M9110opensim-duplicate-component-nameerrorDuplicate body, joint, coordinate, or muscle name declared in the model.

3. @modelscript/dicom-rt — Clinical Radiotherapy (.rtplan, .rtstruct, .rtdose) ​

Models DICOM-RT treatment plans, anatomical ROI contour stacks, linac Multi-Leaf Collimator (MLC) control points, and cumulative Dose-Volume Histograms (DVHs).

Mathematical Foundations ​

  1. Linear-Quadratic (LQ) Biologically Effective Dose (BED) & EQD2:

    BED=nd(1+dα/β),EQD2=BED1+2α/β

    where n is the number of fractions, d=D/n is the dose per fraction in Gy, and α/β is the tissue fractionation sensitivity (α/β=10 Gy for tumors, α/β=3 Gy for late-responding normal tissues).

  2. ICRU Report 83 Homogeneity Index (HI) & Paddick Conformity Index (CI):

    HI=D2%−D98%D50%,CIRTOG=VPIVVPTV,CIPaddick=(VPTV∩VPIV)2VPTV⋅VPIV

Diagnostic Rules (M9201–M9210) ​

| Code | Rule ID | Severity | Description | | :------ | :--------------------------------------- | :-------- | :--------------------------------------------------------------------------------------------------------- | ---------------------- | ------------------------------------------------------------------------------------------- | | M9201 | dicom-rt-missing-target-volume | error | Plan contains no clinical target volume ROI (PTV, CTV, or GTV). | | M9202 | dicom-rt-mlc-leaf-overlap | error | Opposite MLC leaf pair violates minimum physical gap (bankB−bankA<0.5 mm). | | M9203 | dicom-rt-mlc-speed-exceeded | error | MLC leaf speed between consecutive control points exceeds physical motor limit (25.0 mm/s). | | M9204 | dicom-rt-gantry-couch-collision | error | Non-coplanar couch angle ($ | \theta_{\text{couch}} | > 15^\circ$) combined with lateral/posterior gantry angle enters the collision hazard zone. | | M9205 | dicom-rt-oar-dose-constraint-violated | error | Organ-at-Risk (ORGAN) DVH exceeds clinical QUANTEC maxDoseLimitGy or meanDoseLimitGy. | | M9206 | dicom-rt-non-monotonic-cum-meterset | error | Control point cumulativeMetersetWeight sequence is not monotonically non-decreasing from 0.0 to 1.0. | | M9207 | dicom-rt-unclosed-roi-contour | error | CLOSED_PLANAR contour slice contains fewer than 3 vertices. | | M9208 | dicom-rt-unresolved-frame-of-reference | error | RTSTRUCT or RTDOSE FrameOfReferenceUID does not match the RTPLAN FrameOfReferenceUID. | | M9209 | dicom-rt-invalid-beam-meterset | error | TREATMENT beam specifies metersetMu <= 0 or energyMeV <= 0. | | M9210 | dicom-rt-ptv-underdosage | warning | Target PTV D95% is less than 95% of prescribedDoseGy. |


4. @modelscript/cellml — Cellular Electrophysiology & Systems Physiology (.cellml) ​

Supports CellML 1.0, 1.1, and 2.0 component networks, 7-dimensional SI unit verification, Content MathML 2.0 ODEs (Hodgkin-Huxley, Noble, Ten Tusscher cardiac electrophysiology, microvascular hemodynamics), and projections to Modelica 3.x and SBML Level 3.

Mathematical Foundations ​

d(u)=[dAdKdkgdmdmoldsdcd]T∈R7,CmdVmdt=−∑kgkmkpkhkqk(Vm−Ek)+Istim(t)

Diagnostic Rules (M9301–M9310) ​

CodeRule IDSeverityDescription
M9301cellml-missing-model-nameerror<model> element is missing a non-empty name attribute.
M9302cellml-unresolved-unitserrorVariable or <unit> references an undeclared or non-standard CellML unit name.
M9303cellml-interface-direction-conflicterror<map_variables> connects variables with incompatible interface directions (e.g. both in or none).
M9304cellml-unit-dimensional-mismatchwarningMapped variables in <map_variables> have incompatible 7-element SI base unit dimension vectors.
M9305cellml-uninitialized-state-variablewarningDifferential state variable (ODE) lacks an initial_value attribute.
M9306cellml-encapsulation-hierarchy-cycleerrorCircular component reference detected in <encapsulation> hierarchy.
M9307cellml-unresolved-connection-membererror<connection> references an undeclared component or variable name.
M9308cellml-overconstrained-variableerrorVariable with an in interface or prior assignment is assigned by an equation or ODE.
M9309cellml-undefined-math-cierrorContent MathML <ci> references an identifier not declared in the enclosing <component>.
M9310cellml-duplicate-variable-or-componenterrorDuplicate <component> or <variable> name declared within the same scope.

5. @modelscript/febio — Soft-Tissue Biomechanics & SOFA Surgical Simulation (.feb, .scn) ​

Parses FEBio 2.5–4.0 (.feb) continuum biomechanics models and SOFA Framework (.scn) real-time surgical simulation scene graphs. Evaluates Neo-Hookean, Mooney-Rivlin, Ogden, and Holzapfel-Gasser-Ogden (HGO) anisotropic arterial wall strain energy functions, plus biphasic poroelasticity.

Mathematical Foundations ​

ΨMR(I¯1,I¯2,J)=c1(I¯1−3)+c2(I¯2−3)+K2(ln⁡J)2,q=−k∇p

Diagnostic Rules (M9401–M9410) ​

CodeRule IDSeverityDescription
M9401febio-invalid-material-constanterrorNon-physical material constant (E≤0, ν∉(−1,0.5), ρ≤0, or c1+c2≤0).
M9402febio-inverted-element-jacobianerrorTetrahedral (tet4) or hexahedral (hex8) element has non-positive Jacobian determinant (det(J)≤0).
M9403febio-unresolved-node-or-seterrorElement connectivity, boundary condition, or load references an undefined node ID, <NodeSet>, or <Surface>.
M9404febio-unconstrained-rigid-bodywarningModel defines no fixed or prescribed displacement boundary conditions to constrain rigid-body motion.
M9405febio-invalid-biphasic-permeabilityerrorBiphasic/poroelastic tissue material specifies permeability k≤0 or solid volume fraction ϕs∉(0,1).
M9406febio-invalid-time-steppererror<Control> specifies time_steps <= 0 or step_size <= 0.
M9407febio-unresolved-material-iderror<SolidDomain> or element block references an undeclared material ID.
M9408febio-contact-penalty-invaliderrorContact interface specifies a non-positive penalty factor or empty primary/secondary surface.
M9409febio-sofa-missing-mechanical-objecterrorSOFA <Node> contains a force field without a <MechanicalObject> state container.
M9410febio-duplicate-entity-iderrorDuplicate node, element, or material identifier.

6. @modelscript/nifti — Volumetric Medical Imaging (.nii, .nrrd, .nhdr) ​

Parses NIfTI-1/NIfTI-2 headers and NRRD volumetric descriptors, validates qform quaternion and sform 4×4 RAS affine transformations, extracts segmented anatomical iso-surfaces, and projects to OpenSCAD and ISO 10303-21 STEP.

Mathematical Foundations ​

[xRASyRASzRAS1]=[R(q)diag(Δx,Δy,qfacΔz)qoffset0T1][ijk1],a=max(0,1−(b2+c2+d2))

Diagnostic Rules (M9501–M9510) ​

| Code | Rule ID | Severity | Description | | :------ | :-------------------------------------- | :-------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------- | ------------ | | M9501 | nifti-invalid-dimensions | error | Volume dimension dim[0] is outside [1, 7] or spatial dimensions nx,ny,nz≤0. | | M9502 | nifti-non-positive-voxel-spacing | error | Voxel spacing pixdim[1..3] or NRRD space directions norm is ≤0 mm. | | M9503 | nifti-singular-affine-transform | error | 4×4 sform affine transformation matrix is singular ($ | \det(\mathbf{A}) | < 10^{-9}$). | | M9504 | nifti-invalid-quaternion-norm | error | Quaternion parameters satisfy b2+c2+d2>1.0. | | M9505 | nifti-qform-sform-handedness-mismatch | error | Active qform and sform transforms have opposite coordinate handedness (sign(qfac)≠sign(det(Asform))). | | M9506 | nifti-zero-intensity-scale-slope | error | scl_slope is explicitly 0 while intensity scaling is active. | | M9507 | nifti-unsupported-datatype | error | Unrecognized or unsupported NIfTI/NRRD voxel datatype code. | | M9508 | nifti-voxel-data-size-mismatch | error | Voxel payload count does not match nx×ny×nz×nt. | | M9509 | nifti-empty-segmentation-mask | warning | Segmentation labelmap contains zero foreground voxels across all anatomical labels. | | M9510 | nifti-anisotropic-slice-gap-warning | warning | Slice thickness Δz exceeds in-plane resolution min(Δx,Δy) by more than 5×. |


7. @modelscript/topas — Monte Carlo Proton & Hadrontherapy (.topas, .mac) ​

Parses TOPAS (Ge/, So/, Sc/, Ph/, Ma/, Tf/) parameter files and GATE (.mac) macros, verifies hierarchical CSG beamline geometry containment, and computes analytical Bortfeld (1997) proton/carbon-ion Bragg peak depth-dose profiles.

Mathematical Foundations ​

R0=αE0p(α≈0.0022 cm⋅MeV−p,p≈1.77),−dEdz∝z2β2[ln(2mec2β2I(1−β2))−β2]

Diagnostic Rules (M9601–M9610) ​

CodeRule IDSeverityDescription
M9601topas-type-prefix-mismatcherrorParameter value does not match its declared TOPAS type prefix (d:, i:, b:, s:, dv:, iv:, sv:).
M9602topas-unresolved-parent-componenterrorGeometry component Parent references an undeclared parent volume.
M9603topas-non-positive-geometry-dimensionerrorBox/Cylinder/Sphere dimension (HLX, HLY, HLZ, RMax, HL) is ≤0, or RMin >= RMax.
M9604topas-child-exceeds-parent-boundserrorChild geometry translation plus half-lengths protrude outside the parent volume bounding box.
M9605topas-undefined-materialerrorComponent Material references an unknown material not in Geant4/NIST or custom Ma/<Name> definitions.
M9606topas-invalid-beam-energyerrorParticle source BeamEnergy <= 0 MeV or negative energy spread.
M9607topas-circular-include-fileerrorCircular or self-referential includeFile chain detected.
M9608topas-scorer-missing-componenterrorScorer Sc/<Name>/Component or Quantity is missing or references an undeclared geometry volume.
M9609topas-vector-length-mismatcherrorVector parameter (dv:, iv:, sv:) element count does not match its declared length token.
M9610topas-duplicate-parameter-assignmentwarningIdentical parameter path is assigned multiple times in the same file without an override qualifier.

8. @modelscript/three-mf — Patient-Specific 3D-Printed Surgical Guides & Implants (.3mf) ​

Parses ISO/ASTM 52915 3MF models (<model>, <resources>, <mesh>, <vertices>, <triangles>, <build>, and <surgical_guide> osteotomy/drill sleeve annotations), verifies 2-manifold watertightness and signed volume, and projects to ISO 10303-21 STEP and OpenSCAD.

Mathematical Foundations ​

χ=V−E+F=2−2g,Vsigned=16∑k=1Fvk,1⋅(vk,2×vk,3)>0

Diagnostic Rules (M9701–M9710) ​

CodeRule IDSeverityDescription
M9701three-mf-non-manifold-edgeerrorMesh is not a closed 2-manifold (contains open boundary edges or edges shared by ≠2 triangles).
M9702three-mf-degenerate-triangleerrorTriangle has duplicate vertex indices or zero surface area (|e1×e2|<10−12).
M9703three-mf-negative-mesh-volumeerrorMesh has inverted outward face normals resulting in non-positive signed volume (V≤0).
M9704three-mf-unresolved-build-objecterror<build><item objectid="..."/> references an undefined <object> ID.
M9705three-mf-wall-thickness-violationerrorSurgical guide or cannula wall thickness is below the 0.8 mm additive manufacturing safety threshold.
M9706three-mf-invalid-osteotomy-guide-axiserrorOsteotomy cutting plane normal or drill sleeve axis vector has zero length.
M9707three-mf-missing-biocompatible-materialerrorMedical implant or surgical guide lacks an approved ISO 10993 / USP Class VI biocompatible material (Ti-6Al-4V, PEEK, BioMed Amber, etc.).
M9708three-mf-singular-item-transformerror<item transform="..."/> 4×3 affine transformation matrix has det(M)≤0.
M9709three-mf-out-of-bounds-vertex-indexerrorTriangle vertex index vi<0 or vi≥Nvertices.
M9710three-mf-duplicate-object-iderrorDuplicate <object id="..."/> declared in <resources>.

Parses PLUS Toolkit (<PlusConfiguration>, <DeviceSet>, <CoordinateDefinitions>, <PlusOpenIGTLinkServer>, <PivotCalibration>, <FiducialRegistration>) and OpenIGTLink transform streams. Solves SE(3) coordinate frame chains, least-squares stylus pivot calibration, and Fitzpatrick (1998) Target Registration Error (TRE).

Mathematical Foundations ​

  1. Least-Squares Stylus Pivot Calibration:

    [R1−I3⋮⋮RM−I3][ptipppivot]=[−t1⋮−tM]
  2. Fitzpatrick (1998) Target Registration Error (TRE):

    ⟨TRE2(r)⟩=⟨FLE2⟩N(1+13∑k=13dk2fk2),⟨FRE2⟩=(1−2N)⟨FLE2⟩

Diagnostic Rules (M9801–M9810) ​

CodeRule IDSeverityDescription
M9801igtl-non-orthogonal-rotationerrorUpper-left 3×3 rotation block R violates |RTR−I3|F>10−3 or det(R)≤0.
M9802igtl-invalid-homogeneous-bottom-rowerrorBottom row of 4×4 homogeneous matrix is not [0, 0, 0, 1].
M9803igtl-disconnected-coordinate-frameerrorCoordinate frame graph is disconnected or lacks a path for a requested <Transform Name="...To..."/>.
M9804igtl-cyclic-transform-chainerror<CoordinateDefinitions> contains a directed cycle in frame definitions.
M9805igtl-excessive-registration-errorwarningCalibration or fiducial registration RMS error (FRE / TRE) exceeds 2.0 mm.
M9806igtl-invalid-acquisition-rateerrorTracker or ultrasound device AcquisitionRate <= 0 Hz.
M9807igtl-unresolved-device-or-channelerror<Device> or <PlusOpenIGTLinkServer> references an undeclared device or channel ID.
M9808igtl-self-transform-identity-mismatcherrorTransform with From == To is not the 4×4 identity matrix.
M9809igtl-invalid-server-porterrorOpenIGTLink server ListeningPort is outside the valid TCP range [1024, 65535].
M9810igtl-duplicate-transform-edgeerrorDuplicate <Transform> declared for the same (From, To) coordinate frame pair.

10. @modelscript/owl2 (ontospm) — OntoSPM Surgical Process Ontology ​

Models surgical workflows (Procedure → Phase → Step → Action + Instrument + AnatomicalStructure), enforces Critical View of Safety (CVS) verification before irreversible tissue division, and detects monopolar thermal spread hazards near critical neurovascular structures.

Diagnostic Rules (M9901–M9910) ​

CodeRule IDSeverityDescription
M9901ontospm-missing-critical-safety-viewerrorIrreversible action (Clipping, Cutting, Transection, Resection) on a critical neurovascular or biliary structure executes without a verified SafetyCheckpoint (Critical View of Safety).
M9902ontospm-instrument-action-incompatibilityerrorSurgical step pairs an instrument category with an incompatible surgical action verb (e.g. ClipApplier performing Suturing).
M9903ontospm-phase-transition-cycleerrorSurgical phase transition graph contains a directed cycle.
M9904ontospm-unresolved-anatomical-targeterrorSurgical step references an undeclared anatomical structure ID.
M9905ontospm-unresolved-instrument-referenceerrorSurgical step references an undeclared surgical instrument ID.
M9906ontospm-missing-hemostasis-or-closurewarningInvasive surgical procedure lacks a terminal Hemostasis or Closure phase.
M9907ontospm-bipolar-monopolar-energized-near-nerveerrorMonopolar electrosurgical instrument is energized within 5.0 mm of a critical nerve or artery.
M9908ontospm-non-positive-step-durationerrorSurgical step specifies an expected duration ≤0 s.
M9909ontospm-unreachable-surgical-phasewarningSurgical phase is unreachable from the initial preparation/exposure phase.
M9910ontospm-duplicate-entity-irierrorDuplicate OntoSPM entity identifier declared in the surgical procedure.

11. Command-Line Interface (msx) Usage ​

bash
# 1. OpenSim Musculoskeletal Biomechanics
npx msx opensim validate Arm26.osim
npx msx opensim simulate Arm26.osim
npx msx opensim to-modelica Arm26.osim > Arm26.mo
npx msx opensim to-urdf Arm26.osim > Arm26.urdf

# 2. DICOM-RT Radiation Oncology & Dosimetry
npx msx dicom-rt validate ProstateVMAT.rtplan
npx msx dicom-rt dosimetry ProstateVMAT.rtplan
npx msx dicom-rt to-scad ProstateVMAT.rtplan > ProstateVMAT.scad
npx msx dicom-rt to-sysml ProstateVMAT.rtplan > ProstateVMAT.sysml

# 3. CellML Electrophysiology & Microvascular Perfusion
npx msx cellml validate HodgkinHuxley.cellml
npx msx cellml simulate HodgkinHuxley.cellml
npx msx cellml to-modelica HodgkinHuxley.cellml > HodgkinHuxley.mo
npx msx cellml to-sbml HodgkinHuxley.cellml > HodgkinHuxley.sbml

# 4. FEBio & SOFA Soft-Tissue Biomechanics
npx msx febio validate LiverHyperelastic.feb
npx msx febio solve LiverHyperelastic.feb
npx msx febio to-inp LiverHyperelastic.feb > LiverHyperelastic.inp

# 5. NIfTI & NRRD Volumetric Medical Imaging
npx msx nifti validate BrainAtlas.nii
npx msx nifti mesh BrainAtlas.nii
npx msx nifti to-step BrainAtlas.nii > BrainAtlas.stp

# 6. TOPAS & GATE Hadrontherapy Monte Carlo
npx msx topas validate ProtonNozzle.topas
npx msx topas bragg-peak ProtonNozzle.topas
npx msx topas to-scad ProtonNozzle.topas > ProtonNozzle.scad

# 7. 3MF Medical Surgical Guides & Implants
npx msx three-mf validate MandibleOsteotomyGuide.3mf
npx msx three-mf topology MandibleOsteotomyGuide.3mf
npx msx three-mf to-step MandibleOsteotomyGuide.3mf > MandibleOsteotomyGuide.stp

# 8. OpenIGTLink & PLUS Surgical Navigation
npx msx igtl validate LaparoscopicTracker.plus.xml
npx msx igtl calibrate LaparoscopicTracker.plus.xml
npx msx igtl to-urdf LaparoscopicTracker.plus.xml > SurgicalTracker.urdf

12. IDE Custom Editors & MCP Agent Tools ​

Visual Custom Editor Providers (@modelscript/ide-client) ​

  • OpenSimEditorProvider (modelscript.opensimEditor): Interactive musculoskeletal kinematic chain diagram, Hill-type muscle force-length/force-velocity curves, RK4 tendon force trajectories, and one-click export to Modelica 3.x (.mo) and ROS URDF (.urdf).
  • DicomRtEditorProvider (modelscript.dicomRtEditor): Cumulative Dose-Volume Histogram (DVH) plotter, ICRU 83 HI / Paddick CI / LQ BED / EQD2 dashboard, Beam's Eye View (BEV) Multi-Leaf Collimator (MLC) aperture SVG, and one-click export to OpenSCAD (.scad) and SysML v2 (.sysml).
  • IgtlEditorProvider (modelscript.igtlEditor): SE(3) coordinate frame chain topology viewer, rotation matrix orthogonality auditor, least-squares stylus pivot calibration & Fitzpatrick TRE panel, and one-click export to ROS URDF (.urdf) and Modelica 3.x (.mo).

Model Context Protocol (@modelscript/mcp) Tools ​

MCP Tool NameInput SchemaCapabilities
opensim_analyze{ opensimContent, duration?, dt? }Parses .osim models, runs M9101–M9110 lints, lowers to DAEBuilder, and integrates Hill-type muscle & coordinate trajectories.
dicom_rt_verify_dvh{ dicomRtContent }Evaluates RTPLAN/RTSTRUCT/RTDOSE documents, checks M9201–M9210 QUANTEC & MLC safety rules, and computes DVH, BED, EQD2, HI, and CI.
cellml_simulate{ cellmlContent, duration?, dt? }Verifies 7-dimensional SI unit consistency (M9301–M9310), lowers to DAEBuilder, and integrates cellular electrophysiology ODEs.
igtl_verify_calibration{ igtlContent }Audits SE(3) transforms (M9801–M9810), solves shortest transform chains, stylus pivot calibration RMS error, and Fitzpatrick TRE.
three_mf_verify_guide{ threeMfContent }Verifies 3MF surgical guides & implants (M9701–M9710) for 2-manifold watertightness, Euler characteristic χ, wall thickness, and osteotomy axes.

Open-Core under the GNU AGPL v3 License; Enterprise Edition (ee/) under the ModelScript Enterprise License. • Pricing • Trademark Policy