beam-analysis
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| CCX_PATH | No | Explicit path to the CalculiX ccx executable | |
| FREECAD_CMD | No | Explicit path to freecadcmd | |
| BEAM_MCP_OUTPUT | No | Default directory for exported .FCStd / .inp files (default ~/beam-mcp-output) |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| check_environmentA | Report availability of the built-in solver, CalculiX (ccx) and FreeCAD (freecadcmd) on this machine. |
| create_modelA | Create a new empty structural model. Use add_nodes/add_material/add_section/add_members/add_supports/add_loads to build it, or use generate_structure for common typologies. |
| list_structure_presetsA | List parametric structure generators (bridge and building typologies) with their default parameters. |
| generate_structureA | Create a complete model (geometry, sections, supports, loads) from a parametric typology preset: beam_bridge, truss_bridge (pratt/howe/warren), arch_bridge, cable_stayed_bridge, portal_frame, moment_frame_building, braced_frame_building, roof_truss. Params override preset defaults (see list_structure_presets). |
| add_nodesA | Add nodes to a model. Coordinates in meters, global +Z up. Node ids are optional (auto-assigned integers). |
| add_materialA | Add a material. E = Young's modulus [Pa], nu = Poisson ratio, density [kg/m3] (needed for self-weight), fy = yield/design strength [Pa] (needed for utilization checks). Example steel: E=210e9, nu=0.3, density=7850, fy=355e6. |
| add_sectionA | Add a cross-section. Shapes and required params [m]: rectangle{b,h}, box{b,h,t}, pipe{d,t}, circle{d}, isection{b,h,tf,tw}, generic{A,Iy,Iz,J[,cy,cz]}. Convention: b = width (local y), h = depth (local z); for horizontal members local z is vertical, so Iy is the strong axis for gravity bending. Valid shapes: rectangle, box, pipe, circle, isection, generic. |
| add_membersA | Add beam or truss members between existing nodes. type "beam" (default, 6 DOF frame element) or "truss" (axial only, for braces/cables/truss webs). rollDeg rotates the section about the member axis. |
| add_supportsB | Add supports at nodes. type is one of fixed, pinned, roller, roller-yz, planar-xz, or a 6-character 0/1 string for (ux,uy,uz,rx,ry,rz), e.g. "111100". "roller-yz" is a typical bridge sliding bearing; "planar-xz" restrains out-of-plane DOFs for 2D models in the XZ plane. |
| add_loadsA | Add nodal loads [N, N·m], member uniformly distributed loads [N/m], and/or set the self-weight factor (1 = full gravity). Downward = negative fz/wz. UDL sys "global" (default) or "local" (member axes). |
| analyzeA | Run linear-static analysis. engine "beam" = built-in 3D direct-stiffness solver (fast, exact for Euler-Bernoulli frames); "calculix" = CalculiX FEM (B32R beam elements); "both" = run both and compare max displacements. Returns displacements, reactions, member force envelopes, stresses and utilization (stress/fy). |
| get_resultsA | Retrieve detailed results from the last analysis: "displacements" (per node), "reactions" (per support), or "member_forces" (end forces + envelopes per member). Optionally filter by ids. |
| export_freecadA | Build a solid 3D representation of the model (member solids + support markers) and save it as a FreeCAD .FCStd document you can open in FreeCAD. Runs headless freecadcmd; takes ~5-20 s. |
| export_calculix_inpB | Write the CalculiX .inp input deck for the model (B32R beam elements) without running the solver. |
| model_infoB | Summary of a model: counts, materials, sections, loads, bounding box. |
| list_modelsA | List all models in this session. |
| delete_modelC | Delete a model from the session. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/StructuralWizard/beam-analysis-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server