PLAXIS-MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PLAXIS_HOST | No | Deprecated generic host for the PLAXIS server | |
| PLAXIS_PORT | No | Deprecated generic port for the PLAXIS server | |
| PLAXIS_ROLE | No | The role of the server: 'input' or 'output' | |
| PLAXIS_PASSWORD | No | Password for the PLAXIS server | |
| PLAXIS_INPUT_HOST | No | Host for the PLAXIS Input server (default 127.0.0.1) | |
| PLAXIS_INPUT_PORT | No | Port for the PLAXIS Input server (default 10000) | |
| PLAXIS_OUTPUT_HOST | No | Host for the PLAXIS Output server (default 127.0.0.1) | |
| PLAXIS_OUTPUT_PORT | No | Port for the PLAXIS Output server (default 10001) | |
| PLAXIS_BUNDLE_PYTHON | No | Path to the PLAXIS bundled Python interpreter | |
| PLAXIS_MCP_TRANSPORT | No | MCP transport; only 'stdio' is supported | stdio |
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
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| connectA | Connect to the pinned local PLAXIS endpoint. |
| disconnectA | Disconnect the current PLAXIS worker session. |
| connection_statusA | Get state for the pinned PLAXIS role. |
| list_membersA | List available attributes on a PLAXIS object path. |
| inspectB | Inspect a PLAXIS object or property. |
| project_infoA | Return common project metadata and units. |
| list_phasesA | Return a compact model-phase summary. |
| list_materialsA | Return a compact material summary. |
| list_objectsB | List the model objects of one kind, with the path to pass back. Each object carries |
| model_stateA | Report whether the model can be calculated, and what is stopping it. Read-only. Returns mesh status and element counts, the phase table
with each phase's marked-for-calculation flag, and any features
with no material assigned. |
| set_propertyA | Set a writable PLAXIS property using a dotted path. For a material reference such as Plate_1.Material use
assign_material instead -- PLAXIS needs a real object there, and no
string spelling of the material's name works through this tool.
Setting Identification renames the object, which changes the |
| call_methodA | Call an explicitly named PLAXIS method with literal positional arguments. Every argument must be a scalar literal (number, string, boolean, or null) -- there is no way to pass a reference to another PLAXIS object or phase through this tool. A string argument is sent to PLAXIS as a quoted text literal, not as a reference, so it cannot stand in for an object or phase parameter even when it names one. Use this only for methods whose PLAXIS command reference shows purely literal parameters; prefer list_objects, model_state, and the first-class tools over probing with dump. |
| new_projectB | Create a new PLAXIS project. |
| open_projectA | Open a PLAXIS project. An absolute path is used as given; a relative path (a bare filename) resolves against the working directory, so "model.p2dx" opens the project in the directory the session was started in. The result reports the resolved absolute path. |
| close_projectA | Close the active PLAXIS project. |
| recover_projectB | Recover the current PLAXIS project. |
| save_projectA | Save the active project, optionally to a new path. Omit filename to save the open project in place. An absolute filename is used as given; a relative one (a bare "model.p2dx") saves into the working directory the session was started in, not PLAXIS's own directory. The result reports the resolved absolute path. |
| create_phaseA | Create a new phase relative to an existing one. PLAXIS always has an InitialPhase; the first real phase is typically created with reference_phase="InitialPhase". |
| set_current_phaseA | Make an existing phase the current phase for further edits. |
| activateC | Activate one or more objects in one or more phases. |
| deactivateC | Deactivate one or more objects in one or more phases. |
| calculateA | Calculate phases. Omit phases to calculate every phase currently marked for calculation; provide phases to calculate exactly those phases regardless of their marked-for-calculation state. |
| view_resultsA | Open a calculated phase in the PLAXIS Output application. This is the only route from a calculated Input model to the Output endpoint's results: Output reads whatever its application has open, and the Output role deliberately has no open_project. Call this for a phase whose status is "calculated", then read results through the Output server. |
| set_phase_propertyA | Set a property of an object for one specific phase only. This is PLAXIS's phase-scoped setproperties form, distinct from set_property, which changes a property without phase scoping. |
| set_modeA | Switch the PLAXIS Input working mode. force_new_intersection is only meaningful for mode "mesh", "water", or "stages"; it is rejected for "soil" or "structures". |
| generate_meshB | Generate the mesh, optionally with a relative element size factor. enhanced_refinement requires relative_element_size to also be given. |
| create_pointA | Create one or more points at [x, y] coordinates. |
| create_lineA | Create a line, or a polyline through 3 or more vertices. Each vertex is either an [x, y] coordinate or the path of an existing point. Only the vertex-list form of the line command is implemented; the angle/relative/vector sub-command form is not. |
| create_polygonA | Create a polygon from 3 or more vertices. Each vertex is either an [x, y] coordinate or the path of an existing point. Only the vertex-list form is implemented; the polycurve-based form is not. |
| create_boreholeB | Add a borehole at the given x-coordinate. |
| create_soillayerC | Add a soil layer with the given height. |
| create_materialA | Create a material set. Omit properties to create a placeholder material that cannot be used to calculate until edited; provide a property/value map (matching PLAXIS's own property names, e.g. "SoilModel", "gammaUnsat") to create a usable material in one call. Property names are checked against the names PLAXIS 2D V22 exposes for that kind and are case-sensitive. "Identification" renames the material: after create_material(kind="soil", properties={"Identification": "SZ"}), the object's path is "SZ", and that is what every later call -- assign_material included -- must use. |
| assign_materialC | Assign a material to one or more features. |
| create_structural_elementA | Add a structural element feature to one or more existing lines. Only the add-to-existing-line form is implemented; creating a new line inline, or element-specific extra overloads, are not. Create the line first with create_line. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| role_status_resource | Return the state of this role-pinned PLAXIS worker. |
| compatibility_status_resource | Deprecated alias for clients that cannot select a role URI yet. |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- 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/yixuanzhong/PLAXIS-MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server