Solve a structural model
solve_modelRead-only
Run the FERS FEM solver on a structural model. Input is the full model JSON (as a string). Returns displacements, internal forces and reactions. On this hosted server the solve does NOT run here: the tool validates the model, parks it and returns an open_url that solves it in the user's browser, where the results are shown. Tell the user to open the link; for results inside the chat they can install the local FERS MCP server. Results are returned at detail: standard by default — ask for 'summary' when you only need peak values, and 'full' only when you genuinely need every sample point.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| model | No | Stringified JSON of the FERS structural model | |
| detail | No | How much result data to return. 'summary' (peak forces, displacements and reactions with where they occur — smallest, usually enough), 'standard' (default: envelopes + node displacements + reactions), or 'full' (adds section forces and the complete internal-force series; can be hundreds of thousands of tokens on a real model). | |
| model_ref | No | Handle from stash_model, used INSTEAD of `model`. Avoids sending the whole document on every step; the tool returns the same handle back. | |
| result_filter | No | Advanced: emit only these result blocks, overriding `detail`. Any of: local_envelopes, global_envelopes, local_end_forces, global_end_forces, section_forces, internal_force_series, local_displacements, node_displacements, reactions. An empty list is a maximal strip. Unity checks, summaries and diagnostics are never filtered. | |
| include_report | No | Embed the rendered HTML hand-calc report in the response. Default false — it is large. Use the free render_report tool on a saved result instead. | |
| idempotency_key | No | Optional. Reuse the same value when retrying a solve so the retry is recognised as the same request. |