Skip to main content
Glama

cad_sim

Destructive

Analyze physical behavior by meshing, setting up, running, and inspecting FEA or kinematics simulations.

Instructions

Mesh, setup, run, inspect or delete a simulation.

聚合仿真操作。按 ``action`` 派发:mesh / setup / run / result / list / delete。
- ``mesh``: generate a hexa8 hex mesh of an entity's bounding box (pure
  Python, always available).
- ``setup``: register a simulation (``kind`` = fea or kinematics).
- ``run``: execute synchronously, or schedule an async batch job with
  ``async_run``. FEA (CalculiX) and kinematics (PyBullet) backends are
  optional — absent engines report ``requires_sim``.
- ``result`` / ``list`` / ``delete``: inspect or remove simulations.

When not to use: ``cad_sim`` analyzes physical behavior. For geometric
*validity* checks use ``cad_validate`` (geometry/interference); for
meshing previews that are pure geometry use ``cad_object`` (read).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
simYesSimulation action to perform, discriminated by `action`: mesh, setup, run, result, list or delete.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
bboxNoMeshed bounding box
kindNoSimulation kind
nameNoSimulation name
stateNoSimulation state
actionYesSimulation action executed
resultNoSimulation result payload
sim_idNoSimulation identifier
statusYesOperation status
messageNoStatus description
resultsNoSimulation summaries
node_countNoMesh node count
element_typeNoElement type
element_countNoMesh element count
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate destructive behavior (destructiveHint=true) and non-read-only. The description adds valuable context: mesh is 'pure Python, always available', FEA/kinematics backends are optional and absent engines report 'requires_sim', and run can schedule an async batch job. This goes beyond annotations without contradicting them.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is tightly packed with useful information: action list, backend constraints, and alternatives. It uses structure (bullets and bold) to aid scanning without redundancy. Every sentence contributes to selection or invocation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (multiple action variants, optional backends, async scheduling) and the presence of an output schema, the description covers all operational aspects: setup, run, mesh, result, list, delete, and when not to use it. No critical gaps identified.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with per-action descriptions for all fields. The description adds semantics by explaining the discriminated union (`action` dispatch) and clarifying backend requirements and always-available mesh. This enriches parameter understanding beyond the raw schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description opens with a specific verb+resource: 'Mesh, setup, run, inspect or delete a simulation.' It enumerates all actions and explicitly distinguishes from siblings by directing alternative use cases to cad_validate and cad_object. This is clear and well-differentiated.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit when-to-use guidance with a dedicated 'When not to use' section naming cad_validate (geometry/interference) and cad_object (pure geometry meshing previews). Also explains backend optionality (CalculiX/PyBullet) and async vs sync execution, which helps choose appropriate actions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

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/Tianshang301/TianshangCAD'

If you have feedback or need assistance with the MCP directory API, please join our Discord server