Skip to main content
Glama
codersag

Mechanical MCP Server

by codersag

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
connect_to_mechanicalB

Connect to ANSYS Mechanical via gRPC. Args: port: gRPC port reported by Workbench (changes every session)

disconnect_from_mechanicalA

Disconnect from Mechanical, leaving the session running. Args: shutdown (True also closes Mechanical itself - unsaved work is lost)

check_mechanical_connectionB

Check connection status.

get_model_infoB

Get model info: bodies, named selections, analyses.

list_materialsB

List all materials in Engineering Data.

assign_materialC

Assign material to a body. Args: body_name, material_name

set_mesh_element_sizeC

Set global mesh element size in mm. Args: element_size_mm

generate_meshB

Generate mesh. Visible live in Mechanical GUI.

get_mesh_statisticsB

Get mesh node and element counts.

add_fixed_supportC

Add Fixed Support to a named selection. Args: named_selection, analysis_index

add_forceC

Add Force load in Newtons. Args: named_selection, fx_n, fy_n, fz_n, analysis_index

add_pressureC

Add Pressure load in Pascals. Args: named_selection, magnitude_pa, analysis_index

list_boundary_conditionsC

List all boundary conditions. Args: analysis_index

solve_analysisA

Solve the analysis. Progress visible in GUI. Returns solver messages. Args: analysis_index, wait (False submits and returns at once - then poll get_solve_status; use it for solves longer than the client call timeout)

get_solve_statusC

Get solve status. Args: analysis_index

add_total_deformation_all_modesC

Add Total Deformation for all modal modes. Args: num_modes, analysis_index

add_total_deformationC

Add Total Deformation result. Args: mode (0=not modal), analysis_index

get_modal_frequenciesA

Get natural frequencies from a modal analysis.

Frequencies are only readable through result objects. When none exist the tool used to return an empty list with ok:true, which reads as "this model has no modes" rather than "nobody asked for the results yet". Args: analysis_index, add_results_if_missing (add Total Deformation results and evaluate them when the solution has none)

generate_reportC

Generate simulation report. Args: output_path, analysis_index, fmt (docx or txt)

run_mechanical_scriptC

Run custom Python script inside Mechanical ACT API. Args: script

list_named_selectionsB

List all named selections with face/body counts.

delete_named_selectionC

Delete a named selection by name. Args: name

suppress_bodiesA

Suppress or unsuppress bodies by name prefix (empty = all bodies). Args: name_prefix, suppress (True=suppress, False=unsuppress)

list_point_massesA

List all Point Masses with CG, mass, pinball and scoped named selection.

add_frictionless_supportC

Add Frictionless Support. Args: named_selection, analysis_index

add_displacementC

Add Displacement BC. Pass None for a DOF to leave it free. Args: named_selection, x_mm, y_mm, z_mm (None=free), analysis_index

add_remote_displacementC

Add Remote Displacement BC. Pass None for a DOF to leave it free. Args: named_selection, x_mm, y_mm, z_mm, rot_x_deg, rot_y_deg, rot_z_deg, analysis_index

add_standard_gravityC

Add Standard Earth Gravity. Direction vector defaults to -Y (down). Args: analysis_index, x_component, y_component, z_component (unit vector)

add_remote_forceC

Add Remote Force load. Args: named_selection, fx_n, fy_n, fz_n, analysis_index

add_momentC

Add Moment load in N·m. Args: named_selection, mx_nm, my_nm, mz_nm, analysis_index

add_equivalent_stressC

Add Equivalent (von Mises) Stress result, optionally scoped to a named selection. Args: named_selection (empty = whole model), analysis_index

add_directional_deformationC

Add Directional Deformation result. Args: axis (X/Y/Z), named_selection, analysis_index

add_principal_stressC

Add Principal Stress result. Args: which (max/mid/min), analysis_index

add_stress_toolC

Add Stress Tool (safety factor, stress ratio) using material limits. Args: analysis_index

add_reaction_forceC

Add Force Reaction probe at a named selection. Args: named_selection, analysis_index

convert_prefix_to_point_massB

Convert all unsuppressed bodies whose name starts with body_name_prefix to a combined Point Mass, then create a Named Selection of all coplanar attachment faces on the nearest structural surface. No ACT extensions required. Args: body_name_prefix, proximity_multiplier (default 3.0)

convert_part_to_point_massB

Convert all unsuppressed bodies inside a named Part to a combined Point Mass, then create a Named Selection of all coplanar attachment faces on the nearest structural surface. No ACT extensions required. Args: part_name, proximity_multiplier (default 3.0)

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3/5.0

Scored across 37 tools

Disambiguation4/5

Most tools target distinct resources and actions across connection, modeling, boundary conditions, solving, and results. A few result-probe tools are conceptually close (e.g. add_total_deformation vs add_total_deformation_all_modes, add_stress_tool vs add_equivalent_stress), but descriptions generally make the intended use clear.

Naming Consistency5/5

All tools use snake_case and nearly all follow a verb_noun pattern (add_force, get_model_info, list_materials, generate_mesh). The few deviations, such as run_mechanical_script or solve_analysis, remain readable and consistent with the overall convention.

Tool Count2/5

37 tools is a heavy surface for an MCP server and exceeds the rubric's 25+ threshold for being too many. While ANSYS Mechanical is broad, several result and BC tools could be consolidated or handled through the existing script escape hatch.

Completeness4/5

The server covers the main simulation lifecycle: connect, inspect model, assign materials, mesh, add loads/BCs, solve, add results, and generate reports. Notable gaps remain in generic create/update/delete for named selections and boundary conditions, but run_mechanical_script provides a workaround for many missing operations.

Maintenance

ActivityMaintained
ResponsivenessNo issues