ABAQUS MCP Pro
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@ABAQUS MCP ProSubmit the cantilever job and extract max von Mises stress from ODB"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
ABAQUS MCP Pro
Professional MCP server suite for Abaqus/CAE -- 100+ tools, dual transport, capsule tracking, physics contracts, and skills integration (Codex, Claude, etc.).
Architecture
MCP Client (Codex/Claude)
|
v stdio
mcp server (server.py) <-- abaqus-mcp-pro package
|
v TCP socket (localhost:48152)
Abaqus GUI plugin (gui_plugin.py / agent.py)
|
v Abaqus Python API
Abaqus/CAE KernelThe MCP server runs as a subprocess of the AI client. When the client invokes a tool (e.g. run_python), the server forwards the request over a TCP socket to a lightweight agent running inside Abaqus/CAE. The agent executes the code in the Abaqus Python kernel and returns results.
Related MCP server: COMSOL MCP Server
Features
TCP socket bridge -- 10-50ms latency vs 100-200ms for file-based IPC
AST error diagnostics -- auto-analyzes KeyError, AttributeError, NameError, TypeError and suggests fixes
22 MCP tools -- Full Abaqus automation: model query, job management, ODB inspection, KPI extraction, capsule tracking, physics contracts, report generation, viewport capture
13 MCP prompts -- Guided workflows for static, dynamic, modal, thermal, contact, fatigue, coupled, optimization, material, mesh, ODB extraction, and job debugging
74 MCP resources -- Session telemetry, skills knowledge base, CAE-Agent-Hub integration
3 CLI tools -- check, doctor, setup
Dual transport -- TCP socket (primary) + file IPC (fallback)
noGUI mode -- run Abaqus in batch mode without GUI
Installation
Prerequisites
Python 3.10+
Abaqus 2024+ (with Python 3.10)
MCP-compatible AI client (Codex, Claude Desktop, etc.)
Install the package
pip install -e .Install the Abaqus GUI plugin
abaqus-mcp-pro-setupOr manually copy src/abaqus_mcp_pro/gui_plugin.py to your Abaqus plugins directory (typically ~/abaqus_plugins/).
Usage
1. Start Abaqus/CAE
Launch Abaqus/CAE normally. Then activate the plugin:
Plug-ins > ABAQUS MCP Pro > Start MCP Bridge
2. Configure your MCP client
Add to your MCP client configuration (e.g. mcp_config.json for Codex):
{
"mcpServers": {
"abaqus-mcp-pro": {
"command": "abaqus-mcp-pro-server",
"args": []
}
}
}3. Use the tools
Once connected, the AI client can use any of the 22 tools:
Tool | Description |
| Check if the bridge is reachable + session status |
| Human-readable connection status |
| Execute arbitrary Python code in Abaqus kernel |
| Compatibility wrapper returning stdout text |
| Change the Abaqus working directory |
| List parts, materials, steps, loads, BCs |
| List all jobs and their status |
| Submit a job and wait for completion |
| Tail .sta/.msg diagnostics |
| Solver Doctor: 40+ error patterns auto-diagnosis |
| Read-only ODB: frame, variable, section info |
| Compatibility wrapper for inspect_odb |
| ODB Lens: extract KPI values (stress, displacement, etc.) |
| Save experiment state snapshot (Capsule) |
| List all saved experiment capsules |
| Load a saved experiment capsule |
| Delete a saved experiment capsule |
| Diff two capsules (model, KPI, file changes) |
| Validate physics contracts (range, threshold, pct change) |
| Generate simulation report (Markdown) |
| Capture viewport as base64 image (PNG/TIFF/SVG) |
| Compatibility wrapper returning data URI |
noGUI Mode
Run Abaqus in batch mode with the TCP agent:
abaqus cae noGUI=scripts/start_abaqus_mcp_pro_agent.pyOr with the file IPC fallback:
abaqus cae noGUI=scripts/start_abaqus_mcp_pro_ipc.pyCLI Diagnostics
# Check connectivity to the running Abaqus bridge
abaqus-mcp-pro-check
# Full diagnostics
abaqus-mcp-pro-doctor
# Install/update GUI plugin
abaqus-mcp-pro-setupEnvironment Variables
Variable | Default | Description |
|
| TCP host for the bridge |
|
| TCP port for the bridge |
|
| Socket timeout in seconds |
|
| Max message size |
|
| Plugin install directory |
| auto-detect | Working directory for file IPC |
Examples
See the examples/ directory for Abaqus Python scripts:
abaqus_cantilever_classic.py-- Cantilever beam static analysisabaqus_tensile_bar_classic.py-- Tensile bar with neckingshow_tensile_result_viewport.py-- Post-processing visualization
Project Structure
abaqus-mcp-pro/
+-- pyproject.toml # Package metadata
+-- README.md # This file
+-- src/abaqus_mcp_pro/
| +-- __init__.py # Package init
| +-- server.py # MCP stdio server (entry point, 67 lines)
| +-- tools.py # 22 MCP tools with register_tools()
| +-- resources.py # 3 MCP resources with register_resources()
| +-- prompts.py # 13 MCP prompts with register_prompts()
| +-- skills.py # 74 MCP skill resources with register_skill_resources()
| +-- transport.py # Socket + file IPC transport layer
| +-- solver_diagnosis.py # Solver Doctor: 40+ error patterns
| +-- odb_lens.py # ODB Lens: KPI extraction
| +-- capsule.py # Capsule: experiment state tracking & diff
| +-- contracts.py # Physics contracts validation
| +-- report.py # Simulation report generation
| +-- agent.py # Abaqus-side TCP socket agent (pure stdlib)
| +-- gui_plugin.py # Abaqus/CAE GUI plugin (AFX menu)
| +-- file_ipc_plugin.py # File-based IPC fallback plugin
| +-- client.py # TCP client for CLI tools
| +-- protocol.py # Shared line-delimited JSON protocol
| +-- cli.py # CLI: check, doctor, setup
+-- scripts/
| +-- start_abaqus_mcp_pro_agent.py # noGUI launcher (TCP)
| +-- start_abaqus_mcp_pro_ipc.py # noGUI launcher (file IPC)
| +-- stop_mcp_agent.py # Stop signal for file IPC
+-- examples/
| +-- abaqus_cantilever_classic.py
| +-- abaqus_tensile_bar_classic.py
| +-- show_tensile_result_viewport.py
+-- tests/ # Test directoryCredits
Built by integrating the best features from:
Abaqus-Control-MCP -- TCP socket bridge, AST diagnostics
CAE-Agent-Hub -- High-level tools, skills, and architecture
abaqus-mcp -- File-based IPC transport
Codex_MCP_Abaqus -- noGUI mode and examples
Available Tools
110 toolsassign_sectionC
Assign a section to a region.
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| model_name | No | Model-1 | |
| region_name | Yes | ||
| section_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full behavioral burden. 'Assign' implies a mutating operation, but the description says nothing about whether it replaces an existing assignment, requires existing geometry, or has side effects. This lack of detail is a notable gap for a modeling operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single clear sentence with no filler. The action and main objects are front-loaded. It is efficient, though it errs on the side of being too terse rather than overly verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is minimally sufficient to understand the basic operation but not complete enough for an agent choosing among many similar modeling tools. It omits when to use it, what prerequisites exist, what effects it has, and the role of the optional parameters. Given the large sibling tool set, this brevity leaves meaningful ambiguity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It does add meaning for the two required parameters: region_name is the target region and section_name is the section being assigned. However, the optional timeout and model_name parameters are not addressed at all, leaving part of the parameter surface unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: 'Assign a section to a region.' It clearly names the two core entities involved, which distinguishes it from sibling creation tools like create_solid_section or create_shell_section at least by action type. However, it does not explicitly clarify whether the section and region must already exist.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No usage guidance is provided. The description does not state when to use assign_section versus create_solid_section or other section-related siblings, nor does it mention prerequisites such as creating a section first or defining a region. The intended context must be inferred from the tool name and sibling list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
capture_viewportC
Capture an Abaqus viewport as base64 image data.
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| image_format | No | PNG | |
| viewport_name | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions the base64 output but does not clarify side effects, prerequisites, whether a viewport must exist or be displayed, or what happens on failure. The read-only nature is left to inference.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. It is appropriately concise, though it sacrifices needed detail for brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no annotations, 0% parameter coverage, an output schema that does not explain invocation semantics, and a nearly identical sibling tool, the description is incomplete. It does not tell the agent how to set viewport, format, or timeout, nor how to distinguish this from 'get_viewport_image'.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not compensate by explaining any of the three parameters: 'timeout', 'image_format', or 'viewport_name'. It adds no meaning beyond the bare property names and defaults.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('capture'), a clear resource ('Abaqus viewport'), and states the output format ('base64 image data'). It is clear on its own, but it does not differentiate from the closely related sibling 'get_viewport_image', so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance about when to use this tool versus alternatives such as 'get_viewport_image', 'set_viewport_display', or other viewport tools. The description only states what the tool does, not when it should be chosen.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_abaqus_connectionC
Return a concise human-readable bridge status.
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description alone must convey behavioral traits. It reveals only that the result is a concise human-readable status; it does not say whether the check mutates anything, what failure modes exist, whether a timeout causes errors, or what statuses can be returned. Behavior is largely undisclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One short sentence states the core behavior and output style with no filler, and the key information is front-loaded. For a simple health-check tool this is an efficient length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple, has no required parameters, and an output schema exists, so the description does not need to explain return values. However, it omits usage context and timeout semantics, and the ambiguity with 'ping' is unresolved, leaving the definition minimally adequate rather than complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage and the description says nothing about the 'timeout' parameter, its units, or the meaning of null/default. The parameter is optional and self-named, which softens the gap, but the description does not compensate for the missing schema documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the operation ('Return') and the resource ('bridge status'), and it adds a useful output-shape cue ('concise human-readable'). It does not explicitly differentiate itself from the sibling 'ping', which likely serves a very similar purpose, so the tool name must carry that distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement about when to use this tool, when not to, or which alternative to prefer. With 'ping' and diagnostic tools like 'diagnose_job' and 'check_silent_failures' in the toolset, the agent is left to infer the intended use from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_model_integrityA
Quick model integrity check: mesh, constraints, contacts, volumes.
A fast subset of check_silent_failures focused on the most common silent failures. Runs the same checks but returns a compact format.
Use this after building a model and before submitting a job.
Args: model_name: Name of the model to check (default: first available model).
Returns: Compact text report of findings.
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| model_name | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does reveal the tool runs the same checks as check_silent_failures and returns a compact text report. However, it does not explicitly state that the operation is read-only/non-destructive, nor describe error behavior or edge cases, leaving some behavioral ambiguity.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, front-loaded with the core purpose, and each sentence contributes: what it checks, how it relates to the sibling, when to use it, args, and return. No filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with two optional parameters, the description provides enough context to call it: usage timing, scope, and return format. The only notable omission is timeout parameter semantics, which prevents a perfect score.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must document both parameters. It documents model_name, but says nothing about timeout, its behavior, or acceptable values. Timeout is only partially self-explanatory, so this is a clear gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it performs a model integrity check on mesh, constraints, contacts, and volumes, and explicitly differentiates itself from check_silent_failures by being a fast subset. The scope is specific and an agent can immediately tell what it does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly recommends using it after building a model and before submitting a job, giving concrete workflow context. It also names the sibling check_silent_failures and positions itself as a faster, compact alternative, though it does not explicitly state when to choose the full version.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_physics_contractsA
Check physics contracts against KPI values from a capsule or direct JSON.
Validates that simulation results meet design requirements defined as contracts (range, threshold, exact, pct_change). Supports two modes:
Direct mode: provide contracts_json and kpis_json directly.
Capsule mode: provide contracts_json and capsule_id to load KPIs from a previously saved experiment capsule.
Args: contracts_json: JSON array of contract dicts. Each dict must have contract_id, kpi_name, contract_type. Optional: expected, tolerance, severity, description. kpis_json: JSON object mapping KPI names to values, e.g. {"max_stress": 345.6}. Required if capsule_id is empty. capsule_id: Load KPIs from this capsule instead of kpis_json.
Contract types: - range: value must be within [min, max] - threshold_gt: value must be greater than X - threshold_lt: value must be less than X - exact: value must equal X (within tolerance) - pct_change: change from baseline must be within X%
Returns: Markdown-formatted contract validation report.
| Name | Required | Description | Default |
|---|---|---|---|
| kpis_json | No | ||
| capsule_id | No | ||
| contracts_json | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It explains the validation behavior, both input modes, contract type semantics, and the Markdown report output. It does not explicitly state whether the operation is side-effect-free or how failures are surfaced, but the 'check/validates/returns report' framing makes the core behavior clear.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-organized and efficient: purpose first, then modes, parameter details, contract types, and return value. No sentence is wasted, and the structure makes the information easy for an agent to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 3-parameter tool with no annotations and a bare schema, this description is complete. It covers the tool's purpose, both execution modes, every parameter's role, contract validation semantics, and the output format. An agent has enough information to select and invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description fully compensates. It defines contracts_json structure and required/optional fields, explains kpis_json with an example, and clarifies the capsule_id alternative. It also documents all five contract types, giving the agent enough detail to construct valid inputs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and object: 'Check physics contracts against KPI values', immediately clarifying the resource and operation. It further details that this validates simulation results against design requirements, distinguishing it from sibling tools like check_model_integrity or compare_capsules.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly explains when to use direct mode versus capsule mode, including that kpis_json is required if capsule_id is empty. It does not explicitly mention sibling alternatives or state when not to use the tool, but the mode-level guidance is concrete and actionable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_silent_failuresA
Run silent-failure checks on the current Abaqus model.
Detects 7 categories of model issues that Abaqus does not report as errors:
Mesh integrity: parts with zero elements, unmeshable hex requests
Constraint coverage: tie constraints that may silently drop nodes
Volume/logic: cut operations that removed nothing, degenerate geometry
Contact validity: contact pairs without adjacency
Element quality: risky elements (C3D8R hourglass), hourglass-prone configs
Job output: completed jobs with no ODB, meaningless exit codes
Unconstrained parts: instances free to undergo rigid body motion
These checks measure the model you built, not just the answer it produced.
Args: model_name: Name of the model to check (default: first available model). workdir: Working directory for job output checks (default: current).
Returns: Structured Markdown report with pass/fail/warning findings.
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| workdir | No | ||
| model_name | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden, and it largely succeeds: it details the seven categories examined and states the return format is a structured Markdown report with pass/fail/warning findings. It does not explicitly state whether the operation is read-only or whether it requires an active Abaqus connection, but 'check' and 'detects' imply a non-mutating diagnostic.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with a clear one-line summary and then uses a well-organized numbered list to communicate the seven check categories. Every section earns its place: categories, a clarifying philosophy sentence, and parameter explanations. The length is justified by the complexity of the tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the high complexity of the tool, the description covers the core behavior, the model scope, the parameter defaults, and the output format. It is nearly complete, but it does not explain the timeout parameter's role or expected interaction with a live Abaqus session, which would make it fully self-sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage, so the description must compensate for model_name, workdir, and timeout. It does explain model_name (default first available model) and workdir (working directory for job output checks), but it omits timeout entirely even though that parameter appears in the schema without documentation. This is partial compensation for low schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource: 'Run silent-failure checks on the current Abaqus model,' and then enumerates 7 concrete check categories, making the purpose unambiguous. It does not explicitly differentiate itself from the similarly named sibling check_model_integrity, but the 'silent-failure' framing and focus on issues Abaqus does not report as errors provide enough conceptual distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear contextual guidance, especially 'These checks measure the model you built, not just the answer it produced,' which tells an agent to use this after model construction to catch hidden issues. It does not explicitly name alternative tools or state when not to use it, but the intended scenario is reasonably clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compare_capsulesC
Compare two experiment capsules and show differences.
| Name | Required | Description | Default |
|---|---|---|---|
| capsule_id_1 | Yes | ||
| capsule_id_2 | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the full burden of behavioral disclosure. It only says the tool compares and shows differences, but does not mention whether it is read-only, whether capsules must be loaded first, whether it modifies state, or what scope of differences is covered.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no redundant words. It is front-loaded with the main action and resource. However, the brevity leaves out important usage and behavioral context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter tool with an output schema, the description is minimally adequate. The output schema presumably covers return values, so not explaining them is acceptable. However, missing guidance on when to use this tool and what exactly is compared makes the definition incomplete for an agent operating in a large sibling toolset.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not compensate by explaining the two ID parameters. It only restates that they refer to two experiment capsules; it does not explain where the IDs come from, what format they should use, or what the difference is between the two parameters. The parameter names are readable, but the description adds little beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action ('Compare') and a specific resource ('two experiment capsules'), and indicates the output concept ('show differences'). It is distinguishable from sibling capsule tools like create_capsule, list_capsules, load_capsule, and delete_capsule. However, it could be more precise about what kind of differences are shown (e.g., settings, contents, model data).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as list_capsules or load_capsule. It does not state any prerequisites, exclusions, or conditions that would help an agent choose this tool confidently.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
converge_adviceA
Get auto-fix suggestions for convergence problems diagnosed by the Solver Doctor.
Supports two modes:
From diagnosis: pass the result of diagnose_job as diagnosis_result (JSON string). The advisor extracts error/warning patterns and returns ranked fix suggestions.
Direct: pass comma-separated pattern_ids to get advice for specific patterns.
Each suggestion includes:
Priority (1 = try first, 5 = last resort)
Risk level (low/medium/high)
Code template for the fix (where applicable)
Description of what to do
Patterns supported: too_many_attempts, time_increment_too_small, maximum_increments_exceeded, negative_eigenvalues, rigid_body_motion, contact_overclosure, excessive_distortion, explicit_stable_time_too_small, zero_pivot, material_instability, excessive_pivot_ratio.
Args: diagnosis_result: JSON string from diagnose_job output. If provided, pattern_ids is ignored. pattern_ids: Comma-separated pattern IDs (e.g., "too_many_attempts,rigid_body_motion"). Only used if diagnosis_result is empty.
Returns: Markdown-formatted fix suggestions with priority and risk levels.
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| pattern_ids | No | ||
| diagnosis_result | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It discloses output format (Markdown), content of suggestions (priority, risk, code template, description), supported patterns, and mode precedence. It doesn't explicitly state that the operation is read-only, but 'get suggestions/advice' makes that clear enough. Minor gap: no mention of timeout behavior or edge cases.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-organized with headers, bullet lists, and clear sections for modes, outputs, supported patterns, and arguments. It is slightly longer than strictly necessary because the pattern list and return details overlap with what the output schema likely covers, but every sentence contributes useful information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-mode advisory tool, the description covers mode selection, output structure, valid pattern IDs, and the relationship to diagnose_job. It is largely self-sufficient, but omits the timeout parameter and does not specify behavior when both diagnosis_result and pattern_ids are empty, which are minor gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It thoroughly explains diagnosis_result and pattern_ids, including format, source, and precedence. However, the timeout parameter is completely omitted from the Args section, leaving an agent unable to determine its meaning or default behavior.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Get auto-fix suggestions'), resource ('convergence problems diagnosed by the Solver Doctor'), and clearly distinguishes itself from siblings by being the advice tool tied to diagnose_job. It also explains both usage modes, so an agent can tell this apart from other analysis tools without needing to inspect the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly documents two modes: from diagnosis_result (output of diagnose_job) or direct pattern_ids, with a clear precedence rule ('If provided, pattern_ids is ignored'). It names the companion tool diagnose_job. It could be more explicit about when not to use it or what to do if no diagnosis is available, but the mode-based guidance is strong.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_acceleration_bcC
Create an acceleration boundary condition.
| Name | Required | Description | Default |
|---|---|---|---|
| a1 | No | ||
| a2 | No | ||
| a3 | No | ||
| name | Yes | ||
| timeout | No | ||
| step_name | No | Initial | |
| model_name | No | Model-1 | |
| region_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the full behavioral burden. It states the create action but does not disclose side effects, whether existing boundary conditions are replaced, validation requirements, or what happens on failure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, parseable sentence with no filler words. However, it is under-specified rather than appropriately concise; the brevity omits necessary context that a tool description should provide.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 8 parameters, 0% schema coverage, and no annotations, the description is not sufficient to guide correct use. It does not explain required inputs, defaults, component semantics, or the result of the operation, even though an output schema exists.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description adds no parameter meaning. The meaning of a1, a2, a3, timeout, step_name, model_name, and region_name is left entirely to schema field names, which is insufficient for correct invocation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action ('Create') and resource ('acceleration boundary condition'), which is enough to distinguish it from sibling BC-creation tools like create_displacement_bc or create_velocity_bc. It is minimal, but it is not vague or tautological.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use this tool versus the many sibling boundary-condition tools, nor are there exclusions or prerequisites. An agent must infer the appropriate context solely from the tool name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_beam_sectionC
Create a beam section.
Args: integration: "BEFORE_ANALYSIS" or "DURING_ANALYSIS"
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| timeout | No | ||
| model_name | No | Model-1 | |
| integration | No | BEFORE_ANALYSIS | |
| profile_name | No | ||
| material_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only says 'Create a beam section' and lists integration values; it does not mention whether the section must reference an existing part or material, whether it mutates the model immediately, what side effects occur, or what success/failure looks like. This is barely more informative than a tautology.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The text is short and front-loaded, but the brevity reflects under-specification rather than concise completeness. It only documents one of six parameters, and the Args section is incomplete, so the structure does not serve the agent's information needs.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The presence of an output schema covers return-value expectations, but the description omits broader context such as how a beam section relates to parts, profiles, materials, or analysis steps; how integration affects behavior; and what prerequisites must exist before calling this tool. With six parameters and no schema coverage, this is a material gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for the schema's silence. It does add allowed values for the integration parameter ('BEFORE_ANALYSIS' or 'DURING_ANALYSIS'), which is useful. However, five other parameters including the required name and material_name are left completely unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Create a beam section.' This makes the tool's purpose reasonably clear and distinguishes it from unrelated tools. However, it does not explicitly differentiate it from the sibling tools create_solid_section or create_shell_section, so it stops short of full sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided about when to use this tool versus alternatives such as create_solid_section, create_shell_section, or create_part_beam. An agent could infer that sections are used for beam modeling, but the description gives no explicit context for choosing this tool over its siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_body_forceB
Create a body force (force per unit volume) on the entire model.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| timeout | No | ||
| direction | Yes | ||
| magnitude | Yes | ||
| step_name | Yes | ||
| model_name | No | Model-1 |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full burden of behavioral disclosure. It only states the creation effect and scope; it does not mention prerequisites, units, whether an existing body force is replaced or accumulated, step compatibility, or any side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, tightly written sentence that front-loads the core purpose and definition. There is no redundant or filler content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with six parameters, four required, no annotations, and zero schema coverage, the description is too sparse. It covers the general concept but omits parameter details, prerequisites, and behavioral context, even though an output schema is present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for undocumented parameters. It adds meaning to magnitude and direction via 'force per unit volume,' but it does not explain step_name, model_name, name, or timeout semantics, leaving required parameters underspecified.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific action ('Create'), a specific resource ('body force'), clarifies its physical meaning ('force per unit volume'), and scopes it to 'the entire model.' This distinguishes it from sibling load tools like create_concentrated_force, create_pressure_load, and create_gravity_load.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'on the entire model' implies when this tool is appropriate, but the description does not explicitly contrast it with alternatives such as create_gravity_load or other load types. No when-not-to-use guidance or alternative routing is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_body_heat_fluxC
Create a body heat flux (heat generation per unit volume).
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| timeout | No | ||
| magnitude | Yes | ||
| step_name | Yes | ||
| model_name | No | Model-1 |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears the full burden of behavioral disclosure. It says only that the tool 'creates' an object, giving no detail about prerequisites, effects on the model, failure modes, or whether invocation overwrites existing loads. This is a significant gap for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact sentence with no filler, and the clarifying parenthetical earns its place. However, the brevity comes at the cost of missing useful parameter and invocation details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With five parameters, zero schema descriptions, and no annotations, the description is far too thin for an agent to invoke this tool correctly. It does not explain which step or model the heat flux applies to, what timeout does, or how this creation relates to other loads. The existence of an output schema does not compensate for the missing input context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not document any of the five parameters. The parenthetical 'heat generation per unit volume' indirectly clarifies the meaning of magnitude, but name, timeout, step_name, and model_name remain unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies a specific verb and resource: 'Create a body heat flux,' and clarifies the physical meaning as 'heat generation per unit volume.' This helps distinguish it from surface-level heat flux loads such as create_heat_flux_load, though it does not explicitly name the sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives like create_heat_flux_load, create_body_force, or the many other load/material creation siblings. The agent must infer usage purely from the tool name and the one-line description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_buckle_stepC
Create a Linear Buckle step.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| timeout | No | ||
| num_modes | No | ||
| model_name | No | Model-1 | |
| description | No | ||
| previous_step | No | Initial |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full behavioral disclosure burden. It only states that the tool creates a Linear Buckle step, implying mutation, but does not disclose whether the step is appended, what gets modified, how previous_step is used, or what side effects occur.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise and front-loaded with the core purpose. It contains no filler, though it could have used the space to add sibling differentiation or usage context without becoming bloated.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a creation tool with six parameters, no annotations, and zero schema description coverage, a single sentence is inadequate. The output schema exists, but the description still leaves the agent without critical context about when to call this tool, how parameters relate to the step, and how it fits in the model-building workflow.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 0% and the description provides no parameter details. With six parameters including num_modes, timeout, model_name, and previous_step, the agent receives no semantic explanation beyond the property names and defaults.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Create') and a specific resource ('a Linear Buckle step'), which clearly identifies what the tool does. The resource type also distinguishes it from the many other create_*_step siblings such as create_static_step and create_modal_step.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided about when to use this tool versus alternatives. Given the large number of sibling step-creation tools, the description does not explain when a Linear Buckle step is appropriate or what prerequisites exist.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_capsuleA
Capture current Abaqus session state into an experiment capsule.
Saves model info, job status, output file inventory, and Abaqus version for reproducibility and later comparison.
Args: capsule_id: Unique identifier for this capsule (e.g. "baseline_v1"). notes: Optional description of this run.
| Name | Required | Description | Default |
|---|---|---|---|
| notes | No | ||
| timeout | No | ||
| capsule_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that the tool persists session details (model info, job status, output files, version), but it does not explain side effects such as whether an existing capsule with the same capsule_id is overwritten, errors, timeouts, or any impact on the current session. This is adequate for a simple snapshot tool but lacks edge-behavior detail.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short, front-loaded with the main action, and every sentence adds value. The Args section provides meaningful parameter semantics without redundancy, and there is no filler or repetition of the schema's type/title information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the tool's purpose, main parameters, and saved data, and an output schema exists so return values are documented elsewhere. However, it lacks timeout guidance, duplicate-capsule behavior, and explicit alternatives. These are meaningful gaps for a tool with no annotations and a missing parameter description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It gives useful meaning for capsule_id ('Unique identifier' with an example) and notes ('Optional description'), but completely omits the timeout parameter. Since one of the three parameters is undocumented in both the schema and the description, the parameter semantics are incomplete.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Capture current Abaqus session state into an experiment capsule.' It also lists exactly what is saved (model info, job status, output file inventory, Abaqus version), and the 'capture' verb clearly differentiates this tool from sibling capsule tools like list_capsules, load_capsule, and delete_capsule.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool by saying the capsule is 'for reproducibility and later comparison,' which hints at using it before compare_capsules. However, it does not explicitly state when not to use it or mention alternatives such as load_capsule or list_capsules. Usage context is present but left to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_concentrated_forceB
Create a concentrated force on a vertex or reference point.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| force | Yes | ||
| timeout | No | ||
| step_name | Yes | ||
| model_name | No | Model-1 | |
| region_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only says 'Create a concentrated force' and does not mention prerequisites, units, coordinate conventions, whether existing forces are overwritten, or the need for a valid step and region.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. However, it is arguably too terse for a tool with six parameters and no schema descriptions, so it sacrifices substance for brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 6-parameter load-creation tool with no annotations and 0% schema description coverage, the description is far from complete. It omits critical context such as force component order, required existing geometry, step dependencies, and how this load relates to sibling load tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It adds minimal meaning by indicating that region_name should reference a vertex or reference point, but it does not explain the force array semantics, timeout, step_name, model_name, or name parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Create a concentrated force') and a specific target ('on a vertex or reference point'). This clearly distinguishes it from sibling load-creation tools such as create_pressure_load, create_body_force, and create_moment_load.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'on a vertex or reference point' implies this tool is for point loads, but there is no explicit guidance about when to prefer this tool over alternatives like create_connector_force or create_moment_load. No exclusions or when-not-to-use scenarios are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_connector_displacement_bcC
Create a connector displacement BC.
| Name | Required | Description | Default |
|---|---|---|---|
| u1 | No | ||
| u2 | No | ||
| u3 | No | ||
| name | Yes | ||
| timeout | No | ||
| step_name | No | Initial | |
| model_name | No | Model-1 | |
| region_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only says 'create', offering no information about side effects, requirements, units, how the BC is applied to the region, or what the operation does beyond the literal verb.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short, but this is under-specification rather than effective conciseness. It provides only a minimal phrase and no structured information to help an agent understand the tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given a create tool with eight parameters, two required fields, no annotations, and an output schema that is not elaborated, the description is grossly incomplete. The agent receives no context about prerequisites, defaults, parameter relationships, or expected behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description mentions none of the eight parameters. It does not explain the meaning of `u1`, `u2`, `u3`, `region_name`, or the model/step defaults, leaving the agent without semantic guidance.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action and resource: 'Create a connector displacement BC.' This is clear about what the tool does, but it does not differentiate it from the very similar sibling `create_displacement_bc`, so it falls short of full clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use this tool instead of alternatives like `create_displacement_bc` or `create_connector_force`. The context and selection criteria are entirely absent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_connector_forceC
Create a connector force on a connector/wire set.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| force | Yes | ||
| timeout | No | ||
| step_name | Yes | ||
| model_name | No | Model-1 | |
| region_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It only says 'Create' and the target resource, offering no information about whether existing connector forces are replaced, how the force is applied (global/local coordinates), or any prerequisites for the connector/wire set. This is minimal beyond the action itself.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The sentence is short and free of clutter, which is concisely written. However, it is under-specified rather than efficiently structured; there is no front-loading of key information beyond the basic action and target.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given six parameters, no parameter descriptions, no annotations, and no usage guidance, the description is far from complete. An agent cannot confidently determine what values to provide for 'force', which step context is required, or what a valid connector/wire set is. The output schema exists, but it does not make up for the missing behavioral and parameter semantics.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for the six undocumented parameters. It does not mention name, region_name, force, step_name, timeout, or model_name, nor explain what the force array represents. The description adds no value to the bare schema field names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Create') and resource ('connector force on a connector/wire set'), which distinguishes it from sibling load-creation tools like create_concentrated_force or create_body_force. It could be more explicit about what a connector force is, but the target resource is clear enough.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as create_concentrated_force or create_connector_displacement_bc. The phrase 'on a connector/wire set' implies context, but there is no explicit when-to-use or when-not-to-use instruction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_contact_propertyC
Create a contact interaction property.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| timeout | No | ||
| model_name | No | Model-1 | |
| friction_coefficient | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of disclosing behavior. It only says 'Create', which adds little beyond the tool name; it does not state side effects, model requirements, whether the property is persisted, or how it relates to a contact simulation. This is insufficient for an operation with no annotation safety profile.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded, with no filler words, but it is under-specified: a single sentence that states the obvious without elaborating on context or parameters. It is compact but not sufficiently informative for a tool with four parameters and many siblings.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no annotations, low schema coverage, and a description that only names the action, the tool definition is incomplete for correct invocation. The output schema may cover return values, but the description still fails to explain parameter semantics, prerequisites, or how this tool fits into the broader workflow.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not mention or explain any of the four parameters. The defaults and titles in the schema provide only minimal clues, and the description does not compensate for the low coverage, leaving 'timeout', 'model_name', and 'friction_coefficient' without meaningful guidance.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Create') and names a distinct resource ('contact interaction property'), so an agent can tell this is about creating a property object rather than a contact formulation. However, it does not differentiate itself from closely related tools like create_surface_to_surface_contact or create_general_contact, so it only meets the 'clear but no sibling differentiation' bar.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives, no mention of prerequisites such as an existing model or part, and no statement about whether the property must be assigned to a contact interaction afterward. The description simply states the action without any usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_coupled_temp_disp_stepC
Create a Coupled Temperature-Displacement step.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| max_inc | No | ||
| min_inc | No | ||
| timeout | No | ||
| model_name | No | Model-1 | |
| description | No | ||
| initial_inc | No | ||
| time_period | No | ||
| previous_step | No | Initial |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure, and it discloses nothing beyond the creation action. It does not mention that this mutates the named model (model_name), how previous_step chains onto prior analysis, what happens on name conflicts, or that solver increment parameters control convergence behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single efficient sentence with the verb and object front-loaded and no filler. However, this is under-specification rather than disciplined conciseness: for a 9-parameter tool it needs to earn its minimalism with more context elsewhere, which it does not.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 9 parameters, zero schema descriptions, no annotations, and roughly ten sibling step-creation tools to disambiguate, a one-sentence description is far short of what an agent needs to invoke this tool correctly. The existence of an output schema covers return values only and does not compensate for the missing parameter, behavioral, and selection context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across 9 parameters, and the description adds no parameter meaning whatsoever. Terms like max_inc, min_inc, initial_inc, time_period, and previous_step remain ambiguous in an Abaqus context (e.g., max_inc could be read as maximum increment size vs. maximum number of increments), and nothing compensates for the missing schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Create') plus a precisely named resource ('Coupled Temperature-Displacement step'), so the action and target are unambiguous. The physics-specific step type is inherently distinctive among the many sibling step tools (static, modal, heat transfer, dynamic implicit, etc.), though the description never explicitly contrasts it with them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The single sentence offers no guidance on when to choose this tool over sibling alternatives like create_heat_transfer_step or create_static_step. There is no mention of prerequisites, model setup required for a coupled thermal-displacement analysis, or when this step type is appropriate versus others.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_coupling_constraintC
Create a coupling constraint between a reference point and a surface.
Args: coupling_type: "KINEMATIC", "DISTRIBUTING", or "STRUCTURAL"
| Name | Required | Description | Default |
|---|---|---|---|
| u1 | No | ||
| u2 | No | ||
| u3 | No | ||
| ur1 | No | ||
| ur2 | No | ||
| ur3 | No | ||
| name | Yes | ||
| timeout | No | ||
| model_name | No | Model-1 | |
| surface_name | Yes | ||
| control_point | Yes | ||
| coupling_type | No | KINEMATIC |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure, but it only states that a constraint is created and lists coupling_type values. It does not mention that the control point should be an existing reference point, that the surface must already exist, or that the DOF flags default to constrained behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and readable, but its 'Args:' section is misleadingly incomplete, presenting coupling_type as if it were the only argument. The brevity comes from omission rather than effective compression.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 12-parameter creation tool with no annotations and no schema descriptions, this is far from complete. Required parameters, DOF flag meanings, defaults, and prerequisites are all missing; an output schema exists but does not compensate for the lack of input guidance.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description should compensate by explaining parameters. It adds some value by listing valid coupling_type values, but it leaves the required parameters (name, control_point, surface_name) and the six DOF booleans (u1, u2, u3, ur1, ur2, ur3) undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Create') and resource ('coupling constraint between a reference point and a surface'), which helps distinguish it from sibling tools like create_tie or create_mpc_constraint. However, it does not explain the mechanical meaning of a coupling constraint beyond the name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives such as create_rigid_body_constraint, create_mpc_constraint, create_equation_constraint, or create_tie. No prerequisites, exclusions, or selection criteria are provided, so the agent must infer applicability.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_damage_initiationC
Add ductile damage initiation to a material.
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| model_name | No | Model-1 | |
| strain_rate | No | ||
| material_name | Yes | ||
| fracture_strain | Yes | ||
| stress_triaxiality | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of disclosing behavior. It only states that damage initiation is added, without mentioning whether it modifies an existing material, creates a subobject, overwrites prior damage settings, or requires a specific material state.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no fluff, but it is overly terse for a tool with six parameters and no schema documentation. Conciseness is achieved at the cost of useful substance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's six parameters, zero schema description coverage, and no annotations, a one-sentence description is not complete enough for confident invocation. Although an output schema exists, the description still lacks essential parameter and side-effect context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description mentions no parameters at all. Without any parameter explanations in either the schema or the description, an agent has no guidance on what 'fracture_strain', 'stress_triaxiality', 'strain_rate', or the other inputs actually mean.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: 'Add ductile damage initiation to a material.' It clearly identifies the tool's purpose and is reasonably distinguishable from sibling material-creation tools, but it does not explicitly contrast with or name related alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, no prerequisites, and no conditions under which it should not be used. Any usage context is only implied by the tool's name and one-line purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_displacement_bcC
Create a displacement BC.
| Name | Required | Description | Default |
|---|---|---|---|
| u1 | No | ||
| u2 | No | ||
| u3 | No | ||
| name | Yes | ||
| timeout | No | ||
| step_name | No | Initial | |
| model_name | No | Model-1 | |
| region_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose side effects and behavior, but it only says 'Create a displacement BC.' It does not mention whether existing BCs are overwritten, how null u1/u2/u3 values are interpreted, or whether a model, step, and region are required context. This is effectively no behavioral disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The sentence is short and front-loaded, but under-specification is not conciseness. It provides no structured information about parameters, defaults, or intended usage, so it earns minimal credit for brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 8-parameter tool with no annotations and no visible output schema detail, the description is far too thin. It omits the role of region_name and step_name, default behavior for null displacement components, and how this BC interacts with other BCs, making confident invocation impossible.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not mention any parameter, including required ones like name and region_name or the displacement components u1/u2/u3. The agent cannot learn displacement direction semantics, null-value meaning, defaults, or step association from the description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource ('Create a displacement BC'), making the core action identifiable. It does not differentiate from the sibling create_connector_displacement_bc or clarify which displacement components are involved, so it stops short of full differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus velocity, acceleration, temperature, or connector displacement BCs. The only usage signal is the tool name itself, and no prerequisites or exclusions are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_dynamic_implicit_stepC
Create a Dynamic Implicit step.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| nlgeom | No | ||
| max_inc | No | ||
| min_inc | No | ||
| timeout | No | ||
| model_name | No | Model-1 | |
| description | No | ||
| initial_inc | No | ||
| time_period | No | ||
| previous_step | No | Initial |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations available, the description carries the full burden of behavioral disclosure. It only says 'Create a Dynamic Implicit step' and does not mention side effects, prerequisites, whether it modifies an existing model, or what the operation returns. This is completely inadequate for a mutation-like tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no fluff, but it is severely under-specified rather than concise. For a tool with 10 parameters and no parameter documentation, one sentence repeating the tool name does not earn its place as meaningful content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a complex tool (10 parameters, no annotations, no schema descriptions) yet the description provides almost no context. It fails to explain what a Dynamic Implicit step is, when to use it, or what the parameters control, making it impossible for an agent to correctly select and invoke it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description mentions none of the 10 parameters. The tool has a required 'name' and numerous numeric/boolean options (e.g., nlgeom, max_inc), but none are explained anywhere in the description, leaving the agent without any insight into their semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Create') on a specific resource ('a Dynamic Implicit step'), which is clear and unambiguous. It distinguishes from sibling step-creation tools by naming the step type, though it does so purely by restating the tool name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to choose a Dynamic Implicit step over other step types such as static, explicit, or modal. The tool name implies the use case (dynamic implicit analysis), but the description contains no explicit context or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_elastic_materialC
Create a linear elastic material in Abaqus.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| density | No | ||
| timeout | No | ||
| model_name | No | Model-1 | |
| poisson_ratio | Yes | ||
| youngs_modulus | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description must carry the full behavioral burden. It only states that a material is created; it does not disclose side effects such as adding to the current model, overwriting an existing material of the same name, or requiring an active Abaqus model/connection.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler. It efficiently captures the action and domain without unnecessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Even with an output schema present, the description is too thin for a 6-parameter creation tool with no annotations. It omits usage guidance, parameter semantics, and behavioral side effects, leaving too much for the agent to infer.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description adds no parameter-level meaning. It does not explain units, positivity constraints, the role of the optional density/timeout parameters, or how model_name influences the operation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Create') and a specific resource ('linear elastic material') in the Abaqus domain. This clearly differentiates it from sibling material tools such as create_hyperelastic_material and create_viscoelastic_material.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance about when to choose this tool over related material creation tools, nor does it mention any alternatives or exclusions. An agent must infer usage solely from the tool name and sibling list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_embedded_regionC
Create an embedded region constraint (e.g., reinforcement in concrete).
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| timeout | No | ||
| model_name | No | Model-1 | |
| host_region | Yes | ||
| embedded_region | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of disclosing behavior. It only restates the creation action and gives an analogy, but does not explain effects on the model, required model state, potential failures, or what happens when validation fails.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and free of redundancy, which aids readability. However, it is under-specified for a constraint-creation tool; the single sentence does not provide enough operational context, so conciseness comes at the cost of completeness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity, the lack of annotations, and 0% schema description coverage, the description is incomplete. It does not explain prerequisites, how host_region and embedded_region relate, validation behavior, or when this constraint type is appropriate, leaving an agent to guess at correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. The example 'reinforcement in concrete' subtly clarifies that embedded_region is the inserted object and host_region is the surrounding material, but timeout and model_name receive no explanation, and this minimal hint is insufficient to fully document the parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action and resource: 'Create an embedded region constraint' and gives a concrete example ('reinforcement in concrete'). It is not a tautology and is distinguishable from sibling constraint-creation tools through the unique resource type, though it does not explicitly contrast with any sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No usage guidance is provided. The description does not state when to choose this tool over other constraint creators such as create_tie, create_coupling_constraint, or create_mpc_constraint, nor does it mention any prerequisites like needing the host and embedded regions to already exist.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_encastre_bcC
Create an encastre (fully fixed) BC.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| timeout | No | ||
| step_name | No | Initial | |
| model_name | No | Model-1 | |
| region_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full behavioral burden. It only restates the tool's name in slightly expanded form ('fully fixed') and does not disclose what DOFs are constrained, what region type is expected, or any side effects beyond creation. The verb 'Create' implies mutation but adds no real transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one short sentence with no filler, and the core concept is front-loaded. It is efficient, though minimal. This is appropriate conciseness, but it sacrifices substance covered by other dimensions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 5-parameter BC creation tool with many related sibling tools, the description is incomplete. It lacks usage context, parameter clarification, and behavioral detail. The presence of an output schema covers return values, but does not compensate for the missing selection and invocation guidance.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description adds no parameter-level meaning. Required parameters like name and region_name, and optional ones like step_name, model_name, and timeout, are left entirely to their bare schema names. The description does nothing to compensate for the lack of schema documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Create an encastre (fully fixed) BC.' The parenthetical clarifies what encastre means mechanically. It is clear but does not explicitly differentiate itself from sibling BC tools like create_displacement_bc or create_pinned_bc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus sibling BC creation tools. It does not mention prerequisites, selection criteria, or situations where encastre is the appropriate boundary condition. The agent is left to infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_equation_constraintC
Create a linear equation constraint.
Args: terms: list of (coefficient, set_name, dof) tuples. e.g., [(1.0, "Set-1", 1), (-1.0, "Set-2", 1)] for u1(Set-1) = u1(Set-2)
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| terms | Yes | ||
| timeout | No | ||
| model_name | No | Model-1 |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only says 'Create', implying a mutation, but does not state whether the operation is additive, whether it modifies an existing model, what model_name defaults to, or whether there are side effects on existing constraints. The description also does not mention idempotency or failure behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded with the core purpose. The args section and example are compact and readable. It earns a 4 because it is efficient, though it sacrifices completeness for brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is a modeling mutation with no annotations, and the description does not explain prerequisites (e.g., existing sets, model context), the nature of the constraint, or how it differs from related constraint tools. The output schema exists, so return values need not be described, but for a tool like this, more contextual guidance is needed for an agent to invoke it correctly in a real workflow.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It documents the 'terms' parameter well, including the tuple structure and a concrete example. However, 'name', 'timeout', and 'model_name' are entirely unaddressed; their semantics rely on property names and defaults in the schema. Partial compensation for the most complex parameter, but incomplete overall.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Create a linear equation constraint.' This distinguishes it from sibling constraint tools like create_mpc_constraint, create_rigid_body_constraint, and create_tie at a category level, and the example clarifies the intended coupling of DOFs. It could be more explicit about what 'linear equation constraint' means in FEA, but it is not tautological or vague.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives such as MPC constraints, rigid body constraints, or coupling constraints. The description does not mention prerequisites like existing sets or an active model, nor does it explain why an equation constraint would be preferred. An agent would have to infer usage from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_explicit_stepC
Create an Explicit Dynamics step.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| nlgeom | No | ||
| timeout | No | ||
| model_name | No | Model-1 | |
| description | No | ||
| time_period | No | ||
| previous_step | No | Initial |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. 'Create' implies a mutation, but the description does not mention side effects, prerequisites, model context, or what happens to the step sequence. It adds no behavioral detail beyond the verb itself.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and free of fluff, but it is under-specified rather than appropriately concise. A single generic sentence is not enough for a tool with 7 parameters and no supporting annotations.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's parameter count, lack of annotations, and the large sibling cluster of step-creation tools, this description is wholly inadequate. It fails to explain the required name parameter, how the step integrates with the model, when to use it, or what output to expect.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description mentions none of the 7 parameters. It does not compensate for the schema's bare titles and defaults, leaving the agent without meaningful guidance on fields like nlgeom, time_period, or previous_step.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Create') and identifies the resource as an 'Explicit Dynamics step,' which is clear and differentiates it from other step-creation siblings by analysis type. However, it does not explain what an Explicit Dynamics step does or why it differs from dynamic implicit, static, or modal steps.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance on when to use this tool over alternatives like create_dynamic_implicit_step or create_static_step. Any usage context must be inferred solely from the tool name and sibling list, which is not sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_field_output_requestB
Create a field output request for a specific step.
Args: variables: list of variable names, e.g. ["S", "E", "U", "RF"] frequency: output frequency (every N increments)
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | F-Output-1 | |
| timeout | No | ||
| frequency | No | ||
| step_name | No | ||
| variables | No | ||
| model_name | No | Model-1 |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only lists two arguments and does not mention side effects, prerequisites such as an existing model or step, validation behavior, or how the request is associated with the model.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded with its purpose, but the Args block presents only two parameters while the schema has six, which is structurally misleading. It is under-specified rather than efficiently complete.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Even with an output schema present, the agent cannot determine how to target a specific step because step_name is undocumented, and model_name is also unexplained. The description is not complete enough for a six-parameter creation tool with no annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate but only documents 2 of 6 parameters. It adds useful meaning for variables (with example list) and frequency ('every N increments'), but leaves name, timeout, step_name, and model_name completely unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Create a field output request for a specific step.' This clearly identifies what the tool does and distinguishes it from sibling create_history_output_request by the field-output focus.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the purpose sentence—use this when you need a field output request for a step. However, it provides no explicit when-not-to-use guidance and does not mention alternatives like create_history_output_request or get_field_output_summary.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_general_contactC
Create a general contact (all-inclusive) interaction.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| timeout | No | ||
| step_name | No | Initial | |
| model_name | No | Model-1 | |
| interaction_property | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It only states that the tool creates an interaction, with no disclosure of model effects, ordering requirements, compatibility constraints, or failure behavior. The phrase 'all-inclusive' adds a hint of scope but little actionable behavioral detail.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no filler and front-loads the core action. It is concise, though somewhat at the expense of necessary context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With five parameters, zero schema coverage, no annotations, and many similar contact-creation siblings, the description is far from complete. Even though an output schema exists, the description gives no information about required inputs, interaction semantics, or selection logic.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description adds no meaning for any of the five parameters. In particular, the required interaction_property is completely unexplained, so an agent has no basis for constructing a valid call.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Uses a specific verb 'Create' with a clear resource, 'a general contact (all-inclusive) interaction.' This is distinguishable from surface-to-surface contact tools, though it does not differentiate from the sibling create_general_contact_exp.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus the many related contact creation tools. It does not mention prerequisites, supported contexts, or why a user would select this over create_surface_to_surface_contact or create_general_contact_exp.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_general_contact_expC
Create a general contact for explicit analysis.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| timeout | No | ||
| step_name | No | Initial | |
| model_name | No | Model-1 | |
| interaction_property | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full responsibility for behavioral disclosure, but it only states that the tool creates a general contact. It does not mention side effects, prerequisites, required model state, or failure behavior beyond the basic mutation implied by 'Create'.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no filler or redundancy. It is concise and well-structured, though the brevity sacrifices useful context in other dimensions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has five parameters, no annotations, and several closely related sibling tools, but the description only states the core action. It does not explain what interaction_property should contain, which analysis scenarios require this tool, or how it relates to other contact-creation siblings. The output schema helps, but the description alone is insufficient for reliable correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description adds no parameter meaning. While names like 'name' and 'timeout' are somewhat self-explanatory, 'interaction_property' is opaque and no guidance is provided about expected formats or relationships to other contact definitions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the verb ('Create') and resource ('general contact'), and scopes it to explicit analysis via the '_exp' suffix. It is clear enough about what the tool does, though it does not explicitly spell out how it differs from the closely named sibling create_general_contact.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The only usage context is 'for explicit analysis', which is vague and does not explain when to choose this tool over create_general_contact or create_surface_to_surface_contact_exp. There is no when-to-use or when-not-to-use guidance, leaving selection among sibling tools to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_gravity_loadC
Create a gravity load.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| timeout | No | ||
| direction | Yes | ||
| magnitude | Yes | ||
| step_name | Yes | ||
| model_name | No | Model-1 |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavior but only repeats the fact of creation. It does not mention prerequisites, effects on existing loads, units, coordinate conventions, or error conditions. This is essentially no behavioral disclosure beyond the verb itself.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The single sentence is short and front-loaded, but it is under-specified rather than appropriately concise. It contains only the verb and object, leaving all useful context omitted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with six input parameters, zero schema description coverage, no annotations, and many load-creation siblings, a one-line description is far from complete. An agent has no way to understand the required inputs, coordinate system, or relationship to other loads.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description adds no meaning to any of the six parameters. Magnitude, direction, step_name, model_name, name, and timeout are left entirely to the schema property names, so the description fails to compensate for the lack of schema documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the specific verb and resource: 'Create a gravity load' – this identifies the operation as creating a gravity load among the many load-related siblings. However, it does not distinguish gravity load from body force or concentrated force, so it lacks explicit sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as create_body_force, create_pressure_load, or create_concentrated_force. The absence of context means an agent must infer from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_heat_flux_loadC
Create a surface heat flux load.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| timeout | No | ||
| magnitude | Yes | ||
| step_name | Yes | ||
| model_name | No | Model-1 | |
| region_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states that a load is created and gives no information about prerequisites such as an existing model, region, or step, whether an existing load is replaced, required units, or what the response contains. This is a significant gap for a mutating tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single clear sentence with no filler or repetition, and the key differentiator ('surface') is included. It is concise, though so terse that it omits behavioral and parameter context that would be valuable for correct invocation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations and low schema coverage, the description is not complete enough for correct invocation. An agent is not told that the named region, model, and step must already exist, what units magnitude expects, or how the tool behaves if a load with the same name already exists. The presence of an output schema reduces the need to document return values, but the missing context is still substantial.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description should compensate for missing parameter explanations, but it does not mention any parameter. The parameter names such as magnitude, region_name, step_name, and model_name are somewhat self-explanatory, but the description adds no detail about units, allowed values, required relationships, or the meaning of timeout.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Create') and a specific resource ('surface heat flux load'), and the word 'surface' differentiates it from the sibling create_body_heat_flux. An agent can tell exactly what this tool does without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to prefer this tool over alternatives such as create_body_heat_flux, create_pressure_load, or create_gravity_load. The only implied cue is the word 'surface' in the description, which is not sufficient routing guidance for an agent comparing many load-creation tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_heat_transfer_stepC
Create a Heat Transfer step.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| max_inc | No | ||
| min_inc | No | ||
| timeout | No | ||
| model_name | No | Model-1 | |
| description | No | ||
| initial_inc | No | ||
| time_period | No | ||
| previous_step | No | Initial |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only repeats the creation action and provides no information about side effects, model modifications, coupling with other steps, or required context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short, but it is under-specification rather than conciseness. The single sentence essentially restates the tool name and provides no additional information, so it does not earn its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the high parameter count (9), the presence of many similar step-creation siblings, and the total absence of annotation or schema descriptions, this one-line description is completely inadequate for correct tool selection and invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate by explaining parameters. It does not mention any of the 9 parameters or their roles, leaving the agent to guess the meaning of fields like max_inc, min_inc, and time_period.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Create') and resource ('a Heat Transfer step'), making the basic action clear. However, it does not differentiate this step from siblings like create_coupled_temp_disp_step or create_static_step, so it stops short of full clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus the many other step-creation tools available in the sibling list. There is no mention of intended scenarios, prerequisites, or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_history_output_requestC
Create a history output request.
Args: variables: list of variable names region_name: set name for the region (empty = whole model) frequency: output frequency (every N increments)
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | H-Output-1 | |
| timeout | No | ||
| frequency | No | ||
| step_name | No | ||
| variables | No | ||
| model_name | No | Model-1 | |
| region_name | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It says the tool creates a request but does not mention side effects, whether it modifies an existing request, persists anything, or what happens on overwrite. The parameter hints are useful but do not cover the operational behavior of creating a history output request.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded with the action, followed by a short parameter list. It avoids fluff and each listed parameter has a terse definition. It is close to ideal in size, though the missing param explanations slightly reduce structural completeness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a create-type tool with seven parameters, no annotations, no parameter descriptions in the schema, and an output schema, this description is incomplete. It omits semantics for over half the parameters and provides no guidance on when this request fits into the broader workflow. More context about required setup and the meaning of step_name and model_name is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It explains variables, region_name, and frequency, which are meaningful additions. However, four of the seven parameters (name, timeout, step_name, model_name) receive no explanation beyond schema defaults, leaving significant gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Create a history output request.' This is clear enough to distinguish from sibling tools like create_field_output_request and get_history_output, though it does not explicitly name those alternatives. The args list reinforces the intent by showing request-specific fields like variables and frequency.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as create_field_output_request or when a history output request is appropriate. It only lists parameters without any context about prerequisites like requiring a step or model.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_hyperelastic_materialC
Create a hyperelastic (Mooney-Rivlin) material.
| Name | Required | Description | Default |
|---|---|---|---|
| d1 | No | ||
| c01 | No | ||
| c10 | Yes | ||
| name | Yes | ||
| density | No | ||
| timeout | No | ||
| model_name | No | Model-1 |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure, but it only states the creation action and material type. It does not mention side effects, model prerequisites, whether an existing material with the same name is overwritten, or whether an active Abaqus/model context is required.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no filler; every word contributes to identifying the tool's purpose. It is concise but arguably too terse relative to the seven-parameter schema, which prevents a higher score.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a creation tool with seven parameters, no annotations, and no parameter descriptions, this description is insufficient for correct invocation. It identifies the material family but omits required-input semantics, defaults' implications, prerequisites, and behavioral context; the presence of an output schema does not compensate for these gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate, but it only introduces the 'Mooney-Rivlin' model label, which hints that c10, c01, and d1 are constitutive coefficients without explicitly explaining them. The remaining parameters such as density, timeout, and model_name receive no semantic clarification at all.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb-resource pair ('Create ... material') and names the constitutive model 'hyperelastic (Mooney-Rivlin)', which makes the tool's purpose unambiguous. It is clearly distinguishable from sibling tools such as create_elastic_material, create_plastic_material, and create_viscoelastic_material.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided about when to choose this tool over alternatives like create_elastic_material or create_viscoelastic_material. The agent must infer selection from the name alone; there are no prerequisites, exclusions, or alternative recommendations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_instanceC
Create an instance of a part in the assembly.
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| part_name | Yes | ||
| model_name | No | Model-1 | |
| instance_name | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of behavioral disclosure. It communicates that the tool creates an instance, but it does not say whether this modifies the active assembly, whether duplicate instance names are allowed, or what side effects occur.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single clear sentence with no wasted words. However, it is under-specified for a tool with four parameters and zero schema descriptions, so conciseness comes at the cost of useful detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an agent to call this tool correctly, it needs to know which parameters matter, how instance naming works, and what model context applies. None of this is supplied by the description or schema, so the definition is not complete enough despite the presence of an output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for the undocumented parameters. It only maps to part_name implicitly and provides no meaning for timeout, model_name, or instance_name, leaving most parameters unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Create') and resource ('an instance of a part in the assembly'), making the tool's core function clear. It does not explicitly distinguish it from siblings like translate_instance or rotate_instance, but the resource and operation are specific enough.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided about when to use this tool versus creating a part or manipulating an instance. Prerequisites, such as the part needing to exist in the assembly, are not mentioned, leaving the agent to infer usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_line_loadC
Create a line load (force per unit length) on an edge set.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| timeout | No | ||
| direction | Yes | ||
| magnitude | Yes | ||
| step_name | Yes | ||
| model_name | No | Model-1 | |
| region_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It explains the load type and target surface, but it does not disclose units, coordinate-system conventions, the need for an existing edge set or step, overwrite behavior, or error conditions. This is thin for a mutating creation operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single efficient sentence with the core concept front-loaded and the clarifying definition in parentheses. There is no filler or redundancy, though the brevity comes at the cost of missing necessary operational detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 7 parameters, no annotations, and no schema descriptions, the description is too sparse. It omits required preconditions (existing edge set and step), direction semantics, unit conventions, and how it differs from sibling load tools. The presence of an output schema covers return values but not these usage requirements.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With schema description coverage at 0%, the description must compensate by explaining parameters, but it only hints that 'region_name' refers to an edge set and that 'magnitude' is force per unit length. It says nothing about direction, step_name, model_name, timeout, or name semantics, leaving most of the 7 parameters underspecified.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Create') and identifies both the resource ('line load') and the target ('edge set'), adding the clarifying parenthetical 'force per unit length.' It is clear and self-contained, though it does not explicitly compare against sibling tools such as create_shell_edge_load.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to choose this tool over related load-creation tools like create_pressure_load, create_body_force, or create_shell_edge_load. No prerequisites, exclusions, or alternative routes are mentioned, leaving the selection entirely to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_modal_stepC
Create a Frequency (modal) analysis step.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| timeout | No | ||
| num_modes | No | ||
| model_name | No | Model-1 | |
| description | No | ||
| previous_step | No | Initial |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of disclosing behavior. It only says the tool 'creates' a step, without mentioning side effects, prerequisites, whether it modifies the model, how it interacts with previous_step, or what it returns. For a mutation-style tool with zero annotation coverage, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no wasted words. It gets straight to the verb and object. It is concise, though arguably too sparse to carry the needed context for six parameters; that shortfall is better attributed to other dimensions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return-value documentation is not required from the description. However, with no annotations, no parameter descriptions, and no usage guidance, the definition is incomplete for an agent trying to correctly create a modal step. The description covers only the basic purpose, leaving operational context like model prerequisites and step ordering undocumented.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate by explaining parameters. It does not. The word 'modal' hints at num_modes and model_name, but timeout units, previous_step semantics, description usage, and the meaning of model_name are left entirely to defaults and parameter names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Create') and a specific resource ('Frequency (modal) analysis step'). The parenthetical 'modal' distinguishes it from the many sibling step-creation tools, such as create_static_step and create_explicit_step. It is clear but does not elaborate on the step's role in an analysis.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given for when to use this tool versus the many sibling step creators. There are no exclusions, alternatives, or conditions such as 'use for eigenvalue extraction' or 'for transient response use create_dynamic_implicit_step instead.' The agent must infer usage from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_moment_loadC
Create a moment load on a vertex or reference point.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| moment | Yes | ||
| timeout | No | ||
| step_name | Yes | ||
| model_name | No | Model-1 | |
| region_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full behavioral burden. 'Create' implies mutation, and the target location is stated, but there is no disclosure of side effects, overwrite behavior, units, or required context. This is a thin behavioral picture for a mutating operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with zero filler. The core action and target are front-loaded, and every word contributes to the meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with six parameters, no annotations, and zero schema descriptions, one sentence is not enough. Missing details like moment component order, units, which parameters correspond to which entities, and how the load is attached to a step leave the agent to guess.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description only weakly hints at region_name by mentioning 'vertex or reference point.' It does not explain the moment array's three component meanings, step_name semantics, model_name default behavior, or timeout usage, so the parameter burden is mostly unmet.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Create'), a specific resource ('moment load'), and a target ('on a vertex or reference point'). The tool is clearly distinguishable from force/pressure load siblings by type, though it does not explicitly name alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides no guidance on when to use a moment load rather than a concentrated force, pressure load, or other load type. It does not mention prerequisites, coordinate system expectations, or exclusions, so an agent gets no decision support beyond the action itself.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_mpc_constraintC
Create an MPC constraint.
Args: mpc_type: "BEAM", "LINK", "PIN", "TIE", "ELBOW", "SLIDER", "PLANAR", "REVOLUTE", "UNIVERSAL", "WELD"
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| timeout | No | ||
| mpc_type | Yes | ||
| model_name | No | Model-1 | |
| surface_name | Yes | ||
| control_point | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It says only 'Create an MPC constraint' and enumerates mpc_type values, but does not explain side effects, prerequisites, failure modes, or what happens to the model.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded with the core action. The Args section is minimal, but its brevity is appropriate; the main issue is omitted substance, not extra words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has six parameters, four of which are required, and sits among many similar constraint-creation tools, yet the description provides no context about required inputs, model dependencies, or relationship to alternatives. An agent cannot reliably determine what control_point or surface_name refer to from this definition.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, yet the description documents only mpc_type choices. Required parameters such as control_point, surface_name, and name are left undefined, so the description does not compensate for the schema's lack of parameter documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action and resource: 'Create an MPC constraint.' It is clear what the tool does at a high level, though it uses 'MPC' without explaining the concept and does not distinguish itself from sibling constraint-creation tools such as create_tie or create_coupling_constraint.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given for when to use this tool versus the many related constraint tools. The description only lists mpc_type choices, leaving the agent to infer that an MPC is a distinct constraint type from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_multiple_viewportsB
Create multiple viewports for side-by-side comparison.
Args: layout: "2x2", "3x1", "1x3", "2x1", "1x2"
| Name | Required | Description | Default |
|---|---|---|---|
| layout | No | 2x2 | |
| timeout | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure, but it only states the action and purpose. It does not say whether existing viewports are replaced or added to, whether a model or part must be present, or how the layout affects the viewport workspace. This is a meaningful transparency gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one focused sentence plus a terse args list with no filler. The purpose is front-loaded, and the layout choices are compactly displayed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is small and has an output schema, so return-value documentation is not a major gap. Still, with no annotations and no notes on prerequisites or timeout behavior, the description leaves the operational context partially to inference.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description enumerates valid layout values (2x2, 3x1, 1x3, 2x1, 1x2), adding meaning beyond the plain string default in the schema. However, the timeout parameter is never mentioned, leaving it fully undocumented at 0% schema description coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('create multiple viewports') and a purpose ('side-by-side comparison'), so an agent can tell what it does. It is distinct from single-viewport or capture-style tools like set_viewport_display and capture_viewport, though it does not name those alternatives explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'for side-by-side comparison' implies a primary use case, but there is no explicit when-to-use or when-not-to-use guidance, and no alternative tools are named. An agent must infer when this tool is preferable to set_viewport_display or capture_viewport.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_part_beamC
Create a 3D wire (beam) part.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| length | Yes | ||
| point1 | No | ||
| point2 | No | ||
| timeout | No | ||
| model_name | No | Model-1 |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only states that a part is created, with no mention of required Abaqus connection state, whether the part is added to a model, how defaults like point1/point2/model_name behave, or what the output contains.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. It is concise and easy to parse, though brevity comes at the cost of omitted context captured under other dimensions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with six parameters, no annotations, and meaningful defaults, this description is not complete enough. It leaves unclear how length relates to point1/point2, what coordinate system is used, and whether model_name or timeout affect behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not mention any of the six parameters. It does not clarify the meaning of length, the coordinate roles of point1/point2, the timeout parameter, or the model_name default, so it adds no value beyond the raw schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb-resource pair: 'Create a 3D wire (beam) part.' It clearly distinguishes this from sibling part-creation tools like create_part_sphere or create_part_cube by specifying the beam/wire geometry type, and from create_beam_section by explicitly saying 'part.'
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use this tool versus alternatives, prerequisites, or when not to use it. The name and description imply beam part creation, but there is no explicit routing or exclusion information compared to other create_part_* tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_part_cubeB
Create a 3D deformable cube/box part.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| depth | Yes | ||
| width | Yes | ||
| height | Yes | ||
| timeout | No | ||
| model_name | No | Model-1 |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full behavioral disclosure burden. It discloses that the created part is deformable (a genuine trait beyond the schema), but says nothing about side effects, whether the part is added to the model specified by model_name, what happens on duplicate names, or any operational dependencies.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler — every word earns its place. It is appropriately sized for what it communicates, though slightly terse given the missing supporting detail scored in other dimensions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a creation tool with 6 parameters, 0% schema coverage, and no annotations, the description is too thin. The output schema partially relieves it from documenting return values, but usage context, prerequisites, parameter meaning, and behavioral effects are all absent, leaving the agent to guess.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate, but it explains no parameters. Width/height/depth get implicit meaning from 'cube/box' as the box's extents, yet units are unspecified and model_name/timeout semantics are entirely unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Create') with a clear resource ('3D deformable cube/box part'). The shape qualifier 'cube/box' inherently distinguishes this from sibling tools like create_part_sphere, create_part_cylinder, create_part_beam, and create_part_plate, and 'deformable' adds a meaningful part-type qualifier.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the name and description — an agent can infer to use this when a box-shaped part is needed — but there is no explicit when-to-use guidance, no exclusions, and no mention of alternatives or prerequisites such as a live ABAQUS connection or an existing model.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_part_cylinderB
Create a 3D deformable cylinder.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| height | Yes | ||
| radius | Yes | ||
| timeout | No | ||
| model_name | No | Model-1 |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure, but it only states that a deformable cylinder is created. It does not disclose side effects on the current model, the target model_name, uniqueness requirements for 'name', units, or what the tool returns. The word 'deformable' adds some object-type context but is thin behavioral detail.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler; it uses the space efficiently. It is slightly under-specified, but as a concise statement of what the tool creates, it earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple part-creation tool with an output schema, the core purpose is clear and parameter names are mostly self-explanatory. However, the lack of usage guidance, model-target context, and parameter explanation leaves the definition only minimally complete for an agent deciding among many sibling creation tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, yet the description does not compensate by explaining any parameters. While 'radius' and 'height' are inferable from 'cylinder', the description adds no meaning for 'name', 'timeout', or 'model_name', and does not clarify required dimensions or defaults beyond what the schema already shows.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific action ('Create') and a distinct resource ('3D deformable cylinder'), which clearly differentiates it from sibling part-creation tools like create_part_sphere, create_part_cube, and create_part_plate. The modifier 'deformable' also distinguishes the part type from rigid alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to choose this tool over other create_part_* tools, nor are any conditions or prerequisites mentioned. The only implied context is the tool name and sibling list, leaving the agent to infer usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_part_plateB
Create a 3D shell (planar) part.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| width | Yes | ||
| height | Yes | ||
| timeout | No | ||
| model_name | No | Model-1 |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states that a part is created and that it is a 3D planar shell; it does not disclose side effects, prerequisites, default model behavior, units, or how the operation affects the current model.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no filler or redundancy, and the key information is front-loaded. However, it is somewhat under-specified for the given parameter set, so it earns a high but not perfect score for conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given five parameters, no schema descriptions, and no annotations, this description is too sparse to fully support correct use. While an output schema exists, parameter meaning, units, and usage context are missing, leaving important gaps for an agent to resolve independently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not explain any parameter semantics. Width and height are only implied as planar dimensions by the word 'planar', and name, timeout, and model_name are entirely unexplained, leaving the agent without the meaning needed for correct invocation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb ('Create') and resource ('3D shell (planar) part'), which distinguishes this tool from sibling part-creation tools like create_part_cube, create_part_cylinder, and create_part_sphere. The 'planar' qualifier makes the intended geometry unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for creating planar shell parts but provides no explicit guidance on when to choose this tool over alternatives. With many sibling part-creation tools, explicit differentiation such as 'use for flat rectangular plates' would be more helpful.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_part_sphereC
Create a 3D sphere part.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| radius | Yes | ||
| timeout | No | ||
| model_name | No | Model-1 |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only restates that a sphere is created, without mentioning whether an active model is required, how radius is interpreted, whether existing parts are affected, or any failure conditions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence with no wasted words, which is concise. However, it is under-specified: brevity comes at the expense of essential usage and parameter information, so the sentence does not fully earn its place as an adequate definition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with four parameters, no annotations, and an output schema not shown in the description, the definition is far too sparse. It omits units, defaults, required-parameter rationale, and any note about how the part is integrated into the current model, leaving significant gaps for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate by explaining parameter meanings, but it does not. It fails to describe name, radius, timeout, or model_name, leaving the agent without semantic context beyond raw schema types.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Create a 3D sphere part.' This cleanly distinguishes it from sibling tools like create_part_cube, create_part_cylinder, create_part_beam, and create_part_plate, so an agent can tell exactly which geometry this tool targets.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to choose this tool over other part-creation tools, nor are any prerequisites, exclusions, or context for calling it provided. An agent must infer usage entirely from the tool name and sibling list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_periodic_amplitudeC
Create a periodic (Fourier series) amplitude.
| Name | Required | Description | Default |
|---|---|---|---|
| a0 | No | ||
| name | Yes | ||
| timeout | No | ||
| frequency | Yes | ||
| model_name | No | Model-1 | |
| start_time | Yes | ||
| max_amplitude | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits on its own. It only says 'Create', which implies a mutation/resource creation side effect, but it does not explain whether it appends to a model, modifies existing state, requires a loaded model, or what effects it may have. With zero annotation coverage and no extra context, this is inadequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loaded with the core action, which is good, but it is too sparse to be considered appropriately sized. It needs at least some usage or parameter context to earn its place as a useful tool description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that this tool has 7 parameters, 4 required, no annotations, and no schema descriptions, the single-sentence description is far from complete. An output schema may cover return values, but the description still fails to explain required inputs, semantics, defaults, or when this amplitude type is appropriate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description adds no meaning to the seven parameters, including key ones like a0, frequency, start_time, and max_amplitude. An agent cannot infer parameter roles or units from 'periodic (Fourier series)' alone. This is a complete failure to compensate for the schema's lack of descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Create a periodic (Fourier series) amplitude.' The parenthetical 'Fourier series' clearly distinguishes this tool from its amplitude-creation siblings like create_tabular_amplitude and create_smooth_step_amplitude. An agent can tell what is being created.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance on when to use this tool versus the many other amplitude creators, nor does it mention any exclusions or alternatives. The word 'periodic' weakly implies a use case, but there is no explicit when-to-use or when-not-to-use information.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_pinned_bcB
Create a pinned BC (U1=U2=U3=0, rotations free).
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| timeout | No | ||
| step_name | No | Initial | |
| model_name | No | Model-1 | |
| region_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden. It discloses the core semantic (translations fixed, rotations free), but omits side effects such as whether the BC replaces existing constraints, whether the target region must already exist, or what the tool returns. For a mutating create operation, this is only partial transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, tightly packed sentence with no filler. It front-loads the action and the key constraint detail, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Although an output schema exists, the description is too thin for a 5-parameter creation tool: it neither explains the required parameters nor the prerequisites or application context (e.g., region must exist). An agent would likely need to inspect sibling tools or experiment to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not mention any of the five parameters. An agent gets no help understanding what 'name' refers to, how 'region_name' selects the region, or what 'timeout', 'step_name', and 'model_name' contribute beyond their schema titles/defaults.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Create'), the resource ('a pinned BC'), and the exact constraint behavior ('U1=U2=U3=0, rotations free'). This clearly distinguishes it from sibling boundary-condition tools like create_encastre_bc, which would fix rotations as well.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The usage context is implied by the DOF definition—use this when you need a pinned support with free rotations—but no explicit when-to-use or when-not-to-use guidance is given. It does not name alternatives like create_displacement_bc or create_encastre_bc as options to compare against.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_plastic_materialB
Create an elasto-plastic material with isotropic hardening.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| density | No | ||
| timeout | No | ||
| model_name | No | Model-1 | |
| yield_stress | Yes | ||
| poisson_ratio | Yes | ||
| plastic_strain | No | ||
| youngs_modulus | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full burden of behavioral disclosure, but it only restates the creation operation and material type. It does not disclose side effects on the model, whether a model must already exist, or how unspecified parameters such as plastic_strain are handled.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler; the core purpose is immediately clear. It is concise to the point of under-specification for an 8-parameter tool, but the structure itself is efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 8 parameters, 0% schema coverage, and no annotations, a one-sentence description is not enough for correct invocation. The output schema reduces the need to explain return values, but the definition still lacks parameter semantics, usage boundaries, and behavioral side-effect context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description names none of the 8 parameters. It does not explain how youngs_modulus, yield_stress, plastic_strain, density, model_name, or timeout relate to the elasto-plastic formulation, leaving semantics to be inferred solely from parameter names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: create an elasto-plastic material with isotropic hardening. This distinguishes the tool from siblings like create_elastic_material, create_hyperelastic_material, and create_viscoelastic_material.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool—when an elasto-plastic material with isotropic hardening is needed—but it does not explicitly state when not to use it or mention alternatives. The differentiation from other material-creation tools is left to inference from sibling names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_pressure_loadC
Create a pressure load.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| timeout | No | ||
| pressure | Yes | ||
| step_name | Yes | ||
| model_name | No | Model-1 | |
| region_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only restates that a pressure load is created and fails to explain dependencies, whether the load is applied to a face or surface, sign conventions, or what the operation returns.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence with no fluff, but it is severely under-specified. It adds little information beyond what the tool name already conveys, so the sentence does not meaningfully earn its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With six parameters, four required fields, zero schema descriptions, no annotations, and many sibling load-creation tools, this one-sentence description is far from complete. It omits required context about region semantics, step prerequisites, pressure meaning/units, and expected results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description mentions none of the six parameters. It adds no meaning to parameter names like pressure, region_name, or step_name, which is inadequate given the low schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Create') and direct object ('a pressure load'), which is enough to identify the resource being created. However, it does not distinguish this tool from the many other load-creation siblings (create_gravity_load, create_line_load, create_moment_load, etc.).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance on when to use a pressure load versus other load types, nor does it mention prerequisites such as an existing part region, step, or model. There are no exclusions or alternative tool references.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_reference_pointC
Create a reference point in the assembly.
| Name | Required | Description | Default |
|---|---|---|---|
| point | Yes | ||
| timeout | No | ||
| model_name | No | Model-1 |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure, but it only states that a reference point is created. It does not mention coordinate frame assumptions, model_name semantics, timeout effects, side effects, or error behavior, leaving the agent uninformed about important runtime behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, waste-free sentence with no filler or redundant phrases. It is appropriately front-loaded, though it is terse enough that it sacrifices useful detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Although an output schema exists and the tool appears conceptually simple, the description omits critical context such as coordinate semantics, model selection behavior, timeout meaning, and any constraints on when the operation can be performed. Without annotations or additional guidance, an agent may invoke it with incorrect assumptions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description provides zero parameter-level guidance and schema coverage is 0%. The schema gives structural details (three-number array, optional timeout, model_name default), but the description does not clarify what the coordinates represent, the coordinate system, units, or how model_name selects the target model, so meaning beyond the schema is missing.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('create'), a clear resource ('reference point'), and the scope ('in the assembly'), making the operation identifiable. It does not explicitly distinguish it from sibling tools, but no sibling is dedicated to reference points, so the risk of confusion is low.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use this tool instead of other create_* tools, nor are prerequisites, alternatives, or exclusions mentioned. The intended usage must be inferred from the tool name and the general 'in the assembly' phrase.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_rigid_body_constraintC
Create a rigid body constraint.
Args: body_type: "BODY" or "PIN" (pin constrains only translational DOFs)
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| timeout | No | ||
| body_type | No | BODY | |
| model_name | No | Model-1 | |
| region_name | Yes | ||
| ref_point_name | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the full burden. It adds one behavioral detail—PIN constrains only translational DOFs—but does not explain what a rigid body constraint does overall, what prerequisites exist, or what side effects occur. This is insufficient for a mutating tool with zero annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded with the core action, with no filler. It is under-specified relative to the six parameters, but structurally it wastes no words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given six parameters, 0% schema coverage, no annotations, and the presence of closely related constraint tools, the description is not complete enough. It omits the meaning of required parameters like region_name and the role of ref_point_name, and provides no usage context for selecting this constraint type.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It explains only body_type values and ignores the required parameters name and region_name, as well as ref_point_name, model_name, and timeout. The tool cannot be invoked correctly based on this description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear action and resource: 'Create a rigid body constraint.' This is a specific verb+resource pair. However, it does not distinguish this tool from sibling constraint tools like create_coupling_constraint, create_mpc_constraint, or create_equation_constraint.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance about when to use a rigid body constraint versus alternative constraint types. The body_type note explains a parameter but does not help an agent choose this tool over its siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_set_by_edgesB
Create a set from edges of an instance.
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| set_name | Yes | ||
| model_name | No | Model-1 | |
| edge_indices | Yes | ||
| instance_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral disclosure burden. It only says 'Create a set,' which implies mutation, but it does not explain overwrite behavior, persistence, assembly vs. part scope, or validation of edge indices.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no filler. Every word contributes to stating the tool's core action and target resource.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with five parameters, zero schema descriptions, and no annotations, this description is under-specified. It omits when to use it, how to supply edge indices, what model_name and timeout do, and what behavior to expect beyond creating a set.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It loosely maps 'edges' to edge_indices and 'instance' to instance_name, but it adds no meaning for timeout or model_name, and it does not clarify the expected format or semantics of edge_indices beyond the bare schema titles.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Create') and a specific resource ('a set from edges of an instance'). This clearly distinguishes it from sibling tools like create_set_by_face and create_set_by_vertices, which operate on different geometric entities.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies that this tool is for selecting edges rather than faces or vertices, but it never explicitly says when to use it or when to prefer alternatives. There are no prerequisites, exclusions, or comparisons with the other set-creation siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_set_by_faceC
Create a set from faces of an instance.
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| set_name | Yes | ||
| model_name | No | Model-1 | |
| face_indices | Yes | ||
| instance_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only reveals that the tool creates a set, which is a mutation, but says nothing about side effects, required permissions, whether existing sets are overwritten, how invalid face indices are handled, or any other behavioral consequences. This is a significant gap for a model-modifying operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no filler, front-loaded with the primary action and object. Every word contributes to meaning; this is appropriately concise for the information it conveys.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 5 parameters, 3 required, no annotations, and only a one-line description, the agent lacks sufficient context to invoke the tool correctly. The output schema is present, so return values are covered, but there is no guidance on how to specify face indices, identify the instance, or choose this tool over its siblings. The description is too thin for the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It semantically ties face_indices and instance_name to the concept of 'faces of an instance', but it does not explain set_name, model_name, or timeout. The required set_name parameter is only implied by the phrase 'create a set', and optional parameters remain entirely opaque.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (create) and the resource (a set from faces of an instance), using the specific element type 'faces' to distinguish it from sibling tools like create_set_by_edges and create_set_by_vertices. Though it does not name the siblings explicitly, the face-based selection makes the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives such as create_set_by_edges, create_set_by_vertices, or surface creation tools. No prerequisites, exclusions, or contextual triggers are provided, leaving the agent to infer usage entirely from the tool name and short description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_set_by_verticesC
Create a set from vertices of an instance.
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| set_name | Yes | ||
| model_name | No | Model-1 | |
| instance_name | Yes | ||
| vertex_indices | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full responsibility for behavioral disclosure. It only states that a set is created, but does not mention whether existing sets with the same name are overwritten, whether the model must already contain the instance, or any side effects on the model.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence and is front-loaded with the core purpose. However, it is under-specified for a tool with five parameters and several close siblings, making it concise at the expense of necessary guidance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 5-parameter tool with no annotations and no property-level schema descriptions, this description is incomplete. An agent invoking this tool still needs to infer critical details about vertex index semantics, model identity, timeout behavior, and whether the operation mutates an existing model. The presence of an output schema is helpful but does not fill these gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema property descriptions are completely absent (0% coverage), so the description must compensate. It adds minimal meaning by connecting 'vertices' and 'instance' to vertex_indices and instance_name, but it does not explain the meaning of set_name, model_name, timeout, or how vertex_indices map to the geometry.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource ('Create a set') and clearly identifies the selection basis ('from vertices of an instance'). This differentiates it from sibling tools like create_set_by_face and create_set_by_edges without needing to inspect schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to choose this over the many sibling set-creation tools (e.g., set by face, set by edges). No prerequisites or exclusions are mentioned, so an agent cannot determine the appropriate context beyond the name itself.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_shell_edge_loadC
Create a shell edge load (force per unit length).
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| timeout | No | ||
| direction | Yes | ||
| magnitude | Yes | ||
| step_name | Yes | ||
| model_name | No | Model-1 | |
| region_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral disclosure burden. It correctly implies a mutating create operation, but does not explain side effects, preconditions, validation behavior, or failure modes. The 'force per unit length' detail is helpful but minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no redundancy or filler. However, it is arguably too terse for a seven-parameter tool with no schema descriptions, so it does not quite reach the top score.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity, high parameter count, and lack of annotations or schema descriptions, this one-line definition is insufficient. It omits preconditions, what region_name and step_name must reference, how direction is expressed, and how this tool differs from similar sibling tools. The output schema reduces the need to describe return values, but major operational gaps remain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for undocumented parameters. It gives some context for magnitude via 'force per unit length' and hints that region_name is a shell edge, but none of the seven parameters are meaningfully explained beyond their names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action and resource: create a shell edge load, and adds the physical meaning 'force per unit length.' It is specific but does not explicitly differentiate it from closely related siblings such as create_line_load or create_pressure_load.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus the many other load-creation tools, nor any mention of prerequisites such as an existing shell edge region or analysis step. Usage is only implied by the tool name and minimal description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_shell_sectionC
Create a homogeneous shell section.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| timeout | No | ||
| thickness | Yes | ||
| model_name | No | Model-1 | |
| material_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure, but it only restates the creation action and adds no detail about side effects, required context, or what happens to the model. It does not contradict any annotations, but it is far from transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The single sentence is brief and front-loaded, but it is under-specified rather than efficiently complete. It earns its place as a statement of intent but omits essential behavioral and parameter context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with five parameters, no annotations, and no explanation of how the shell section integrates with the model or materials, this description is grossly incomplete. The output schema helps define the return value but cannot compensate for missing usage and parameter semantics.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description mentions none of the five parameters. An agent cannot infer what 'name', 'thickness', 'material_name', 'model_name', or 'timeout' mean in relation to the shell section beyond their generic schema titles.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Create' with the resource 'shell section', and the qualifier 'homogeneous' adds a useful distinction. This distinguishes it from sibling tools like create_beam_section and create_solid_section, though it does not elaborate on what 'homogeneous' means in this context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided about when to use this tool versus alternatives such as create_beam_section or create_solid_section. The description gives a clear object type but no context, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_smooth_step_amplitudeC
Create a smooth step amplitude.
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | ||
| name | Yes | ||
| timeout | No | ||
| model_name | No | Model-1 |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the behavioral disclosure burden. It only states that the tool creates an amplitude; it does not mention side effects, prerequisites, whether existing amplitudes are overwritten, or what happens on failure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short and front-loaded, but it is under-specified rather than appropriately concise. It offers no meaningful detail beyond expanding the tool name into a sentence.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 4 parameters, no annotations, and no schema coverage, the description is inadequate. An agent would not know how to populate 'data', whether model_name matters, or how this amplitude interacts with the broader model creation workflow.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description adds no explanation of the parameters. 'data' is an array of number pairs but the description does not indicate that these are time-amplitude pairs or how they should be formatted for a smooth step amplitude.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the operation 'Create a smooth step amplitude', identifying a specific verb and resource. It is distinguishable from sibling amplitude tools like create_tabular_amplitude and create_periodic_amplitude by the amplitude type, though it does not explicitly contrast them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided about when to use this tool versus the other amplitude creation tools. The description gives no context for choosing a smooth step amplitude over tabular or periodic alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_solid_sectionB
Create a homogeneous solid section.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| timeout | No | ||
| model_name | No | Model-1 | |
| material_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only restates the creation action with a resource qualifier ('homogeneous') and gives no information about side effects, prerequisites, overwrite behavior, or what happens when the material does not exist.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no fluff or repetition. It is maximally concise, though the terseness means it sacrifices substance; still, from a conciseness standpoint it is appropriately compact.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with four parameters, no annotations, and many sibling creation tools, this description is too sparse. It does not clarify whether the section is assigned to a part, whether material_name must already exist, or when to choose this over create_beam_section/create_shell_section, leaving important context unaddressed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description adds no meaning for the four parameters (name, timeout, model_name, material_name). It does not explain that material_name must reference an existing material, how model_name is used, or what timeout controls, so the agent is left without parameter-level guidance.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Create') and resource ('homogeneous solid section'), clearly distinguishing this from sibling tools like create_beam_section and create_shell_section. The term 'solid' disambiguates the section type without requiring the agent to inspect schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The word 'solid' implies when this tool is appropriate versus beam or shell section tools, but it does not explicitly mention alternatives or conditions. There is no guidance about prerequisites like needing an existing material or model, so usage context is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_specific_heatB
Add specific heat to an existing material.
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| model_name | No | Model-1 | |
| material_name | Yes | ||
| specific_heat | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It only says 'Add', implying mutation, but does not disclose whether calling it again overwrites or duplicates, whether the material is modified in place, or what outputs/side effects to expect.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single concise sentence with no filler. The core operation and key prerequisite are immediately clear, and the description earns its place without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and 0% schema parameter coverage, the description is too thin for an agent to invoke this safely. It omits units, behavior on repeat calls, and any parameter guidance beyond the central concept, despite having an output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate, but it only names 'specific heat' and implies 'material'. It does not clarify units, valid ranges, the meaning of model_name, or why material_name is required, leaving the agent to guess.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Add') and the target resource ('specific heat to an existing material'). It distinguishes from material-creation siblings by emphasizing the material already exists, though it does not explicitly name alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'existing material' conveys an important context: the material must already exist before calling. However, it does not explain when to prefer this over related thermal-property tools like create_thermal_expansion or create_thermal_conductivity, nor does it mention exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_static_riks_stepC
Create a Static Riks step (for post-buckling analysis).
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| nlgeom | No | ||
| timeout | No | ||
| model_name | No | Model-1 | |
| description | No | ||
| max_arc_inc | No | ||
| min_arc_inc | No | ||
| previous_step | No | Initial | |
| max_increments | No | ||
| initial_arc_inc | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It only restates the creation action and offers no disclosure about model mutation, prerequisites, dependency on previous steps, or failure behavior. For a tool that creates a complex analysis step, this is a notable transparency gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loaded, but it is under-specified relative to the tool's complexity. Being concise is good, but with 10 undocumented parameters and an extensive sibling list, a bit more structured guidance would make the description appropriately sized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 10 parameters, zero schema descriptions, and no annotations, the single-sentence description is far from complete. It states the purpose but omits parameter semantics, distinctions from related step tools, and practical usage context. The output schema reduces the need to describe return values, but the input side remains insufficiently covered.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description provides no explanation of the 10 parameters, their roles, or how they relate to the Static Riks procedure. The agent receives no semantic assistance beyond the bare parameter names and defaults.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb and resource ('Create a Static Riks step') and adds a use context ('for post-buckling analysis'), which helps distinguish it from more generic step tools. However, it does not explicitly contrast it with closely related siblings like create_buckle_step or create_static_step, so sibling differentiation is only implicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The parenthetical 'for post-buckling analysis' implies when this tool should be used, but no explicit alternatives or exclusion conditions are stated. Given the many sibling step-creation tools, clearer routing guidance would be valuable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_static_stepC
Create a Static, General step.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| nlgeom | No | ||
| max_inc | No | ||
| min_inc | No | ||
| timeout | No | ||
| model_name | No | Model-1 | |
| description | No | ||
| initial_inc | No | ||
| max_num_inc | No | ||
| previous_step | No | Initial |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only says 'Create a Static, General step' and does not disclose that this mutates a model, appends a step, interacts with previous_step, or selects an analysis procedure. The operational behavior is left entirely to inference.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words or filler. It is structurally clean; the issue is under-specification, which is penalized in other dimensions rather than this one.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a mutating tool with 10 parameters, no annotations, and numerous closely related sibling tools, yet the description gives only a one-line definition. It omits crucial context about how the step connects to previous_step, which model_name applies to, how it differs from other step types, and what the output schema represents.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 10 parameters with 0% description coverage, and the tool description names none of them. Parameters like nlgeom, initial_inc, max_num_inc, max_inc, and previous_step receive no explanation, so the description adds zero semantic value beyond the bare parameter names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Create') and a specific resource ('Static, General step'), and the capitalized Abaqus terminology distinguishes it from sibling step tools such as create_static_riks_step and create_explicit_step. It does not, however, mention where the step is placed (model, assembly) or what the returned object is, preventing a top score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this step versus alternatives like create_dynamic_implicit_step, create_heat_transfer_step, create_static_riks_step, or create_explicit_step. With dozens of sibling step-creating tools, the absence of any use-condition or exclusion makes selection the agent's problem.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_surfaceB
Create a surface from faces of an instance.
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| model_name | No | Model-1 | |
| face_indices | Yes | ||
| surface_name | Yes | ||
| instance_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the full burden of behavioral disclosure. It only states the basic operation, without addressing side effects, overwrite behavior, requirements for the instance, or what happens after creation. This is a minimal statement of intent, not a transparent behavioral contract.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no filler. Every word contributes to the core meaning, and it ends with the key scoping detail about faces and instance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with five parameters, three required, no annotations, and no schema descriptions, this description is underspecified. It does not clarify which model the instance belongs to, how face indices are interpreted, or what constraints apply. Despite the presence of an output schema, an agent would likely need to inspect sibling tools or infer too much to use this confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description should compensate by explaining parameter roles. It only hints at face_indices and instance_name via 'faces of an instance,' and says nothing about surface_name, model_name, or timeout. The semantic value added beyond the schema is minimal.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (create), the resource (surface), and the input source (faces of an instance). It also distinguishes this tool from the sibling create_surface_by_edges by specifying faces rather than edges as the source geometry.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'from faces of an instance' implies the tool should be used when a surface needs to be built from face geometry, but it does not explicitly state when to use this tool versus alternatives such as create_surface_by_edges. No exclusions or alternative routing are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_surface_by_edgesB
Create a surface from edges of an instance (for shell/beam).
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| model_name | No | Model-1 | |
| edge_indices | Yes | ||
| surface_name | Yes | ||
| instance_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure, but it only restates the basic operation. It does not mention whether existing surfaces are overwritten, what constraints apply to edge_indices, whether the instance must already exist, or what side effects occur in the model environment.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence, front-loads the primary action, and contains no redundant or filler words. It is efficiently structured for quick agent parsing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 5 parameters, no schema descriptions, and no annotations, the description is too sparse. It does not explain prerequisites like whether the instance must exist, how edge indices should be obtained, or how this operation relates to the wider surface/shell/beam workflow. The presence of an output schema lessens the need to describe return values, but other operational context is still missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not explain individual parameters. It does add some relational meaning by clarifying that edges belong to an instance, but surface_name, model_name, timeout, and the exact semantics of edge_indices remain underspecified.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Create a surface'), a clear resource ('from edges of an instance'), and an intended domain ('for shell/beam'). This distinguishes it from more generic surface-creation tools, though it does not explicitly contrast with the sibling tool 'create_surface'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The parenthetical 'for shell/beam' implies the tool is intended for shell/beam model creation, giving some usage context. However, the description provides no explicit when-to-use guidance, exclusions, prerequisites, or comparison with alternatives such as 'create_surface' or 'create_set_by_edges'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_surface_to_surface_contactC
Create a surface-to-surface contact interaction.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| timeout | No | ||
| step_name | No | Initial | |
| model_name | No | Model-1 | |
| slave_surface | Yes | ||
| master_surface | Yes | ||
| interaction_property | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only says 'Create' and does not mention side effects, required pre-existing entities (surfaces, interaction property), which step the interaction is added to, or any modeling consequences. For a mutation-style creation tool, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no redundancy or filler. However, it is under-specified rather than efficiently informative; it reads almost like a restatement of the tool name and omits behavioral or usage details that would make the sentence more valuable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Although an output schema exists, the description is not complete enough for a creation tool with 7 parameters and 0% schema coverage. It lacks context about required preconditions, the Abaqus/Standard versus Explicit distinction, and how the interaction is incorporated into the model. An agent would need to inspect sibling tools and parameter names to use this correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description adds no meaning beyond the parameter names already present in the schema. It does not explain the relationship between master_surface, slave_surface, and interaction_property, nor the role of step_name, model_name, or timeout. With such low coverage, the description was required to compensate and did not.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Create') and a specific resource type ('surface-to-surface contact interaction'), so an agent can tell this apart from tie constraints and general contact. However, it does not distinguish this tool from its near-twin sibling create_surface_to_surface_contact_exp, so it misses the last step of explicit sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance about when to choose this tool over alternatives such as create_surface_to_surface_contact_exp, create_general_contact, or create_tie. The description does not mention preferred contexts, prerequisites, or exclusions, leaving the agent to infer usage from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_surface_to_surface_contact_expB
Create a surface-to-surface contact interaction for explicit analysis.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| timeout | No | ||
| step_name | No | Initial | |
| model_name | No | Model-1 | |
| slave_surface | Yes | ||
| master_surface | Yes | ||
| interaction_property | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only restates the creation action and adds the analysis type, but does not disclose side effects, prerequisites (e.g., master/slave surfaces and a contact property must already exist), or how the interaction is attached to the model.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no filler and the key action is front-loaded. It is appropriately brief, though the brevity leaves out important context that is penalized in other dimensions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given this is a creation tool with seven parameters, no annotations, and zero schema coverage, the description is far too minimal. It does not mention required preconditions, the relationship to other contact tools, or any guidance on how the parameters should be supplied. The presence of an output schema is not enough to compensate for the missing operational context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description mentions none of the seven parameters, including required fields like master_surface, slave_surface, and interaction_property. The description provides no guidance on parameter meaning, format, or relationships, so the agent receives no value beyond the raw schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Create') and resource ('surface-to-surface contact interaction'), and adds the qualifier 'for explicit analysis' to distinguish it from the sibling create_surface_to_surface_contact tool. An agent can readily tell what this tool does and which sibling it likely complements.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'for explicit analysis' provides clear context that this tool is intended for explicit analysis procedures, separating it from the non-exp contact creation tool. However, it does not explicitly mention when not to use it or name alternatives such as create_general_contact_exp.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_symmetry_bcC
Create a symmetry boundary condition.
Args: symmetry_type: "XSYMM", "YSYMM", "ZSYMM", "XASYMM", "YASYMM", "ZASYMM"
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| timeout | No | ||
| step_name | No | Initial | |
| model_name | No | Model-1 | |
| region_name | Yes | ||
| symmetry_type | No | ZSYMM |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the full burden of behavioral disclosure. It only says the tool creates a symmetry BC and lists symmetry_type values; it does not describe what applying the BC does, which regions/faces it applies to, side effects, validation behavior, or whether it mutates existing model state. For a mutation tool, this is a significant transparency gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The text is short and front-loaded with the core purpose, which is good. However, the 'Args' block lists only one of six parameters and is presented as a complete argument doc, which is structurally misleading. The conciseness is achieved at the expense of necessary parameter information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with six parameters, no annotations, and no schema-level parameter descriptions, the description is far too thin. It lacks any explanation of required inputs, defaults, or how the symmetry_type choices affect the created BC. The list of symmetry_type constants provides some domain context, but an agent cannot reliably invoke this tool correctly from this description alone.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It adds useful allowed values for symmetry_type, but this is the only parameter documented despite there being six parameters. Crucially, the required parameters name and region_name are never mentioned, which could lead an agent to omit them. The partial 'Args' section overstates its completeness.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Create') and a specific resource ('a symmetry boundary condition'), which distinguishes it from sibling BC tools like create_encastre_bc or create_displacement_bc. It also lists the meaningful symmetry type variants, giving the agent a clear sense of the tool's domain. However, it does not explain what each symmetry type means or how this BC behaves physically.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to choose this tool over the many sibling boundary condition tools. It does not mention applicability, prerequisites, or scenarios where a symmetry BC is appropriate versus an encastre, displacement, or pinned BC. The agent must infer usage solely from the tool name and the symmetry_type values.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_tabular_amplitudeC
Create a tabular amplitude.
Args: data: list of (time/frequency, amplitude) tuples smooth: "SOLVER_DEFAULT", "STEP", "LINEAR", "SMOOTH"
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | ||
| name | Yes | ||
| smooth | No | SOLVER_DEFAULT | |
| timeout | No | ||
| model_name | No | Model-1 |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the full behavioral disclosure burden. It only states the creation action and two arguments; it does not explain how smooth affects the amplitude, which model is modified, whether existing amplitudes are overwritten, or what side effects occur. This is a significant gap for a mutating tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, front-loaded with the purpose, and uses a clean Args breakdown. It contains no filler, though the Args section is incomplete relative to the five parameters in the schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return-value documentation is unnecessary. However, for a model-mutating tool among many create_* siblings, the description does not explain when to choose tabular over smooth-step or periodic amplitudes, and several parameters remain undocumented in prose, limiting how confidently an agent can invoke the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds real meaning for data by describing it as '(time/frequency, amplitude) tuples' and lists valid values for smooth. However, it omits the required name parameter as well as timeout and model_name, so it only partially compensates for the 0% schema description coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear action and resource: 'Create a tabular amplitude.' The word 'tabular' separates it from the sibling smooth-step and periodic amplitude tools, though the description does not explicitly contrast those alternatives or explain the concept further.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance is given. The data argument hints at time/frequency-based input, but the description never tells an agent to prefer this tool over create_smooth_step_amplitude or create_periodic_amplitude, and it offers no exclusions, prerequisites, or context for choosing among the amplitude tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_temperature_bcC
Create a temperature boundary condition.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| timeout | No | ||
| magnitude | Yes | ||
| step_name | No | Initial | |
| model_name | No | Model-1 | |
| region_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure, but it only restates the action implied by 'create.' It does not explain that this adds a new boundary condition to a region, whether it overwrites existing temperature BCs, or any side effects on the model.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The one-sentence description is concise and front-loaded with the core purpose, containing no filler. However, the terseness sacrifices necessary explanatory detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given six parameters (three required), no annotations, and zero schema descriptions, this description is drastically under-specified. An agent cannot safely invoke the tool without guessing at parameter semantics, prerequisites, or expected model changes.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description names none of the six parameters. 'Magnitude', 'region_name', 'step_name', and 'model_name' remain completely unexplained, leaving the agent unable to determine valid values or which parameters are truly essential.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Create a temperature boundary condition.' This clearly distinguishes it from other boundary-condition tools (e.g., displacement, encastre) by naming the type, though it doesn't explicitly contrast with any sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided about when to use this tool versus alternatives (e.g., when a temperature BC is appropriate vs. a heat-flux load), nor any prerequisites like requiring an existing region or model. The agent is left to infer all usage context from the tool name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_thermal_conductivityC
Add thermal conductivity to an existing material.
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| model_name | No | Model-1 | |
| conductivity | Yes | ||
| material_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry behavioral disclosure. It only says 'Add', which is already implied by the name, and does not disclose whether existing conductivity values are overwritten, whether the material must exist, or what error behavior to expect.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no wasted words and the core action is front-loaded. It is appropriately sized, though very minimal.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values are covered, but the description leaves important context missing: material existence, units, overwrite behavior, and the purpose of optional parameters. With 0% schema coverage and no annotations, the description does not fully compensate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description adds no parameter-level meaning beyond the schema property names. Conductivity and material_name are inferable, but timeout and model_name are unexplained, and units or valid ranges are not addressed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear action ('Add') and a specific resource ('thermal conductivity to an existing material'), which distinguishes it from material-creation siblings. It does not explicitly differentiate from similar property-adding tools like create_thermal_expansion, though the property name makes the distinction reasonably clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'existing material' implies the material should already be created, but there is no explicit guidance on when to use this tool versus alternatives. It does not state prerequisites, conditions, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_thermal_expansionB
Add thermal expansion to an existing material.
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| model_name | No | Model-1 | |
| material_name | Yes | ||
| expansion_coefficient | Yes | ||
| reference_temperature | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It conveys a mutating operation on an existing material but does not address side effects, error behavior if the material is missing, overwriting existing properties, or what changes occur in the model.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, front-loaded, and free of filler. It is appropriately concise as a purpose statement, even though other dimensions suffer from the lack of elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no annotations, 0% parameter coverage, and five parameters including a non-obvious reference_temperature, this is too sparse for reliable invocation. The description acknowledges the existing-material prerequisite but omits units, defaults, and behavioral context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description needed to clarify expansion_coefficient units, reference_temperature meaning, and model_name role. It only relates to 'thermal expansion' broadly and leaves most parameter semantics unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific action ('Add thermal expansion') and target ('existing material'), clearly distinguishing it from sibling material-property tools like create_thermal_conductivity and create_specific_heat. An agent can tell exactly what this tool does without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'existing material' implies a prerequisite and distinguishes this from material-creation tools, but it does not explicitly state when to use this tool over alternatives or mention exclusions. Usage context is present only implicitly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_tieC
Create a tie constraint.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| timeout | No | ||
| model_name | No | Model-1 | |
| slave_surface | Yes | ||
| master_surface | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only says a tie constraint is created, and does not mention side effects, required existing surfaces, or behavior on invalid input.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loaded, but it is under-specified rather than usefully concise. One sentence that adds almost nothing beyond the tool name does not earn its place as a helpful definition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 5 parameters, 3 required fields, no parameter descriptions, and no annotations, the description is too sparse for an agent to call the tool correctly. It omits the meaning of a tie constraint and the relationship between master and slave surfaces.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With schema description coverage at 0%, the description needed to explain master_surface, slave_surface, and name, but it does not. It implies a tie between surfaces only through the tool name, not through any parameter-level guidance.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Create') and resource ('tie constraint'), which is clear enough to distinguish it from sibling constraint tools like create_rigid_body_constraint, create_coupling_constraint, and create_mpc_constraint. However, it does not explain what a tie constraint does, so it stops short of being fully informative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance about when to use this tool versus the many sibling constraint or contact tools. It does not state prerequisites, conditions, or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_velocity_bcC
Create a velocity boundary condition.
| Name | Required | Description | Default |
|---|---|---|---|
| v1 | No | ||
| v2 | No | ||
| v3 | No | ||
| name | Yes | ||
| timeout | No | ||
| step_name | No | Initial | |
| model_name | No | Model-1 | |
| region_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only says 'create' with no mention of required inputs, model/step assumptions, side effects on existing conditions, or what happens to unspecified velocity components.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single efficient sentence with no wasted words. However, it is so terse that it sacrifices useful content; still, from a conciseness standpoint it is appropriately brief.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 8 parameters, no annotations, and a large sibling family of BC creators, the description is far too minimal. It does not explain the role of velocity components, the need for a valid region, or defaults like step_name and model_name, leaving significant gaps for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description adds no parameter meaning at all. It does not clarify what v1, v2, v3 represent, what region_name refers to, how step_name/model_name interact, or what timeout means.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear verb ('Create') and a specific resource ('velocity boundary condition'). This distinguishes it from sibling BC tools like create_displacement_bc and create_acceleration_bc, though it does not explain what a velocity BC does in the simulation context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives such as create_displacement_bc or create_acceleration_bc. The description simply states the action with no context about prerequisites, typical use cases, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_viscoelastic_materialC
Create a viscoelastic material with Prony series.
Args: relaxation_data: list of (g_i, k_i, tau_i) Prony series terms
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| density | No | ||
| timeout | No | ||
| model_name | No | Model-1 | |
| poisson_ratio | Yes | ||
| youngs_modulus | Yes | ||
| relaxation_data | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states only that a material is created — nothing about side effects (e.g., overwriting an existing material of the same name), validation of Prony series weights, or whether the operation is reversible. For a creation tool with zero annotation coverage, this is a significant omission.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded with the purpose statement, followed by a single Args entry. There is no filler, repetition, or wasted words. The docstring-style Args block is slightly awkward in a tool description since the input schema already encodes the parameter shape.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 7-parameter creation tool with no annotations and no schema-level parameter descriptions, the description is far from complete: no prerequisites, no validation constraints (e.g., bounds or sums on g_i/k_i), and no side-effect disclosure. The presence of an output schema mitigates the need to document return values, but it does not compensate for the missing operational context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate, but it documents only relaxation_data as 'list of (g_i, k_i, tau_i) Prony series terms'. While that is the most opaque parameter, the tuple labels are never defined (g_i = relative shear modulus, k_i = relative bulk modulus, tau_i = relaxation time), and the other six parameters receive no semantic explanation at all.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with 'Create a viscoelastic material with Prony series' — a specific verb, resource, and constitutive formulation. The resource type inherently distinguishes it from sibling material tools like create_elastic_material, create_plastic_material, and create_hyperelastic_material, though it never names them explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to choose this tool over the many sibling material-creation tools, and no prerequisites or exclusions are stated (e.g., whether an active model/part must exist first). With a sibling list this dense, the absence of routing guidance is a real gap; usage intent is only implied by the material-type name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_capsuleB
Delete a saved experiment capsule.
| Name | Required | Description | Default |
|---|---|---|---|
| capsule_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the full burden of behavioral disclosure. It indicates a destructive action but does not state whether deletion is permanent, irreversible, or what happens to dependent data or references.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. It is appropriately concise for such a simple tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values are likely covered, but for a destructive operation the lack of side-effect, reversibility, and safety context leaves the definition incomplete. The one-line description is minimal but missing important operational context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not mention capsule_id at all. The parameter meaning must be inferred entirely from its name and the tool description, with no guidance on format or where to find the identifier.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Delete') and resource ('saved experiment capsule'), making the tool's action immediately clear. It also differentiates from sibling capsule tools such as create_capsule, list_capsules, load_capsule, and compare_capsules.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given for when to use this tool versus alternatives, nor any exclusions or prerequisites. An agent must infer appropriate usage solely from the tool name and description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
diagnose_jobA
Run a comprehensive solver-log diagnosis on a job's output files.
Scans .sta, .msg, .dat, .log files for 40+ known error/warning patterns across 14 categories: license, convergence, model setup, contact, material, resources, environment, ODB, syntax, explicit, output, scripting, mesh, and general.
Returns a structured Markdown diagnostic panel with severity markers, source file references, and actionable fix suggestions.
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| workdir | No | ||
| job_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the full burden of behavioral disclosure. It transparently describes the scanning behavior, the file types examined, the pattern coverage, categories, and the exact output format (Markdown panel with severity markers, source file references, and fix suggestions). It does not explicitly state that the operation is read-only or describe timeout behavior, but 'scans' and 'diagnosis' strongly imply no mutation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and well-structured: a one-sentence purpose statement is followed by two scannable lines covering scope and output. Every sentence adds information, and there is no filler or repetition of the tool name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema and only one required parameter, the description covers the core invocation context well: what the tool scans, why it is useful, and what form the report takes. It falls short only on parameter semantics and explicit alternative routing, which are already penalized in their respective dimensions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for the undocumented parameters. It gives some context about job_name via 'a job's output files,' but it provides no explanation for timeout or workdir, and does not clarify how job_name relates to locating output files. This is below the minimum viable level for parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Run') and resource ('a job's output files'), and elaborates exactly what it does: scans .sta, .msg, .dat, .log files for 40+ error/warning patterns across 14 named categories. This clearly distinguishes it from sibling tools like check_model_integrity or inspect_odb by grounding it in solver-log diagnosis.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: call this when you need a comprehensive diagnosis of solver log output files and want actionable fixes. However, it does not explicitly state when to prefer this over alternatives such as converge_advice, check_silent_failures, or monitor_job_status, nor does it give any exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
execute_scriptC
Compatibility wrapper around run_python that returns stdout/text.
| Name | Required | Description | Default |
|---|---|---|---|
| script | Yes | ||
| timeout | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It only mentions the return value (stdout/text) but says nothing about execution side effects, errors, timeout behavior, or safety implications of running arbitrary scripts. This is a significant gap for a script execution tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no filler. It states the core identity and return behavior efficiently, earning every word.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter script execution tool with no annotations, the description is incomplete. It lacks parameter semantics, timeout behavior, and any guidance on when to use this wrapper instead of run_python. The output schema does not compensate for these missing behavioral and usage details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not mention either the script or timeout parameter. It adds no meaning beyond the raw property names, so an agent cannot determine how to format the script or what timeout values are valid.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool as a compatibility wrapper around run_python and states it returns stdout/text, which conveys that it executes scripts and returns their text output. It distinguishes itself from run_python, though 'wrapper' is more a description of its nature than a direct action verb.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Naming run_python as the underlying tool provides useful context and implies run_python may be the preferred native alternative. However, it does not explicitly state when to use this wrapper versus run_python, nor any exclusions or compatibility scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
extract_kpisB
Extract KPIs from an ODB file using declarative queries.
queries is a JSON array of query objects, each with:
query_id (str): unique identifier for this KPI
field (str): field output name, e.g. "S", "U", "RF", "PEEQ", "NT"
component (str, optional): e.g. "Mises", "U1", "S11", "RF2"
invariant (str, optional): e.g. "Mises", "MaxPrincipal", "Tresca"
step (str, optional): step name, default first step
frame (str, optional): "last", "first", or frame index, default "last"
aggregation (str, optional): max, min, sum, avg, range, abs_max, default "max"
region (str, optional): node/element set name, default ALL
Example queries JSON: [ {"query_id": "max_stress", "field": "S", "invariant": "Mises", "aggregation": "max"}, {"query_id": "max_disp", "field": "U", "component": "Magnitude", "aggregation": "max"}, {"query_id": "rf_sum", "field": "RF", "component": "RF2", "aggregation": "sum", "region": "FIXED_END"} ]
Returns a structured Markdown KPI report.
| Name | Required | Description | Default |
|---|---|---|---|
| queries | Yes | ||
| timeout | No | ||
| odb_path | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full behavioral burden. It usefully discloses that queries support defaults (step, frame, aggregation, region) and that the output is a 'structured Markdown KPI report.' However, it does not mention side effects, error behavior, read-only guarantees, or performance implications. It adds meaningful context but omits a full behavioral picture.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-organized: a one-sentence purpose, followed by a bulleted breakdown of the query object, a concrete example, and the return type. Every section serves a purpose. It is somewhat long due to the necessary parameter detail, but it is front-loaded and scannable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complex, nested `queries` parameter and lack of annotations, the description is mostly complete but leaves a critical ambiguity: the schema defines `queries` as a string, while the description calls it a 'JSON array.' It never explicitly states that the parameter must be a JSON-encoded string. It also omits any mention of the `timeout` parameter. The output schema exists, so return values need not be detailed, but these gaps prevent a higher score.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema coverage, the description must compensate. It does so extensively for the `queries` parameter, defining each field, optional status, defaults, and providing a JSON example. However, it does not explain `timeout` semantics and only implies that `odb_path` is the file path. The bulk of complexity is covered, justifying a 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Extract KPIs from an ODB file using declarative queries.' This clearly identifies the tool's function. However, it does not explicitly distinguish itself from similar siblings like get_field_output_summary or get_xy_data, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides detailed query syntax and defaults, but gives no guidance on when to use this tool versus alternatives. Sibling tools like get_field_output_summary, get_history_output, and get_xy_data could overlap, yet no conditions or exclusions are mentioned. The usage is only implied by the KPI-oriented purpose, not explicitly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_edge_by_coordinateA
Find the edge index of an instance closest to the given coordinate.
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| tolerance | No | ||
| coordinate | Yes | ||
| model_name | No | Model-1 | |
| instance_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the full burden of behavioral disclosure. It states only the basic outcome and does not disclose how tolerance affects matching, what coordinate system is used, whether partial or no matches error out, or any other behavioral traits. This is a significant gap for an unannotated tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single tight sentence with no filler, front-loading the action and result. Every word contributes meaning, and it is appropriately sized for what it does state.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Although an output schema exists, this tool has five parameters, zero schema description coverage, and no annotations. The description does not explain coordinate semantics, tolerance behavior, timeout usage, or how the coordinate should be formatted beyond the schema shape. An agent would have to guess important calling details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate, but it only mentions 'coordinate' implicitly and adds nothing about timeout, tolerance, model_name, or instance_name. It does not even explain that tolerance controls the closeness criterion, leaving the agent to infer parameter meaning from names alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Find'), a specific resource ('edge index of an instance'), and the selection criterion ('closest to the given coordinate'). This clearly distinguishes it from the sibling find_face_by_coordinate, even without explicit mention.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context: use this tool when you need the edge index nearest to a coordinate. It does not explicitly exclude alternatives like find_face_by_coordinate, but the edge/face contrast is evident and the intended use is unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_face_by_coordinateC
Find the face index of an instance closest to the given coordinate.
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| tolerance | No | ||
| coordinate | Yes | ||
| model_name | No | Model-1 | |
| instance_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only says 'closest', but does not explain whether matching is exact or nearest-neighbor, what role `tolerance` plays, what coordinate frame is expected, whether the search covers the whole instance, or what happens if no face matches.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one short sentence with no wasted words and the verb is front-loaded. It is concise but not under-specified to the point of meaninglessness. Still, it could have added key behavioral/parameter context without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with five parameters, no annotations, and zero schema description coverage, this description is too sparse. It does not explain the geometric search semantics, the effect of `tolerance`, the purpose of `model_name`, or how this lookup fits into the larger modeling workflow. The presence of an output schema reduces the need to describe return values, but many functional gaps remain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It names `coordinate` and `instance_name` indirectly, but it fails to explain `tolerance`, `timeout`, or `model_name`. An agent cannot infer the meaning or expected format of these parameters from the description alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Find') and resource ('face index of an instance') with a clear criterion ('closest to the given coordinate'). It is not a tautology and it clearly indicates what is returned. However, it does not explicitly contrast with the sibling `find_edge_by_coordinate`, so sibling differentiation is only implicit via the word 'face'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance on when to use this tool versus alternatives such as `find_edge_by_coordinate` or other selection tools. It does not mention typical use cases, prerequisites, or situations where another lookup tool would be more appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_meshC
Generate mesh for the whole model.
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| model_name | No | Model-1 |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full burden of behavioral disclosure. It states the action but does not disclose whether existing meshes are replaced, whether the operation is time-consuming, or what preconditions must hold. It adds scope but little behavioral depth.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single tight sentence with no filler, but it is under-specified. It is concise in length yet lacks the substance needed for a complete tool definition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Even though an output schema exists, the description omits preconditions, related meshing workflow steps, and parameter behavior. For a mesh generation operation, this is too thin to be considered complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not explain the meaning of 'timeout' or 'model_name'. With no parameter semantics in the description, the agent has to guess at units, defaults behavior, and which model is targeted.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb ('Generate'), a resource ('mesh'), and a clear scope ('the whole model'). It effectively distinguishes this tool from per-part meshing operations like seed_part or set_mesh_control.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus related meshing tools, no mention of prerequisite steps like seeding or mesh controls, and no exclusions. The agent must infer when this is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_reportA
Generate a comprehensive simulation report in Markdown format.
Combines capsule snapshot, KPI lens results, physics contracts validation, solver diagnosis, and silent failure detection into a single structured report. Supports two modes:
Full mode: provide capsule_id (and optionally contracts_json). The report will include model info, job status, KPIs, solver diagnosis, and contract validation from the capsule.
Quick mode: provide contracts_json and kpis_json directly (uses check_physics_contracts internally).
Args: capsule_id: Load data from this capsule. If provided, the report includes model info, job status, KPIs, and diagnosis from the capsule. contracts_json: JSON array of contract dicts to validate against capsule KPIs. Only used when capsule_id is provided. report_title: Title for the report. output_path: If provided, save the report to this file path. Otherwise, return the report as text. include_silent_failures: If True, run silent-failure checks on the model and include the results in the report.
Returns: The generated report as Markdown text, or a confirmation message if output_path is provided.
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| capsule_id | No | ||
| output_path | No | ||
| report_title | No | Abaqus Simulation Report | |
| contracts_json | No | ||
| include_silent_failures | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden and discloses important behavior: Markdown output, full vs quick modes, internal use of check_physics_contracts, optional silent-failure detection, and save-to-file vs return-as-text behavior. It does not mention timeout behavior, but this is a minor gap for a report generation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-organized with mode descriptions, an Args list, and a Returns note. It is front-loaded and easy to scan, though it contains some redundancy between the mode explanation and the Args section, plus the misleading kpis_json reference.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 6 parameters, no schema descriptions, no annotations, and a large sibling list, this description provides substantial context: when to use each mode, what the report includes, and how output is returned. The main gap is the kpis_json/contracts_json inconsistency, which could prevent an agent from correctly invoking Quick mode.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It explains capsule_id, contracts_json, report_title, output_path, and include_silent_failures in plain language. However, it omits timeout entirely, introduces a phantom kpis_json parameter, and gives contracts_json contradictory usage guidance, reducing reliability.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies a specific verb ('Generate'), a specific resource ('simulation report in Markdown format'), and enumerates the exact data sources included. It also differentiates from sibling tools by framing itself as a combined report aggregator rather than a raw data extractor.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Two modes are described with conditions for each: Full mode uses capsule_id, Quick mode uses contracts_json and kpis_json directly. However, Quick mode references a kpis_json parameter that does not exist in the input schema, and contracts_json is later described as 'Only used when capsule_id is provided,' which contradicts its role in Quick mode.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_field_output_summaryC
Get summary of field outputs in an ODB.
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| odb_path | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are absent, so the description carries the full burden. It indicates a non-mutating summary operation, but it does not disclose prerequisites (e.g., an existing ODB), error behavior, or whether the ODB must be open, and it does not describe what a 'summary' includes. The output schema covers return shape, but not behavioral traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one short sentence with no filler, and the core function is front-loaded. It is concise, though it achieves this by omitting useful differentiating and usage context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the large sibling toolset, no annotations, and 0% parameter coverage, the description is thin. It does not explain what type of summary is produced, how it relates to field output requests, or when to prefer it over inspect_odb/extract_kpis. The output schema lessens the need to document return values, but usage context is still incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It only indirectly maps 'ODB' to odb_path and gives no explanation of timeout or how odb_path is used. This is slightly better than a pure name repetition, but still leaves both parameters under-explained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Get summary of field outputs in an ODB.' It clearly conveys this is a read-style summary operation, and 'field outputs' helps distinguish it from history-output tools such as get_history_output, though it does not explicitly name alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given for when to use this tool versus sibling tools like get_history_output, get_xy_data, inspect_odb, or extract_kpis. The description implies use when a field-output summary is wanted, but there are no explicit conditions, exclusions, or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_history_outputC
Get history output data from an ODB.
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| odb_path | Yes | ||
| variable | No | ||
| step_name | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavioral traits. It only states the action 'Get' and implies a read operation, but gives no detail about return format, potential errors, ODB requirements, or side effects. This is a minimal disclosure but not a transparent one.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single clear sentence with no filler words and the key information is front-loaded. While it is concise, it is also under-specified, but for what it contains, it is efficiently structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given a tool with four parameters, no annotations, and 0% schema description coverage, a single sentence is far from complete. The description does not explain what 'history output data' means, how the parameters interact, or when this tool should be used, leaving an agent without enough context to invoke it reliably.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for undocumented parameters. It does not explain odb_path, variable, step_name, or timeout at all. Neither the description nor the schema provides meaningful semantics for the parameters beyond their property titles.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and a clear resource ('history output data') with a source ('ODB'), so an agent can tell what the tool does. However, it does not explicitly differentiate this from sibling tools like get_xy_data or get_field_output_summary, so it falls short of a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance on when to use this tool versus alternatives such as get_xy_data, inspect_odb, or get_field_output_summary. There are no exclusions, prerequisites, or context signals to help an agent choose this tool over siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_model_infoC
Get parts, materials, steps, loads, BCs, interactions, jobs, and viewports.
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the full burden of behavioral disclosure. It only says 'Get' a list of entity types; it does not state whether the call is read-only, whether it can be expensive on large models, how the timeout parameter affects execution, or whether any state is refreshed or cached.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single clear sentence with no filler. The verb and the full list of covered components are front-loaded, making the core purpose immediately readable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While an output schema exists and may document the return shape, the description still lacks usage context and behavioral transparency. It is broad enough to be ambiguous against many sibling tools, and an agent has no guidance on when choosing this tool is appropriate or what side effects/performance implications to expect.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage and the description does not mention the optional 'timeout' parameter at all. The parameter name alone suggests a duration, but no units, semantics, or guidance are provided, and the description does not compensate for the missing schema documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a retrieval operation and explicitly enumerates the model components it covers: parts, materials, steps, loads, BCs, interactions, jobs, and viewports. However, it does not distinguish this broad getter from more specialized siblings like get_field_output_summary, get_odb_info, or list_jobs, so it stops short of full sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use this tool versus the many sibling tools that retrieve specific subsets, such as list_materials, list_elements, get_history_output, or get_odb_info. The context is implied at best: an agent would have to infer that get_model_info is the general-purpose option.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_node_coordinatesC
Get the coordinates of a specific node.
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| model_name | No | Model-1 | |
| node_label | Yes | ||
| instance_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. 'Get' implies a read-only lookup, but the description doesn't state whether the operation modifies state, how missing nodes are handled, or in what coordinate system results are returned. The output schema may cover return shape, but behavioral expectations are not disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no filler and the core action is front-loaded. However, it is so brief that it omits usage and parameter guidance, so conciseness is achieved at the expense of necessary information. It is not verbose, but it is under-specified.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple getter, the output schema may document return values, but the description is incomplete for an agent deciding when to call it. There is no mention of optional parameters, default model behavior, timeout semantics, or how this relates to other coordinate-oriented tools. The tool has moderate complexity with 4 parameters, and the description does not adequately cover it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description adds no parameter-level meaning beyond 'specific node.' It doesn't explain the timeout or model_name parameters, nor clarify the role of instance_name versus node_label. The required parameter names are somewhat self-explanatory, but the description does not compensate for the complete lack of schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear verb and resource: 'Get the coordinates of a specific node.' This is unambiguous about what the tool does. However, it doesn't differentiate from sibling tools such as list_nodes or find_face_by_coordinate, so it earns a 4 rather than a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like find_face_by_coordinate or find_edge_by_coordinate. It also doesn't explain prerequisites or scenarios where this tool is preferred. An agent must infer usage entirely from the tool name and schema.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_odb_infoC
Compatibility wrapper for inspect_odb returning formatted JSON.
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| odb_path | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it does add two useful behavioral facts: it is a compatibility wrapper and its output is formatted JSON. It remains silent on error behavior, timeout semantics, and differences from inspect_odb, so it is only minimally adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact sentence with no filler. It front-loads the wrapper relationship and output format, though it is somewhat under-specified for the reader unfamiliar with inspect_odb.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The output schema covers return values, but the description lacks the relationship guidance needed to choose between this tool and its sibling inspect_odb. It also omits any parameter context and does not explain the compatibility purpose, leaving key selection and invocation context incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not mention either parameter. 'odb_path' and 'timeout' are self-explanatory names, but no format, units, or semantics are added beyond the schema itself.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the tool as a compatibility wrapper around inspect_odb and states that it returns formatted JSON, so the domain is inferable. However, it never states the actual operation or what information is returned; 'wrapper' is an implementation role rather than a clear purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description references inspect_odb as the wrapped tool but gives no when-to-use or when-not-to-use guidance. An agent cannot determine whether to call get_odb_info or inspect_odb in a given situation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_viewport_imageC
Compatibility wrapper returning a data URI for the requested viewport.
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| image_format | No | PNG | |
| viewport_name | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It does disclose the return form ('data URI'), which is useful, but it does not state whether this is a read-only operation, what the timeout parameter controls, whether it requires an active viewport to exist, or how it behaves if the named viewport is unavailable. The 'compatibility wrapper' phrasing hints at a thin passthrough but gives no concrete behavioral detail.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One short sentence with no filler. The key output characteristic (data URI) is front-loaded. While it is terse to the point of under-specification, it earns its place by establishing the tool's essential purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Although an output schema exists, the description is too thin for a tool with three optional parameters and numerous viewport-related siblings. It doesn't explain how to select a viewport, what formats are supported, or whether this is a legacy alias to avoid. The 'compatibility wrapper' context raises more questions than it answers.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description mentions none of the three parameters. The parameter names (timeout, image_format, viewport_name) are self-explanatory at a basic level, but there's no guidance on accepted image_format values, how viewport_name is resolved, or what timeout units are used. The description fails to compensate for the schema's lack of documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clear verb 'returning' and resource 'viewport' make the basic function evident. The phrase 'data URI' specifies the output format. However, it doesn't distinguish from the sibling 'capture_viewport', so the 'compatibility wrapper' framing is the only differentiator and its meaning is left vague.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use or when-not-to-use guidance is provided. The term 'compatibility wrapper' suggests legacy usage, but there is no explicit recommendation against using it or a pointer to capture_viewport as an alternative. An agent cannot determine from the description whether to call this tool or one of the other viewport-related siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_xy_dataC
Extract XY data from an ODB.
Args: node_label: node label for history-based extraction element_label: element label for element-based extraction frame_index: -1 for last frame
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| odb_path | Yes | ||
| variable | No | S | |
| component | No | Mises | |
| step_name | No | ||
| node_label | No | ||
| frame_index | No | ||
| element_label | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the behavioral disclosure burden. It does add useful semantic context, such as frame_index=-1 meaning the last frame and label selection determining extraction mode. However, it does not mention side effects, prerequisites, connection requirements, or whether the operation is purely read-only.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded with the core purpose, followed by a clean Args list. It earns its place without repetition, though the coverage of parameters is incomplete.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 8-parameter tool with no annotations and no schema property descriptions, the description is materially incomplete. It omits the meaning of the required odb_path, the output variable/component semantics, and step_name behavior. The output schema reduces the need to describe return values, but not enough to make this description sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for all 8 parameters. It only documents node_label, element_label, and frame_index. The required odb_path parameter, plus variable, component, step_name, and timeout, are left unexplained, leaving a significant gap for correct invocation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource ('Extract XY data from an ODB') and mentions history-based vs element-based extraction. However, it does not differentiate itself from similar sibling tools like get_history_output or get_field_output_summary, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers no guidance about when to prefer get_xy_data over alternatives; it only explains which label parameter to use for a given extraction type. There is no mention of scenarios, exclusions, or sibling tools that might be more appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
inspect_odbB
Open an ODB read-only and return metadata about steps, frames, and outputs.
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| odb_path | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that the operation is read-only, which is valuable behavioral context. However, with no annotations provided, it does not explain potential failure modes, requirements for the path, or any effects beyond opening, leaving other behavioral traits undisclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single 13-word sentence that front-loads the core purpose ('Open an ODB read-only') and the expected output. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter inspection tool, the description covers the essential purpose and safety. However, the lack of usage guidance and timeout semantics, combined with many sibling tools, makes it incomplete for confident selection.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not explain either parameter. While odb_path is self-evident, timeout is mysterious (units, defaults, whether to pass null) and the description offers no clarification.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Open' with a clear resource (ODB) and specifies the return value: metadata about steps, frames, and outputs. This is unambiguous, though it does not explicitly distinguish itself from the sibling get_odb_info.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use or alternative guidance is provided. An agent is left to infer that this is for inspection, but with siblings like get_odb_info and get_field_output_summary, it lacks a clear routing signal.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_capsulesA
List all saved experiment capsules.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. 'List all saved experiment capsules' discloses that the operation is a read-only enumeration and scopes the result set to saved capsules, but it does not mention return ordering, output format, pagination, or potential side effects. The non-destructive nature is inherent in the verb 'list' and an output schema exists, so this is adequate but minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no wasted words. It states the verb and resource directly, making it optimally concise for a zero-parameter list tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the extremely low complexity—zero parameters, simple list operation, and an existing output schema—the description covers everything an agent needs to call the tool correctly. Sibling tools are distinguishable by their names and descriptions, so no additional context is required.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, and the input schema is fully covered (100%). With no parameters to document, the description appropriately adds no parameter details; the baseline for zero-parameter tools is 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'List' with the resource 'all saved experiment capsules', making the tool's function immediately clear. It is easily distinguished from sibling capsule-related tools such as create_capsule, load_capsule, delete_capsule, and compare_capsules.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies when to use the tool—when you need to enumerate all saved experiment capsules—but it does not explicitly state exclusions or alternatives. It does not mention that compare_capsules might be used for comparing capsules or load_capsule for loading a specific one, so guidance is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_elementsB
List elements in an instance with their type and connectivity.
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| model_name | No | Model-1 | |
| instance_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full transparency burden. The verb 'List' signals a read-only operation and the description states the output fields, but it does not disclose any prerequisites, connectivity representation, or whether an active instance/model connection is required.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, tightly worded sentence that front-loads the verb and object, then specifies the relevant output fields. There is no filler, redundancy, or unnecessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is low-complexity and has an output schema, so return values do not need to be described in detail. However, with no annotations and no parameter descriptions, the role of model_name and any prerequisites for the target instance remain unclear, leaving the definition only minimally complete for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate, but it only clarifies instance_name via 'in an instance'. The timeout and model_name parameters are unexplained, leaving the agent to rely on their names and defaults without knowing how they affect behavior.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List'), a clear resource ('elements in an instance'), and states the returned content ('type and connectivity'). This distinguishes it from sibling tools like list_nodes and get_model_info, even though no sibling is explicitly named.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to choose this tool over alternatives such as list_nodes, get_model_info, or inspect_odb. There are no prerequisites, exclusions, or context clues beyond the implied 'when you need elements with type/connectivity' scenario.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_jobsB
List all Abaqus jobs in the current CAE session.
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden. It clearly implies a read-only listing operation scoped to the current CAE session, which is helpful. However, it does not disclose behavior such as whether an active CAE session is required, how timeout affects the call, or whether the list is a live snapshot.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence with no filler. It front-loads the action and resource, and every word contributes meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple and an output schema exists, so full return-value documentation is not needed. Still, the description is incomplete because it omits the timeout parameter and gives no usage guidance relative to job-related siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description says nothing about the sole `timeout` parameter. The parameter is inferable only from its name and schema type, so the description adds no semantic value for invoking the tool correctly.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: 'List all Abaqus jobs in the current CAE session.' It clearly identifies what the tool does and its scope, and it is readily distinguished from job-related siblings like submit_job or monitor_job_status.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance about when to use this tool versus alternatives such as monitor_job_status or diagnose_job. It implies a listing use case but does not state exclusions or point to more appropriate tools for status or diagnosis.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_materialsB
List all materials in the specified model.
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| model_name | No | Model-1 |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full burden. The wording 'List all materials' implies a read-only operation and communicates scope, but it does not disclose expected behavior for missing models, empty results, timeouts, or any side effects. It is adequate but thin.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, tightly scoped sentence with no wasted words. It front-loads the action and target, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple listing tool with an output schema, the description does not need to explain return values. However, with no annotations and no usage guidance, it leaves the agent to infer behavior for optional parameters and model selection. It is minimally viable but not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It partially clarifies model_name by saying 'specified model', but it does not explain the timeout parameter, defaults, or how the optional parameters behave. The description adds only minimal value beyond the schema's property names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') with a clear resource ('all materials') and scope ('specified model'). It clearly distinguishes this tool from siblings like create_hyperelastic_material, list_elements, and list_jobs by naming both the action and target resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers no guidance on when to use this tool versus alternatives. It does not mention better-suited sibling tools for material creation, model inspection, or other listing operations, and it provides no exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_nodesC
List nodes in an instance.
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| model_name | No | Model-1 | |
| instance_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits on its own. It conveys that the operation is a read-only listing, but it does not explain return structure, filtering, pagination, or how timeout and model_name affect the operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single clear sentence with no wasted words. However, it is so terse that it sacrifices useful guidance, making it minimally acceptable rather than well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Although an output schema exists, the description is insufficient for reliable tool selection among many node-related siblings. It omits what distinguishes list_nodes from list_elements and leaves the meaning of half the parameters undocumented.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description should compensate, but it only weakly hints at instance_name through the phrase 'in an instance.' The timeout and model_name parameters are completely unexplained, leaving the agent to guess their meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb (list), a resource (nodes), and a scope (instance), so an agent can tell it apart from tools like list_elements or get_node_coordinates. It is not a tautology, but it does not elaborate on whether it returns all nodes or filtered results.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use this tool versus siblings such as list_elements or get_node_coordinates. The agent must infer the appropriate context from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
load_capsuleB
Load a saved experiment capsule by ID.
| Name | Required | Description | Default |
|---|---|---|---|
| capsule_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full responsibility for behavioral disclosure. It only says 'Load a saved experiment capsule by ID' and does not explain what loading does to the current workspace, whether it replaces the active model, whether it requires an active connection, or what state changes occur.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler or redundancy. It is concise and easily parsed, though the brevity contributes to missing behavioral and usage guidance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter tool with an output schema, the core call is inferable: provide capsule_id. However, the lack of annotations and the absence of any statement about side effects or workspace impact leave meaningful gaps for an agent choosing among many capsule-related tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for the bare schema. 'By ID' tells the agent that capsule_id is the saved capsule identifier, but it does not clarify expected ID format, where to find valid IDs, or how this relates to list_capsules. The added meaning is minimal.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Load'), a specific resource ('saved experiment capsule'), and a criterion ('by ID'). This clearly distinguishes it from siblings like create_capsule, list_capsules, delete_capsule, and compare_capsules.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The context implies use when an agent has a capsule ID and needs to work with an already saved experiment, but it does not explicitly state when to prefer this over list_capsules, create_capsule, or other alternatives. No exclusions or alternative routing are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
monitor_job_statusB
Inspect job objects and tail .sta/.msg diagnostics. Set diagnose=True for full solver-log analysis.
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| diagnose | No | ||
| job_name | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden of behavioral disclosure. It does add useful information about tailing .sta/.msg files and the diagnose flag triggering full solver-log analysis, but it does not state whether the operation is read-only, how timeout affects behavior, or other potential side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two succinct sentences with no filler. The core action and the key option are both front-loaded, and every clause contributes meaningful guidance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has three parameters with zero schema descriptions and no annotation support, yet the description only addresses diagnose. It omits the semantics of job_name and timeout, and does not position the tool relative to overlapping siblings such as diagnose_job, leaving the definition incomplete for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With schema description coverage at 0%, the description must compensate for missing parameter explanations. It explains the diagnose parameter ('Set diagnose=True for full solver-log analysis') but leaves job_name and timeout undefined, only indirectly implying their roles through 'job objects' and diagnostics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a concrete action—'Inspect job objects and tail .sta/.msg diagnostics'—which clearly identifies the tool's purpose. It is specific about the resource and operation, though it does not explicitly differentiate from the sibling diagnose_job.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the diagnose mode ('Set diagnose=True for full solver-log analysis') but gives no explicit guidance on when to prefer monitor_job_status over alternatives like list_jobs or diagnose_job. Usage context is present but not fully articulated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pingB
Check whether the Abaqus-side socket bridge is reachable.
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full responsibility for behavioral disclosure. It only states a reachability check and does not disclose return behavior, timeout semantics, failure modes, or whether any Abaqus-side state is touched.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence that front-loads the core purpose without any filler. It is appropriately sized for a simple ping-like tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no required parameters and an output schema, the core action is clear. However, the lack of annotations, the ambiguous relationship with check_abaqus_connection, and the undocumented timeout behavior leave meaningful gaps for an agent deciding whether and how to invoke this tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has one optional timeout parameter and 0% schema description coverage, yet the description does not mention timeout at all. The agent must infer the meaning of timeout solely from the parameter title and default value, with no help from the description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Check whether') and a clear resource ('Abaqus-side socket bridge'). It clearly communicates the tool's purpose, but it does not explicitly differentiate itself from the similarly named sibling tool check_abaqus_connection.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used to verify socket-bridge reachability, but it provides no explicit guidance on when to prefer this tool over check_abaqus_connection or any other connection-related tool. There are no exclusions or alternative recommendations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rotate_instanceB
Rotate an instance around an axis by a given angle (degrees).
| Name | Required | Description | Default |
|---|---|---|---|
| angle | Yes | ||
| timeout | No | ||
| axis_point | Yes | ||
| model_name | No | Model-1 | |
| instance_name | Yes | ||
| axis_direction | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description must carry the full behavioral disclosure burden. It states that a rotation occurs but does not disclose whether the instance is modified in place, what coordinate system the axis uses, or what side effects this rotation may have on dependent geometry.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact sentence with no filler. It front-loads the operation and the key unit of measurement.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
As a transformation tool with six parameters and no annotations, it needs to explain prerequisites (e.g., the instance must exist), coordinate conventions for the axis, and persistence of the rotation. The current description covers none of these; the output schema may help with returns but not with invocation semantics.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description must compensate, but it only clarifies that the angle is in degrees. It does not explain the meaning of axis_point, axis_direction, timeout, or model_name, which leaves critical invocation details unspecified.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Rotate an instance' around an axis by an angle in degrees. This clearly distinguishes it from sibling tools like translate_instance and other model-construction operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use this tool versus alternatives such as translate_instance or other transform operations. Usage must be inferred entirely from the tool name and the brief description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_pythonB
Execute Python code in the active Abaqus/CAE kernel.
Single-line expressions are evaluated and returned. Multi-line scripts are
executed; set a variable named result to return structured data.
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes | ||
| timeout | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the transparency burden. It does disclose key runtime behavior: single-line expressions are evaluated and returned, multi-line scripts are executed, and `result` is the structured-return convention. It does not mention arbitrary side effects in the kernel, timeout behavior, or error handling, so transparency is only partial.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, no filler, and the primary action is front-loaded. The additional return convention earns its place because it is essential for using multi-line scripts correctly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The output schema presumably covers return shape, and the result convention is stated. Still, for a powerful arbitrary-code execution tool there are gaps: no timeout semantics, no caution about kernel side effects, and no relationship to execute_script. Adequate but not complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must explain the parameters. It partially explains `code` by describing single-line versus multi-line behavior and the `result` variable, but it says nothing about the `timeout` parameter, including its units or what happens on timeout.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a clear action and object: 'Execute Python code in the active Abaqus/CAE kernel.' This distinguishes it from domain-specific creation and query tools, but it does not explicitly differentiate it from the sibling execute_script, so an agent may still be unsure which code-execution tool to choose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides useful how-to guidance by distinguishing single-line expression evaluation from multi-line script execution and how to return structured data via the `result` variable. However, it never states when to prefer this tool over execute_script or what conditions make it inappropriate, leaving alternative selection implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
seed_partC
Seed a part with a global element size.
| Name | Required | Description | Default |
|---|---|---|---|
| size | Yes | ||
| timeout | No | ||
| part_name | Yes | ||
| model_name | No | Model-1 | |
| min_size_factor | No | ||
| deviation_factor | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description bears full responsibility for explaining behavioral impact, but it only states the action without mentioning side effects, whether it modifies the model, or how seeding affects subsequent meshing steps. This is too thin for a mutating operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler, and the core action is immediately identifiable. It is concise, though arguably too sparse for the number of parameters involved.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given six parameters, no annotations, and no parameter descriptions, the tool description leaves too much unsaid: required context, what output to expect, and how the optional factors affect behavior. Only the most basic purpose is conveyed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate, but it only hints at 'size' and 'part_name' through 'part' and 'global element size'. The optional parameters timeout, model_name, min_size_factor, and deviation_factor are entirely unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb (seed) and resource (part) with a distinguishing qualifier (global element size), making the basic intent clear. However, it does not differentiate seed_part from sibling mesh-related tools like generate_mesh or set_mesh_control.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives, nor is there any mention of required prerequisites like an existing part or expected workflow ordering before generate_mesh. An agent gets no contextual direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
set_element_typeC
Set the element type for a part.
Args: elem_type: e.g., "C3D8R", "C3D8", "C3D10", "CPS4R", "CPE4R", "S4R", "B31"
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| elem_type | No | C3D8R | |
| part_name | Yes | ||
| model_name | No | Model-1 |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the behavioral burden. It only says 'Set the element type for a part' without disclosing side effects, whether an existing mesh is affected, whether the part must already exist, or what validation errors may occur. This is a significant transparency gap for a mutating tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loaded with the core purpose, followed by a helpful example list for elem_type. It is not verbose, but the 'Args:' block only documents one of four parameters, which is slightly misleading structurally.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool that mutates part state with no annotations, output schema details are not shown, and schema coverage is 0%, the description is too thin. It lacks usage conditions, behavioral side effects, and guidance on how this relates to the meshing workflow. An agent would need to infer most operational context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It provides useful example values for elem_type ('C3D8R', 'C3D8', etc.), which adds real meaning. However, it ignores part_name, model_name, and timeout, though those are largely inferable from their names and schema defaults.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb and resource: 'Set the element type for a part.' This distinguishes it from mesh- or seed-related siblings like set_mesh_control and seed_part. It doesn't explicitly contrast with those siblings, but the action is clear enough.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as seed_part, set_mesh_control, or generate_mesh. The example element types imply it is for assigning an Abaqus element type, but no context, prerequisites, or exclusions are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
set_mesh_controlC
Set mesh control algorithm for a part.
Args: algorithm: "MEDIAL_AXIS", "ADVANCING_FRONT", or "SWEEP"
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| algorithm | No | MEDIAL_AXIS | |
| part_name | Yes | ||
| model_name | No | Model-1 |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only says 'set,' implying mutation, but does not explain whether this overwrites existing mesh controls, whether it requires a specific part/model state, or what happens if the algorithm is invalid. The description provides no behavioral context beyond the operation itself.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short, front-loaded with the core purpose, and contains no filler. The Args block is immediately useful for the algorithm parameter. It earns a high conciseness score, though it is not a fully specified definition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's mutating nature, 4 parameters, and a large sibling set of mesh-related tools, the description is incomplete. It lacks usage context, prerequisites, and behavioral consequences. The presence of an output schema does not compensate for the missing guidance about when and how this tool should be invoked in a meshing workflow.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It usefully enumerates the allowed algorithm values ('MEDIAL_AXIS', 'ADVANCING_FRONT', or 'SWEEP'), which the schema does not provide as an enum. However, it says nothing about part_name, model_name, or timeout, leaving three of the four parameters semantically undocumented beyond their raw titles.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear action and resource: 'Set mesh control algorithm for a part.' It identifies the target object and the specific setting being modified, which is enough to distinguish it from related mesh tools like generate_mesh or set_element_type, though it does not explicitly name any sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance about when to use this tool versus alternatives, no prerequisites (e.g., the part must already exist), and no relationship to later meshing steps. The only usage signal is the phrase 'for a part,' which is too implicit to help an agent decide between this and other mesh-related tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
set_viewport_annotationsA
Set viewport annotations (title, legend, etc.).
Args: title: Title text for the viewport subtitle: Subtitle text legend: Show/hide legend
| Name | Required | Description | Default |
|---|---|---|---|
| title | No | ||
| legend | No | ||
| timeout | No | ||
| subtitle | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It communicates that annotations are being modified, but does not state whether this replaces existing annotations, whether it applies to the current viewport, or what side effects may occur.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded, with a clear purpose statement followed by a concise parameter breakdown. There is no filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple and an output schema exists, so return-value details are not necessary. However, the description leaves gaps: it does not clarify effect scope, what 'etc.' includes, or how the timeout parameter is used.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It clearly defines title, subtitle, and legend parameters, adding meaning beyond the bare schema. Timeout is omitted, though its name and null default make it reasonably self-explanatory.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Set viewport annotations'. It also lists concrete annotation types (title, subtitle, legend), making the tool's job unmistakable even among many viewport-related siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use this tool versus sibling tools like set_viewport_display or set_viewport_view. The context is implied by the name, but there is no explicit when-to-use or alternative routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
set_viewport_displayB
Set the viewport display type and variable.
Args: plot_type: "contour", "symbol", "material", "undeformed" variable: Field output variable (e.g., "S", "U", "RF") component: Component (e.g., "Mises", "U1", "S11") deformation_scale: Deformation scale factor (None = auto)
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| variable | No | S | |
| component | No | Mises | |
| plot_type | No | contour | |
| deformation_scale | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full disclosure burden. It states the mutation and adds one behavioral detail (deformation_scale None = auto), but it does not say whether this applies to the active viewport, what happens if variable/component are invalid, or whether a loaded ODB is required. For a display-changing tool this is a meaningful transparency gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact: one purpose sentence followed by a tight Arg list with no filler. It is front-loaded and scannable. The only minor omission is that timeout is left unexplained, but the overall size is appropriate.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For the core set operation, the valid parameter values are present, and an output schema exists so return values do not need explanation. However, the description omits usage conditions, ordering relative to related viewport tools, and failure/fallout behavior. Because all parameters are optional and schema coverage is 0%, more context would make it fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the Arg list compensates well for four parameters: it enumerates valid plot_type values and gives concrete examples for variable and component. It also clarifies that deformation_scale None means auto. The schema-only timeout parameter is not covered, but the main parameters gain real semantic value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The first sentence states a concrete action and object: 'Set the viewport display type and variable.' It also lists valid plot_type values and examples for variable and component, so an agent understands the tool's scope. It does not explicitly contrast with sibling tools like set_viewport_view or set_viewport_annotations, so it stops short of full differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool or when to prefer alternatives such as set_viewport_view, set_viewport_annotations, or capture_viewport. There are no prerequisites, exclusions, or ordering hints, so an agent must infer applicability from the tool name and sibling names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
set_viewport_viewC
Set the camera view in the viewport.
Args: view_type: "iso", "front", "back", "top", "bottom", "left", "right"
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| view_type | No | iso |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description alone must disclose behavior. It states that the tool sets the camera view, but does not mention side effects, whether it modifies the model, what it returns, or any prerequisites like having a viewport open. This is a minimal behavioral statement with little transparency beyond the tool's obvious purpose.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded, with the core action stated first and the parameter values listed clearly. It earns its length with the useful view_type enumeration, though it omits contextual information that could be added without much bloat.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple setter tool, the essential calling information (view_type values, default) is present, and there are no required parameters. However, timeout semantics are undocumented, and there is no guidance on how this viewport tool relates to its viewport-focused siblings, leaving the description minimally viable rather than complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It does document the view_type values ('iso', 'front', 'back', 'top', 'bottom', 'left', 'right'), which adds real meaning beyond the plain schema. However, the timeout parameter is not explained at all, leaving a gap in parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action and resource: it sets the camera view in the viewport, and lists the exact view types. This is clear and distinct from the sibling viewport tools in function, though it does not explicitly call out how it differs from set_viewport_display or related tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use this tool versus alternatives such as set_viewport_display, capture_viewport, or get_viewport_image. The intended use is only implied by the action phrase; there are no exclusions, preconditions, or alternative-selection hints.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
set_workdirC
Change the current Abaqus working directory.
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | ||
| timeout | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure, but it only restates the action. It does not explain whether the change is session-scoped, whether the path must exist, whether it affects subsequent tool calls, or what happens on invalid paths. This is a significant gap for a tool that modifies session state.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficiently worded sentence with no fluff or redundancy. It is front-loaded with the action verb and resource. It earns its place, though it is arguably too sparse to be an excellent definition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 2 parameters and no annotations, the description is under-specified. It does not explain when this command is needed, what the returned output means (despite an output schema existing), or how the working directory interacts with the rest of the Abaqus session. An agent would have to guess at critical context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for the parameters but does not. The 'path' parameter is self-explanatory by name, but the description does not clarify path format (absolute vs relative), validity rules, or the meaning of 'timeout'. The timeout parameter is completely undocumented in both schema and description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Change') and a clear resource ('current Abaqus working directory'). It is immediately differentiable from all sibling tools, none of which perform this function, and there is no ambiguity about what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use this tool versus alternatives, nor any mention of prerequisites or side effects. The use case is only implied by the verb 'Change', but there is no explicit context about needing to set a working directory before running scripts or accessing files. There are also no exclusions or conditions stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
submit_jobA
Submit an existing Abaqus job and wait for completion.
| Name | Required | Description | Default |
|---|---|---|---|
| timeout | No | ||
| job_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral disclosure burden. 'Wait for completion' is a useful disclosure that the call blocks, but it does not clarify timeout behavior, failure semantics, or what happens when the job is not found or times out.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no redundant filler. Every word adds meaning: 'existing' constrains the input, 'submit' states the action, and 'wait for completion' discloses blocking behavior.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The core use case is clear and the output schema likely covers return structure, but timeout semantics are undefined for a parameter that is nullable and has a default of null. This is a meaningful gap because callers need to know whether null means indefinite wait and what units are used.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate, but it never explicitly mentions job_name or timeout. The connection to job_name is inferable from 'submit job,' and timeout is weakly implied by 'wait for completion,' but units, null semantics, and effect of timeout are left entirely to the schema's minimal titles.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action—'Submit an existing Abaqus job'—on a clear resource, and adds the expected blocking behavior 'wait for completion.' It is distinct from sibling tools like list_jobs, monitor_job_status, and diagnose_job, which cover other phases of the job lifecycle.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'existing Abaqus job' implies this is for already-created jobs rather than job creation, and 'wait for completion' suggests synchronous use. However, it does not explicitly describe when to choose this over monitoring via monitor_job_status or polling manually.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
translate_instanceC
Translate an instance in the assembly.
| Name | Required | Description | Default |
|---|---|---|---|
| vector | Yes | ||
| timeout | No | ||
| model_name | No | Model-1 | |
| instance_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description must disclose behavioral traits. It only says the instance is translated, without explaining whether the translation is relative or absolute, whether it modifies the instance permanently, what coordinate system is used, or what side effects may occur. This is a significant transparency gap for a mutating operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise, front-loaded sentence with no wasted words. However, its brevity comes at the cost of essential detail, so it is efficient but not fully informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with four parameters, zero schema description coverage, and no annotations, the description is incomplete. An agent lacks crucial information such as vector semantics, units, coordinate frames, and whether this is a relative or absolute move. The presence of an output schema does not compensate for missing behavioral and parameter context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description provides no parameter explanations. The meaning of 'vector', 'timeout', 'model_name', and 'instance_name' is left entirely to inference from the schema structure, which is insufficient.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('translate') and resource ('instance in the assembly'), making the core action clear. It doesn't explicitly differentiate from the sibling rotate_instance, but the verb is unambiguous enough that an agent can understand the basic operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool instead of alternatives such as rotate_instance or create_instance. No conditions, exclusions, or context are provided to help an agent choose this tool correctly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
110 tool updates
v1.0.0- First observed
assign_section - First observed
capture_viewport - First observed
check_abaqus_connection - First observed
check_model_integrity - First observed
check_physics_contracts - First observed
check_silent_failures - First observed
compare_capsules - First observed
converge_advice - First observed
create_acceleration_bc - First observed
create_beam_section - First observed
create_body_force - First observed
create_body_heat_flux - First observed
create_buckle_step - First observed
create_capsule - First observed
create_concentrated_force - First observed
create_connector_displacement_bc - First observed
create_connector_force - First observed
create_contact_property - First observed
create_coupled_temp_disp_step - First observed
create_coupling_constraint - First observed
create_damage_initiation - First observed
create_displacement_bc - First observed
create_dynamic_implicit_step - First observed
create_elastic_material - First observed
create_embedded_region - First observed
create_encastre_bc - First observed
create_equation_constraint - First observed
create_explicit_step - First observed
create_field_output_request - First observed
create_general_contact - First observed
create_general_contact_exp - First observed
create_gravity_load - First observed
create_heat_flux_load - First observed
create_heat_transfer_step - First observed
create_history_output_request - First observed
create_hyperelastic_material - First observed
create_instance - First observed
create_line_load - First observed
create_modal_step - First observed
create_moment_load - First observed
create_mpc_constraint - First observed
create_multiple_viewports - First observed
create_part_beam - First observed
create_part_cube - First observed
create_part_cylinder - First observed
create_part_plate - First observed
create_part_sphere - First observed
create_periodic_amplitude - First observed
create_pinned_bc - First observed
create_plastic_material - First observed
create_pressure_load - First observed
create_reference_point - First observed
create_rigid_body_constraint - First observed
create_set_by_edges - First observed
create_set_by_face - First observed
create_set_by_vertices - First observed
create_shell_edge_load - First observed
create_shell_section - First observed
create_smooth_step_amplitude - First observed
create_solid_section - First observed
create_specific_heat - First observed
create_static_riks_step - First observed
create_static_step - First observed
create_surface - First observed
create_surface_by_edges - First observed
create_surface_to_surface_contact - First observed
create_surface_to_surface_contact_exp - First observed
create_symmetry_bc - First observed
create_tabular_amplitude - First observed
create_temperature_bc - First observed
create_thermal_conductivity - First observed
create_thermal_expansion - First observed
create_tie - First observed
create_velocity_bc - First observed
create_viscoelastic_material - First observed
delete_capsule - First observed
diagnose_job - First observed
execute_script - First observed
extract_kpis - First observed
find_edge_by_coordinate - First observed
find_face_by_coordinate - First observed
generate_mesh - First observed
generate_report - First observed
get_field_output_summary - First observed
get_history_output - First observed
get_model_info - First observed
get_node_coordinates - First observed
get_odb_info - First observed
get_viewport_image - First observed
get_xy_data - First observed
inspect_odb - First observed
list_capsules - First observed
list_elements - First observed
list_jobs - First observed
list_materials - First observed
list_nodes - First observed
load_capsule - First observed
monitor_job_status - First observed
ping - First observed
rotate_instance - First observed
run_python - First observed
seed_part - First observed
set_element_type - First observed
set_mesh_control - First observed
set_viewport_annotations - First observed
set_viewport_display - First observed
set_viewport_view - First observed
set_workdir - First observed
submit_job - First observed
translate_instance
TDQS
Several tools are explicit compatibility wrappers for the same operation (run_python/execute_script, inspect_odb/get_odb_info, capture_viewport/get_viewport_image), and others overlap heavily (check_silent_failures/check_model_integrity, get_history_output/get_xy_data, ping/check_abaqus_connection). An agent would struggle to choose the correct variant without reading far into each description.
The overwhelming majority of tools follow a clear snake_case verb_noun pattern such as create_*, get_*, list_*, and set_*. Minor deviations like ping, execute_script, inspect_odb, converge_advice, and the _exp suffixes keep this from being a perfect 5, but the overall convention is predictable.
110 tools far exceeds the 50+ extreme threshold and is massively larger than a well-scoped 3-15 tool server. Many entries are compatibility wrappers or near-duplicates, making the surface bloated and harder for an agent to navigate.
The set covers a broad build-and-postprocess workflow, including materials, assembly, mesh, steps, loads, BCs, contacts, ODB inspection, and reporting. However, there are notable lifecycle gaps such as no create_job, no update/delete for most model objects, and no geometry import/editing; run_python can work around these, but the named tool surface is incomplete.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Use AI models for chat, image, and video generation from Claude Code and other MCP hosts.
MCP server unifying ERPs, CRMs, APIs and knowledge base for Claude, ChatGPT and Gemini.
Governed data discovery, exact queries, decisions, simulations, and runtime utilities over MCP.
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables to interact with Abaqus FEA software through an MCP bridge, supporting connection checks, script execution, model queries, job submission, and simulation automation.3-
- AlicenseBqualityCmaintenanceEnables AI agents to automate COMSOL Multiphysics simulations, including model management, geometry building, physics configuration, meshing, solving, and results visualization through the MCP protocol.78MIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to automate COMSOL Multiphysics simulations, including model management, geometry building, physics configuration, meshing, solving, and results visualization via the MCP protocol.MIT
- AlicenseNot gradedqualityBmaintenanceA secure local STDIO MCP server that lets OpenAI Codex automate Abaqus FEM workflows: create model scripts, submit jobs, monitor solver logs, and extract ODB results.MIT
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/TutuBarry/abaqus-mcp-pro'
If you have feedback or need assistance with the MCP directory API, please join our Discord server