geomwright
Click on "Deploy 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., "@geomwrightList the open KOMPAS documents and show the model tree of the first one."
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.
Geomwright
Local-first CAD automation for KOMPAS-3D, exposed as an MCP server and a small browser-based Studio. Geomwright lets an AI agent or a local operator inspect a model, plan a change, execute a bounded operation, and verify the result without turning KOMPAS into an uncontrolled scripting target.
Geomwright is an independent project. It is not affiliated with or endorsed by ASCON or the KOMPAS-3D product team.
What you can do
inspect KOMPAS documents, model trees, sketches, features, dimensions, and constraints;
create and edit selected sketch and feature entities with explicit targets;
preview and build supported parametric parts and spring families;
preview and build managed V-belt, Poly-V, flat-belt, timing-belt, and selected roller/bush-chain transmission geometry;
create specifications, relink assembly paths, run quality checks, and export safe working copies;
use Geomwright Studio to preview transmission geometry and edit recognized managed blocks.
The public MCP surface is discovered at runtime. Call get_mcp_tool_catalog
from an MCP client instead of relying on an unversioned list copied into a
prompt.
Related MCP server: kompas-3d-ai-bridge
Current status
Version 0.1.0 is an alpha release. The core session, document, composition,
specification, relinking, and batch operations are the most stable parts. The
parametric, spring, sketch-write, and transmission families are usable only
within the scope stated by their contracts and live verification evidence.
Area | Status | Notes |
Session and document lifecycle | Stable | Open, inspect, save, export, and close explicit documents |
Composition, specifications, relinking, quality | Stable | Preview/apply workflows with bounded changes |
Sketch and feature runtime | Experimental | Low-level tools; inspect before writing |
Parametric parts and springs | Experimental | Family-specific parameters and verification |
Geomwright Studio | Experimental | Local UI; no arbitrary-body write path |
Native KOMPAS module inspection | Research-only | Disabled by default; explicit opt-in for local investigation |
An experimental status is a contract boundary, not a promise that every catalog entry or CAD combination is supported. Missing standard data and failed verification stop the operation before an unsafe write where possible.
Requirements
Windows;
KOMPAS-3D v23 with its runtime components installed;
Python 3.11 or newer for the host;
an MCP-capable client for the agent interface.
The host Python and the KOMPAS bridge have separate compatibility constraints.
Normal package code follows pyproject.toml; the bridge must also run in the
Python runtime bundled with KOMPAS-3D v23.
Install
From PowerShell in a clone:
py -m venv .venv
.\.venv\Scripts\python.exe -m pip install -e ".[ui]"The UI dependency group is optional. For MCP-only use:
.\.venv\Scripts\python.exe -m pip install -e .Research-only native-module tools are intentionally absent from the default MCP session. Enable them only in a disposable local investigation:
$env:GEOMWRIGHT_ENABLE_RESEARCH_TOOLS = "1"
.\.venv\Scripts\python.exe -m geomwrightThey are not covered by the stable product contract and can inspect installed KOMPAS modules or launch explicitly requested commands.
Run Studio
The easiest Windows path is:
.\start-geomwright-studio.cmdOr run it directly:
.\.venv\Scripts\python.exe -m geomwright.studio --port 8765Studio opens http://127.0.0.1:8765 unless --no-browser is supplied. Start
KOMPAS first and keep it visible: Studio attaches to the already running
KOMPAS instance and never creates a hidden substitute session. It previews
geometry before a CAD job and only edits recognized managed blocks.
Run the MCP server
.\.venv\Scripts\python.exe -m geomwrightFor an MCP client, use the Python executable inside that clone. The tracked
opencode.example.json shows the portable shape:
{
"mcp": {
"geomwright": {
"type": "local",
"command": [
"C:\\path\\to\\geomwright\\.venv\\Scripts\\python.exe",
"-m",
"geomwright"
],
"enabled": true,
"timeout": 600000
}
}
}Do not commit a machine-specific copy of this file. The legacy commands
kompas-mcp and kompas-mechanics-ui, and the kompas_mcp import namespace,
remain as compatibility aliases. New integrations should use geomwright and
geomwright.kompas.
First safe workflow
Call
get_mcp_tool_catalogand choose a category whose status matches the task.Call
get_session_stateandlist_documents; always name the target document explicitly.Use inspection, preview, and preflight tools before a write.
Follow Plan → Execute → Verify → Correct. A successful COM
Update()is not, by itself, proof that geometry or direction is correct.Save and reopen a model when the workflow contract requires persistence evidence. Keep generated files under ignored local output directories.
For sketch work, begin with inspect_sketch_full. For a parametric family,
begin with its preview operation and then read the family contract in docs/.
Repository map
src/geomwright/ public application namespace and Studio
src/kompas_mcp/ KOMPAS implementation and compatibility APIs
bridge/kompas_bridge.py KOMPAS-side COM bridge
rules/ tracked runtime rule data
docs/ current user and maintainer contracts
sample/ small runnable examples and request payloads
tests/ deterministic host-side and contract tests
experiments/spikes/ ignored local quarantine for unfinished workThe root bridge and packaged bridge copy must remain byte-identical. Generated CAD files, live readback dumps, local configuration, and disposable probes are not part of the public repository.
Documentation
Documentation index — choose a guide by task and audience;
Write operations and safety — mutation rules;
Geomwright Studio — UI workflow and HTTP contract;
Parametric workflows — supported part families;
Spring workflows — spring-family navigation;
Transmission contracts — pulley and sprocket boundaries;
Architecture — layer ownership for maintainers;
CAD patterns — verified KOMPAS-specific invariants.
License
Geomwright is released under the MIT License.
See CONTRIBUTING.md for development boundaries and SECURITY.md for safe local operation and vulnerability reports.
Available Tools
118 toolsanalyze_naming_issuesC
Analyze naming issues in the selected or active document.
| Name | Required | Description | Default |
|---|---|---|---|
| rules_path | No | ||
| document_id | No |
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 'Analyze naming issues' without stating whether the operation is read-only, whether it modifies the document, or what side effects (if any) it has. The description adds minimal detail beyond the tool name, leaving an agent unable to anticipate safety or mutation 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 sentence with no wasted words, which is concise. However, it is so brief that it omits essential details about parameters and behavior. While the purpose is front-loaded, the overall content is insufficient for a tool with two optional parameters and no output schema, so it does not earn 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?
Given the tool has two optional parameters with no schema descriptions, no output schema, and no annotations, the description is severely incomplete. It does not explain what 'naming issues' include, what the analysis returns, whether it requires a selected or active document, or how the parameters affect the analysis. An agent has no reliable way to know what to pass or what to expect, making this definition inadequate.
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 input schema has zero description coverage for its two optional parameters ('rules_path' and 'document_id'), and the description provides no explanation of either. It only mentions 'selected or active document,' which loosely hints at document selection but does not clarify the parameters' roles. With no additional semantics, an agent cannot infer how to use the parameters 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 clearly states a specific verb ('Analyze') and resource ('naming issues'), and scopes it to the 'selected or active document.' It distinguishes itself from sibling tools like analyze_spec_issues by the object of analysis (naming vs. spec), though it does not explicitly reference any sibling or contrast 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 description provides no guidance on when to use this tool versus alternatives, nor any exclusions or preconditions. It neither mentions similar tools (e.g., analyze_spec_issues) nor clarifies context such as whether it requires an open document. The usage is only implied by the name and vague verb.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
analyze_spec_issuesC
Analyze basic specification issues in the selected or active document.
| Name | Required | Description | Default |
|---|---|---|---|
| rules_path | No | ||
| document_id | No |
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 does not state whether the analysis is read-only, whether it modifies the document, what kinds of issues are detected, or what the tool returns. 'Analyze' implies a non-mutating operation, but that is not made explicit.
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 the action and resource front-loaded. It contains no redundant explanations, though the word 'basic' is somewhat vague and could be replaced with more concrete scoping 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?
Given no annotations, no output schema, and low schema coverage, the description is under-specified. An agent cannot determine expected output, parameter behavior, or how this tool relates to the many sibling specification and analysis 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%, and the description does not explain what 'rules_path' does or how it affects the analysis. 'document_id' is only weakly implied by 'selected or active document', so both parameters remain largely 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 clear action ('analyze') and a resource ('specification issues in the selected or active document'). It is not a tautology, but the qualifier 'basic' is vague and it does not explicitly differentiate itself from sibling tools like analyze_naming_issues or other specification-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?
There is no guidance on when to use this tool versus alternatives such as analyze_naming_issues or preview_specification_generation. The only context given is that it operates on the selected or active document, with no conditions, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
apply_changesetC
Apply a prepared changeset to writable fields only.
| Name | Required | Description | Default |
|---|---|---|---|
| save | No | ||
| changes | Yes | ||
| document_id | No | ||
| close_after_save | No |
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 'writable fields only,' which implies a safety filter, but it does not disclose what happens to non-writable fields (silently ignored? error?), whether the operation is reversible, whether it mutates the document immediately, or what the save/close_after_save parameters do. The description adds minimal behavioral context beyond the name.
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. It is front-loaded with the verb and resource. However, it is so brief that it sacrifices useful detail; still, for conciseness alone it earns a 4.
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 has 4 parameters, no output schema, no annotations, and 0% schema description coverage, the description is incomplete. It does not explain the changeset format, the save behavior, the document context, or the relationship to preview_changeset. An agent would struggle to invoke this tool correctly without additional documentation.
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 four parameters. It does not explain what 'changes' should look like, what 'save' controls, what 'document_id' refers to, or what 'close_after_save' does. The parameter names are somewhat self-explanatory, but the description adds no meaning beyond the schema's field names and 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 ('apply') and resource ('prepared changeset'), and adds a scope qualifier ('to writable fields only'). It is clear enough about what the tool does, but it does not distinguish it from sibling tools like apply_relink_paths, apply_specification_changes, or apply_v_belt_grooves, which also apply prepared changes. The phrase 'prepared changeset' is somewhat vague without context on how a changeset is prepared.
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. The description does not mention that a changeset should first be prepared via preview_changeset or preview_property_changes, nor does it explain the relationship to apply_specification_changes or apply_relink_paths. An agent would have to infer usage from the name and schema alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
apply_file_relink_pathsC
Apply relinks to an assembly file through KOMPAS itself and save the result to the target path.
| Name | Required | Description | Default |
|---|---|---|---|
| changes | Yes | ||
| output_path | No | ||
| assembly_path | 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 disclosing side effects, but it only says it applies relinks and saves a result. It does not state whether the original assembly file is modified in place, whether a KOMPAS session must be open, what happens when output_path is null, or whether the operation is reversible.
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 earns its place, though 'through KOMPAS itself' is slightly vague. It could be expanded without becoming wasteful.
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 output schema and undocumented parameters, this is incomplete. The agent cannot determine how to construct the changes array, what output_path null means, or how this compares to the closely related relink tools in the sibling list.
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 maps assembly file to assembly_path and target path to output_path. The critical 'changes' parameter (array of arbitrary objects) is not described at all, so the agent receives no information about what each relink change should look like.
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 (apply relinks), target resource (assembly file), execution mechanism (through KOMPAS itself), and output behavior (save result to target path). This is enough to distinguish it from generic tools, though it does not explain what a relink is or how it differs from apply_relink_paths.
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 call this tool versus the many sibling tools (preview_file_relink_paths, build_file_relink_plan, apply_relink_paths, relink_to_export, etc.). The phrase 'through KOMPAS itself' hints at mechanism, but there is no explicit when-to-use or alternative-routing information.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
apply_poly_v_groovesC
Preflight or cut exact rounded Poly-V grooves into one global-X rotational body.
| Name | Required | Description | Default |
|---|---|---|---|
| request | 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. 'Preflight or cut' implies a two-phase write operation, but the description never explains that preflight is non-destructive while cutting writes to the model, that confirm_write gates the actual write, or that the operation targets exactly one body (body_count const 1). The write/destructive implications and the return behavior are left unstated.
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 tight, front-loaded with the verb, and contains no filler. However, it leans toward under-specification rather than genuine conciseness, omitting essential information about the two-phase behavior and inputs. The structure is clean but at the expense 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?
For a complex tool with a nested profile/target schema, no annotations, and no output schema, the description is incomplete. It does not explain the execute/confirm_write write flow, what data the rotational blank contract requires, or what preflight vs. cut returns. An agent cannot reliably determine inputs or interpret results 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% and the description adds nothing about parameters. With a complex nested schema (profile with designation enum PH/PJ/PK/PL/PM, effective_diameter, groove_count; target rotational-blank contract; execute/confirm_write booleans; axial_center), the description should compensate but explains zero parameter semantics. An agent has no guidance on what profile or target values to supply.
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 ('Preflight or cut exact rounded Poly-V grooves into one global-X rotational body'), specifying the target body type and axis. It distinguishes from sibling apply_v_belt_grooves (V-belt vs Poly-V) and, via the 'Preflight or cut' wording, hints at its difference from preview_poly_v_groove. However, the preview-vs-apply distinction is implied rather than 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?
The description gives no explicit when-to-use guidance or alternative routing. 'Preflight or cut' hints at a preview/execute duality but never tells an agent when to set execute=true versus execute=false, when confirm_write is required, or that list_poly_v_profiles/resolve_poly_v_profile should be used first to select a designation. No prerequisites (e.g., document open, rotational blank present) are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
apply_relink_pathsC
Apply component source-path relinks to the selected or active assembly.
| Name | Required | Description | Default |
|---|---|---|---|
| save | No | ||
| changes | Yes | ||
| document_id | No | ||
| close_after_save | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the burden of behavioral disclosure, but it only says 'Apply'. It does not state whether source paths are permanently overwritten, whether save and close_after_save control persistence, or whether the operation is reversible or fails without an active assembly.
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 with no filler and front-loads the action. It is concise, though the terseness comes at the expense of behavioral and parameter detail captured 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?
This is a mutating, multi-parameter tool with no annotations, no output schema, and 0% parameter description coverage. The one-sentence description omits return values, the required changes structure, document targeting semantics, and save/close behavior, making it inadequate for safe 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 names none of the four parameters. The critical 'changes' array remains an opaque list of arbitrary objects, so the agent receives no guidance on constructing valid input beyond the schema's empty shape.
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 ('Apply') and names both the object ('component source-path relinks') and the target ('selected or active assembly'). This clearly distinguishes it from sibling tools like apply_file_relink_paths, which target file paths.
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-selection guidance is given. The phrase 'selected or active assembly' hints at a prerequisite, but the description never says to use this after preview_relink_paths or build_relink_plan, nor when to prefer it over the many relink siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
apply_specification_autofillC
Apply filling or syncing of specification rows from the model tree.
| Name | Required | Description | Default |
|---|---|---|---|
| save | No | ||
| fields | No | ||
| fill_only | No | ||
| document_id | No | ||
| layout_name | No | ||
| max_objects | No | ||
| include_root | No | ||
| close_after_save | No | ||
| description_index | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are absent, so the description bears the full burden of disclosing side effects. It says 'Apply' which implies mutation, but it does not state whether the operation modifies the document, whether it saves, whether it is reversible, or what changes are made to the specification rows. The description adds almost nothing beyond what the name itself suggests.
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 free of fluff, but it is under-specified rather than concisely complete. For a tool with 9 parameters and no other documentation, one vague sentence is not appropriately sized; the brevity sacrifices essential 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?
This is a complex operation with 9 parameters, no annotations, no output schema, and rich sibling context. The description provides almost none of the contextual framing an agent needs: no mention of preview flow, no scope, no save behavior, no relationship to related specification tools. It is far from sufficient 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 mentions none of the 9 parameters. An agent has no help understanding what 'fields', 'fill_only', 'max_objects', 'include_root', 'close_after_save', or 'description_index' control. The description completely fails to compensate for the schema's total 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 identifies a clear verb ('Apply') and resource ('filling or syncing of specification rows from the model tree'), so an agent can reasonably infer this executes an autofill operation. However, 'filling or syncing' is ambiguous about what exactly happens, and it does not clearly distinguish this tool from closely related siblings like apply_specification_changes or refresh_specification_from_model.
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 preview_specification_autofill, apply_specification_changes, or refresh_specification_from_model. The relationship to preview_specification_autofill is implied by the name but never stated in the description, so an agent cannot confidently decide when this is the right tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
apply_specification_changesC
Apply edits to existing specification rows by object_id and standard fields.
| Name | Required | Description | Default |
|---|---|---|---|
| save | No | ||
| updates | Yes | ||
| document_id | No | ||
| layout_name | No | ||
| max_objects | No | ||
| close_after_save | No | ||
| description_index | No |
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 'Apply edits,' which implies mutation, but it does not disclose whether changes are persisted only when save=true, what side effects occur, whether edits are reversible, or how close_after_save and max_objects affect execution.
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 the core purpose is front-loaded. It is concise and easy to scan, though it achieves this by omitting important 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 7-parameter mutation tool with no annotations and no output schema, this description is incomplete. It omits critical context around save semantics, the shape of the updates array, document/layout scoping, row limits, and what happens after save.
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 that updates contain 'object_id and standard fields.' It does not explain save, document_id, layout_name, max_objects, close_after_save, or description_index, leaving most of the 7 parameters semantically 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 states a specific action ('Apply edits'), a specific resource ('existing specification rows'), and the key identifier ('by object_id and standard fields'). It is clear enough to distinguish from preview_specification_changes and create_specification, though it does not explicitly name sibling 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 on when to use this tool versus alternatives like preview_specification_changes or apply_changeset. There is no mention of prerequisites, expected workflow ordering, or when the save parameter should be set.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
apply_v_belt_groovesA
Preflight or cut previewed V-grooves into one global-X rotational body.
| Name | Required | Description | Default |
|---|---|---|---|
| request | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden; 'Preflight or cut' usefully exposes two modes (non-committing preflight vs committing cut) and the single-body/global-X restriction. However, it does not disclose that execution writes to the document, the role of confirm_write/execute, or what features (rotational cut, fillets) are produced.
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 adds scoping information (preflight vs cut, previewed, one body, global-X).
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 complex nested request with no output schema and no annotations, the one-line description is insufficient. It omits how to trigger the preflight vs cut mode, the required document target/profile inputs, and the relationship to preview_v_belt_groove; an agent would need to reverse-engineer the large schema to use 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%, so the description must compensate, but it mentions no concrete parameters. The only added semantic is 'one global-X rotational body', which clarifies the target contract (axis/body_count) in plain language; execute, confirm_write, profile, and document_id behavior are left entirely to the large nested 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 names a specific action ('Preflight or cut') and resource ('previewed V-grooves') plus a clear target scope ('one global-X rotational body'), which matches the schema's axis='global_x' and body_count=1 constraints. This distinguishes it from the preview_v_belt_groove sibling (preview only) and apply_poly_v_grooves (poly-V, not V-belt).
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 'previewed V-grooves' implies the tool should be used after a preview operation, and 'one global-X rotational body' scopes valid targets, but no alternative tools or explicit when-not-to-use conditions are named. The intended workflow is inferable rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
batch_analyze_model_qualityC
Open models read-only, run naming/spec quality checks, close each document and continue after errors.
| Name | Required | Description | Default |
|---|---|---|---|
| root | No | ||
| limit | No | ||
| paths | No | ||
| visible | No | ||
| analyses | No | ||
| recursive | No | ||
| extensions | No | ||
| report_dir | No | ||
| rules_path | No | ||
| report_name | No | ||
| include_locks | No | ||
| report_formats | No | ||
| continue_on_error | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses read-only opening (a safety signal) and continuation after errors, which are useful. However, it omits critical behaviors such as whether documents are saved, whether reports are generated (despite report_dir and report_name parameters), and what the return value or output format is. The mention of read-only adds value but is insufficient.
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 that front-loads the core actions (open read-only, run checks, close, continue on errors). It contains no filler and 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?
For a tool with 13 parameters, no output schema, and no annotations, the description is grossly incomplete. It does not explain what the tool returns, how to configure the analysis scope, what report formats are supported, or how errors are surfaced. An agent cannot invoke this tool correctly based on the 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%, and the description does not explain any of the 13 parameters. It mentions 'naming/spec quality checks' which likely maps to the 'analyses' parameter, but provides no details on root, limit, paths, recursive, extensions, report_dir, rules_path, report_formats, or continue_on_error. The description fails to compensate for the lack of schema documentation, leaving agents without essential 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 clearly states the action (open models read-only), the resource (models), and the purpose (naming/spec quality checks). It also mentions the batch nature and error continuation. However, it does not explicitly contrast with sibling tools like analyze_naming_issues or analyze_spec_issues, which could be confused for single-document versions.
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 batch tool versus the single-document analyzers or other related tools. It implies a batch scenario but does not state selection criteria, exclusions, or alternatives. An agent cannot determine when this is the preferred tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
batch_smoke_check_sessionC
Run lifecycle smoke-checks over a folder or explicit file list, continuing after per-file errors.
| Name | Required | Description | Default |
|---|---|---|---|
| root | No | ||
| limit | No | ||
| paths | No | ||
| dry_run | No | ||
| visible | No | ||
| recursive | No | ||
| extensions | No | ||
| output_dir | No | ||
| report_dir | No | ||
| report_name | No | ||
| include_locks | No | ||
| report_formats | No | ||
| continue_on_error | No |
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 disclosureasi. It only reveals that per-file errors are tolerated ('continuing after per-file errors'), but it does not explain side effects, whether reports or output files are generated, whether the operation is read-only, or how failures are reported.
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 delivers the core action, scope, and resilience behavior efficiently without repeating the tool name or schema fields.
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 13-parameter tool with no annotationsane and no output schema, this description is severely incomplete. It does not explain return values, report generation, scope behavior, filtering options, or any expected outcomes, leaving an agent under-equipped to 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 there are 13 parameters, yet the description only hints at two: 'folder or explicit file list' corresponding to root/paths and 'continuing after per-file errors' corresponding to continue_on_error. Critical parameters such as recursive, extensions, dry_run, report_dir, report_name, and report_formats receive no semantic 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 clearly states the action ('Run lifecycle smoke-checks'), the target scope ('over a folder or explicit file list'), and a distinguishing feature ('continuing after per-file errors'). This differentiates it from sibling tools like smoke_check_session, which appears to be the single-session counterpart.
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 a use case (batch smoke-checking over folders or file lists) but does not explicitly state when to use this tool versus alternatives such as smoke_check_session or scan_model_files. There are no exclusion criteria, prerequisites, or explicit alternative routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_file_relink_map_planC
Build a grouped actionable relink plan from an explicit mapping file.
| Name | Required | Description | Default |
|---|---|---|---|
| mapping_path | Yes | ||
| assembly_path | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must convey behavioral traits, but it only says 'build a grouped actionable relink plan' without disclosing whether it is read-only, what side effects it might have, or what the output looks like. It does not contradict annotations since none 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 concise sentence with no wasted words, but it is so sparse that it sacrifices usefulness. It is appropriately sized for clarity but lacks the substance needed to be actionable.
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 (two required paths, no output schema, no annotations), the description is grossly incomplete. It does not explain what an 'explicit mapping file' is, what the relink plan contains, or how the assembly path factors in.
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 two required parameters (assembly_path, mapping_path). An agent has no idea what these paths should point to or their expected formats.
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 (build a relink plan) and its input (explicit mapping file), making the core purpose clear. However, it does not explicitly differentiate from sibling tools like build_relink_map_plan or build_file_relink_plan, relying on subtle wording like 'grouped actionable' to imply uniqueness.
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 the many similar relink planning tools (e.g., build_relink_plan, preview_relink_map_paths). The description does not mention conditions, alternatives, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_file_relink_planC
Build a grouped actionable relink plan for an assembly file.
| Name | Required | Description | Default |
|---|---|---|---|
| relink_all | No | ||
| search_root | Yes | ||
| assembly_path | 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. 'Build...plan' implies a non-mutating planning operation, but the description does not explicitly state that no files are modified, what the plan contains, or how downstream tools consume it.
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 concise and free of filler, and the core action is front-loaded. However, it is under-specified for a three-parameter tool, so the brevity borders on incompleteness rather than ideal 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?
With no annotations and no output schema, the description needs to explain return shape, parameters, and side effects, but it only provides a terse summary. An agent has insufficient context to know what a 'grouped actionable relink plan' looks like or how to use the two required arguments.
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 information about assembly_path, search_root, or relink_all. The optional boolean relink_all is completely unexplained, leaving the agent unable to determine its effect on the generated plan.
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 object: 'Build a grouped actionable relink plan for an assembly file.' This is specific enough to convey high-level intent. However, it does not explicitly distinguish this from sibling tools like build_relink_plan or build_file_relink_map_plan.
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 build_relink_plan, build_file_relink_map_plan, or preview_relink_paths. It does not state prerequisites, exclusions, or the role of the plan in a larger relink workflow.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_relink_map_planC
Build a grouped actionable relink plan for the selected or active document from a mapping file.
| Name | Required | Description | Default |
|---|---|---|---|
| document_id | No | ||
| mapping_path | No |
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 says the tool 'builds' a plan, implying a non-destructive analysis, but it does not disclose whether the plan is persisted, whether it modifies the document, whether it requires file access, or what the output format is. The word 'actionable' hints at later application but the behavior remains underspecified.
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. It front-loads the main action and includes the key inputs. It could be slightly more informative without becoming verbose, but it is appropriately concise.
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, no output schema, and 0% parameter coverage, the description is too thin. An agent cannot tell whether this tool is safe to call, what the plan looks like, or how it differs from the many relink siblings. The presence of build_relink_plan, build_file_relink_map_plan, and preview_relink_map_paths makes the missing differentiation more costly.
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 that a mapping file is used, which maps to mapping_path, and that the document is selected or active, which maps to document_id. However, it does not clarify the format of mapping_path, whether document_id is required when no document is active, or what happens when both are absent.
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 ('Build') and resource ('grouped actionable relink plan') and mentions the input source ('mapping file') and target ('selected or active document'). It is clear enough to distinguish from generic relink tools, though it does not explicitly name a sibling alternative.
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 when a mapping file is available and a relink plan is needed, but it does not state when to prefer this over siblings like build_relink_plan, build_file_relink_map_plan, or preview_relink_map_paths. No exclusions or alternative conditions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_relink_planC
Build a grouped actionable relink plan for the selected or active document.
| Name | Required | Description | Default |
|---|---|---|---|
| relink_all | No | ||
| document_id | No | ||
| search_root | No |
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 disclosure burden. It only says the tool 'builds' a plan and gives no information about side effects, whether changes are applied, required document state, permissions, or output 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 sentence and starts with the action verb, so it is brief and front-loaded. However, it is so terse that it substitutes vague phrases like 'grouped actionable' for structure that would help an agent understand the tool's 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?
With three undocumented parameters, no annotations, and no output schema, the description should explain return values, how the plan is grouped, and how the document/selection is determined. It provides almost none of this, leaving a substantial gap for an agent trying to 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 mentions none of the three parameters: relink_all, document_id, and search_root. Since the schema itself provides no descriptions, the description completely fails to clarify what these parameters mean or how they affect the plan.
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 concrete verb and object ('Build ... relink plan') and identifies a target document, but 'grouped actionable' is undefined jargon. It does not distinguish this from siblings like build_relink_map_plan, build_file_relink_plan, or build_file_relink_map_plan.
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 rather than the other relink-plan or preview-relink siblings. It does not explain what scenario requires building a plan, when relink_all is appropriate, or what 'selected or active document' means in practice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
capture_document_snapshotC
Capture a bounded readback snapshot for an active/opened document, optionally writing the full manifest JSON.
| Name | Required | Description | Default |
|---|---|---|---|
| visible | No | ||
| read_only | No | ||
| model_path | No | ||
| document_id | No | ||
| output_path | No | ||
| include_manifest | No | ||
| close_after_probe | No | ||
| require_active_document | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of disclosing behavior. It indicates a read-like 'readback' operation and an optional manifest write, but it does not mention important side effects or defaults such as close_after_probe=true, require_active_document=true, or whether the document state is affected.
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 primary action and scope are stated first. However, the jargon 'bounded readback' and the compressed list of behaviors could be structured more helpfully.
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, no output schema, and no per-parameter descriptions, the one-line description is insufficiently complete. It lacks information about return values, side effects, default behaviors, and how this tool relates to the many readback/probe/verification 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?
The schema has 0% description coverage and all 8 parameters are undocumented, so the description must compensate. It only loosely maps to document selection ('active/opened document') and manifest output ('writing the full manifest JSON'), leaving parameters like visible, read_only, model_path, and close_after_probe 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 clearly identifies the action ('Capture') and the resource ('bounded readback snapshot') for an active/opened document, and mentions the optional manifest JSON writing. However, it does not explicitly distinguish this from closely related sibling tools such as probe_document_readback or verify_document_readback_stability.
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 context by referring to an 'active/opened document' and optional manifest output, but it never states when to prefer this tool over alternatives or when not to use it. There is no explicit routing to any sibling tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_file_accessC
Check whether a file can be opened and whether it appears locked by another process.
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes |
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 discloses the two checks (openable, locked) but does not say what the tool returns, whether the 'can be opened' check actually attempts to open the file (and whether that has side effects), or how 'locked by another process' is determined. For a probe tool whose entire value is its verdict, the outcome semantics are 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?
The description is a single 18-word sentence that leads with the verb 'Check' and states the two checks without filler. Every word earns its place, and there is no redundant restatement of the tool name or schema 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?
With no output schema, no annotations, and a 0%-coverage parameter schema, the description is the only source of context, and it does not explain how an agent interprets the result (boolean? structured status?) or what distinguishes the two checks (e.g., does a locked file also count as 'cannot be opened'?). An agent cannot reliably act on this tool's outcome with the information given.
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 'path' parameter. It adds only the implicit notion that the path identifies 'a file,' and says nothing about accepted path formats (absolute, relative, workspace-resolved), whether the file must exist, or constraints like local vs. network paths. Even with a single parameter, the agent is left guessing about path conventions.
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 ('check') and resource ('file') with two concrete aspects: openability and lock status. This distinguishes it from siblings like open_document, scan_model_files, and get_file_composition, none of which perform an access probe. However, the phrase 'appears locked by another process' is slightly hedged and leaves the precise meaning of the check ambiguous.
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. It does not state typical preconditions (e.g., use before open_document, or to diagnose a failed open), nor does it name any alternative tools or exclusion cases. With roughly 130 siblings, an agent must infer the intended usage context entirely 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.
classify_runtime_errorA
Classify a KOMPAS/COM runtime error into a stable code, category, and recovery hint.
| Name | Required | Description | Default |
|---|---|---|---|
| stage | No | ||
| message | Yes | ||
| exception_type | No |
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 explains what the tool produces, but does not mention whether it is side-effect-free, whether it can fail, or what happens with incomplete or unusual inputs. It is adequate for a simple classifier, but not detailed.
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 efficient sentence that gets to the point and is appropriately sized for a simple classifier. It could add more detail, but it is not verbose and places the core action first.
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 three parameters and no output schema, the description gives a high-level account of the result but omits details about how the inputs are used and what categories or recovery hints look like. It is minimally viable but has gaps around optional inputs and expected output variety.
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 roles of 'message', 'stage', or 'exception_type'. The parameter names are somewhat self-explanatory, but the optional parameters' influence on classification output is left entirely to inference.
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 'Classify' with a clear resource ('KOMPAS/COM runtime error' and a clear result ('stable code, category, and recovery hint'). This distinguishes it from CAD/geometry sibling tools and states the tool's unique transformation.
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 the tool should be used: when a KOMPAS/COM runtime error needs to be classified into a stable code and recovery hint. However, it does not explicitly discuss when not to use it or compare it with related tools such as normalize_operation_result.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cleanup_to_exportC
Apply the current cleanup rules, export a working copy, and write a report next to it.
| Name | Required | Description | Default |
|---|---|---|---|
| suffix | No | clean | |
| rules_path | No | ||
| document_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. 'Apply the current cleanup rules' implies a mutation (it likely modifies the document), but the description doesn't disclose whether this is destructive, whether it requires a certain document state, how the report is generated, or what side effects occur. For a potentially destructive operation, 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 sentence with no unnecessary words, front-loading the core action. It is appropriately concise for the information it provides, though that information is limited.
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 output schema and no annotations, the description is insufficient for a tool that performs a multi-step process (cleanup, export, report writing). It does not state what the report contains, what kind of working copy is created, or what the expected outcome is. Given the tool's moderate complexity (3 parameters, likely side effects), the description is 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 provides no explanation of the parameters. The schema only lists names and defaults, giving no meaning to 'suffix', 'rules_path', or 'document_id'. The description fails to explain what these parameters control, such as how the suffix affects the output filename or how rules_path selects cleanup rules, leaving the agent unable to set them 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 states a specific verb ('Apply', 'export', 'write') and resource ('cleanup rules', 'working copy', 'report'), making the purpose clear at a high level. However, it does not distinguish itself from the many sibling tools that also involve cleanup, export, or relinking, such as 'relink_to_export' or 'save_export_copy', so the agent may not know which to choose without further investigation.
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. It does not mention contexts where cleanup is needed, how it relates to other export or relink tools, or any exclusions. The agent is left to infer usage from the tool name and generic description, which is insufficient given the large and overlapping sibling set.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
clear_sketch_entity_constraintsC
Delete all constraints attached to one existing sketch entity.
| Name | Required | Description | Default |
|---|---|---|---|
| entity | No | ||
| sketch_ref | No | ||
| document_id | No |
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 disclose the destructive scope ('all constraints') and a precondition ('existing sketch entity'). It does not mention reversibility, error behavior, or whether the entity itself remains untouched, leaving important consequences 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 filler and communicates the core operation immediately. It is appropriately concise, though it provides no additional structure or elaboration beyond that one 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 destructive tool with no annotations, no output schema, and three undocumented parameters, the description is too thin to support reliable invocation. It is sufficient for high-level selection but not enough to construct a correct call 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% and the description never explains entity, sketch_ref, or document_id, so it adds no meaning beyond the parameter titles. An agent cannot determine how to identify the target entity from this 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 clear action ('Delete all constraints') and target scope ('attached to one existing sketch entity'), making it a specific destructive constraint-removal operation. It does not explicitly name or contrast sibling tools such as list_sketch_constraints or inspect_sketch_constraint, 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?
There is no guidance about when to use this tool versus alternatives like list_sketch_constraints, inspect_sketch_constraint, parameterize_sketch, or repair_sketch. No prerequisites, exclusions, or selection criteria are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
close_documentC
Close the selected or active document.
| Name | Required | Description | Default |
|---|---|---|---|
| save | No | ||
| close_mode | No | ||
| document_id | No |
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. It does not mention whether the close operation is destructive, whether unsaved changes are handled, what close_mode does, or any side effects. The only nuance is 'selected or active', which is insufficient.
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 (single sentence), which is structurally fine, but it is under-specified to the point of being minimally informative. It front-loads the core action but omits essential details, so it earns a mid-score for brevity without depth.
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 3 parameters, no output schema, and no annotations, the description is far from complete. It does not explain parameter semantics, behavioral outcomes, or error conditions. The agent cannot reliably invoke this tool correctly based on the provided information.
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 save, close_mode, or document_id parameters. The agent has no semantic understanding of these fields from the description, relying entirely on the schema names which are ambiguous.
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 (close) and the resource (document), specifying 'selected or active' which distinguishes from other document operations. It is not a tautology and gives a specific scope, though it does not explicitly contrast with sibling tools like open_document.
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. It does not mention prerequisites, contexts, or when not to use it, leaving the agent to infer usage from the generic phrase.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_compression_springC
Create a KOMPAS compression spring part from the supported compression_spring scenario.
| Name | Required | Description | Default |
|---|---|---|---|
| params | Yes | ||
| visible | No | ||
| output_path | No | ||
| close_after_save | No | ||
| save_partial_on_error | No | ||
| return_partial_result_on_error | No |
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. For a mutating creation tool, it says nothing about side effects on the document, whether the part gets saved, required session state, or error behavior. The presence of save_partial_on_error and return_partial_result_on_error parameters hints at error semantics, but the description never explains them. No contradiction with annotations since none 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 single sentence is short and front-loaded with the core action. But this is under-specification rather than genuine conciseness - the sentence earns its place but is followed by nothing. It's efficient in length but the brevity comes at the cost of 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?
The tool has 6 parameters with 0% schema coverage, a nested free-form object, and no output schema, yet the description provides no information about the params structure, return value, or operational behavior. For a creation tool that must receive a detailed spring scenario, this is substantially incomplete - an agent cannot reliably construct a valid call from this definition 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 by explaining parameter meaning. It mentions the 'compression_spring scenario' as the source but never clarifies what fields the free-form params object should contain (dimensions, material, etc.) or what the five other parameters (visible, output_path, close_after_save, etc.) mean. The description adds almost nothing beyond the parameter names themselves.
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), a resource (KOMPAS compression spring part), and a source ('supported compression_spring scenario'). This is clear enough to know the tool's basic function. However, it doesn't differentiate from close siblings like create_spring_from_size or create_part_from_scenario, so an agent cannot tell which creation path to choose without opening other definitions.
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 use this tool versus the many related creation/preview siblings (preview_compression_spring, create_spring_from_size, create_part_from_scenario). No prerequisites, workflow context, or exclusion conditions are mentioned. The agent is left to infer the appropriate scenario 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_part_from_scenarioC
Create a KOMPAS part from a supported parametric scenario such as stepped_shaft.
| Name | Required | Description | Default |
|---|---|---|---|
| params | Yes | ||
| visible | No | ||
| scenario | Yes | ||
| output_path | No | ||
| close_after_save | No | ||
| save_partial_on_error | No | ||
| return_partial_result_on_error | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description has very low behavioral transparency. It doesn't disclose whether the operation is destructive (e.g., overrides existing parts), what happens on failure (despite parameters like 'save_partial_on_error' and 'return_partial_result_on_error' hinting at partial results), or any side effects like file creation or visibility. With no annotations, the description carries the full burden, but it omits these critical behaviors.
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 (one sentence), which is concise, but it fails to earn its place by missing critical information. It front-loads the core purpose but lacks any detail on parameters or behavior, so the conciseness is more about under-specification than efficient information packing.
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 complex (7 parameters, nested objects, no output schema, no annotations), yet the description provides almost no context. It doesn't explain the return value (the created part object?), error handling (save_partial_on_error), or how to specify parameters. This is grossly inadequate for an agent to call 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?
With 0% schema description coverage, the description must explain parameters, but it mentions only 'scenario' and provides an example. It doesn't explain 'params' (the core object), 'output_path', 'visible', 'close_after_save', 'save_partial_on_error', or 'return_partial_result_on_error'. The agent is left guessing what each parameter means, especially 'params' which is a dynamic object.
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 ('KOMPAS part') with an example scenario ('stepped_shaft'), which is clear enough. However, it doesn't explicitly distinguish this tool from siblings like 'preview_part_scenario' or 'create_compression_spring'—the agent might confuse which creation tool to use for scenarios vs. springs. The name itself implies the purpose, but the description barely goes beyond a restatement, missing explicit differentiation from other creation 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?
The description says 'from a supported parametric scenario' but doesn't explain when to use this tool over alternatives like 'preview_part_scenario' (for previewing) or other creation tools. It doesn't mention required input formats, how to list supported scenarios (maybe via a catalog tool), or any conditions that would make this tool inappropriate. This leaves the agent without clear guidance on tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_point3dC
Create a 3D point in the active part and verify the before/after snapshot delta.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | PT1 | |
| origin | No | ||
| max_items | No | ||
| min_added | No | ||
| document_id | No | ||
| require_no_changed | No | ||
| require_no_removed | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Since no annotations are provided, the description carries the behavioral burden. It adds useful context: the tool creates a 3D point and verifies the before/after snapshot delta. However, it does not disclose side effects, persistence behavior, validation semantics, or what the verification result looks like.
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 is concise and readable, though it omits enough operational detail that 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?
For a 7-parameter tool with no output schema, no annotations, and 0% schema description coverage, this one-line description is far from sufficient. An agent cannot determine argument semantics, expected results, failure modes, or preconditions.
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 contains 7 parameters with 0% description coverage, and the description explains none of them. There is no indication of what name, origin, max_items, min_added, document_id, require_no_changed, or require_no_removed mean or how they should be set.
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 3D point in the active part.' It clearly identifies the action and the target context, distinguishing it from sketch-point creation tools even though no sibling is 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 when-to-use or when-not-to-use guidance is provided, and no alternatives are mentioned. The description implies usage from 'active part' but does not state prerequisites or how this compares to create_sketch_point or other creation tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_sketch_arcC
Create one 2D sketch arc in a new or existing sketch and verify the snapshot delta.
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | ||
| name | No | SKETCH_ARC_1 | |
| plane | No | XOY | |
| start | No | ||
| center | No | ||
| radius | No | ||
| direction | No | ||
| max_items | No | ||
| min_added | No | ||
| line_style | No | ||
| sketch_ref | No | ||
| document_id | No | ||
| create_new_sketch | No | ||
| require_no_changed | No | ||
| require_no_removed | No |
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 states the tool creates an arc and verifies a snapshot delta, but does not explain side effects, prerequisites (e.g., open document), or failure modes. The 'verify the snapshot delta' phrase is ambiguous and could mislead an agent about the tool's exact 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 sentence that front-loads the main action and is free of filler. However, it may be too terse given the complexity, as it omits crucial details while remaining concise.
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 15 parameters, no annotations, and no output schema, the description is drastically incomplete. It does not explain the geometry inputs, the verification mechanism, or the expected outcome, making it inadequate 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 does not mention any of the 15 parameters, including critical ones like start, center, end, or radius. An agent cannot infer parameter meaning, defaults, or relationships from the description. This is a major gap for a complex tool.
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 resource ('2D sketch arc'), and scope ('new or existing sketch'), distinguishing it from sibling creation tools like create_sketch_line_segment or create_sketch_circle. The added 'verify the snapshot delta' is somewhat vague but does not obscure the core 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 provides no explicit guidance on when to choose this tool over alternatives, such as line, circle, or polyline creation. It only mentions the context of a new or existing sketch, which is a condition, not a selection rule. This leaves the agent to infer the appropriate usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_sketch_circleB
Create a sketch with one 2D circle and verify the before/after snapshot delta.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | SKETCH_CIRCLE_1 | |
| plane | No | XOY | |
| center | No | ||
| radius | No | ||
| max_items | No | ||
| min_added | No | ||
| line_style | No | ||
| sketch_ref | No | ||
| document_id | No | ||
| create_new_sketch | No | ||
| require_no_changed | No | ||
| require_no_removed | No |
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. It discloses that the tool verifies a before/after snapshot delta, which is a meaningful behavioral trait beyond simple creation. However, it does not explain side effects, failure modes, or what the verification entails.
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 with the primary action. No wasted words, though the verification phrase is somewhat jargon-heavy but still concise.
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 12 optional parameters, no annotations, and no output schema, the description is far too thin. It does not clarify how the verification parameters interact, what the return value is, or what 'verify' means in practice. This is inadequate 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 does not explain any of the 12 parameters. It adds no meaning beyond the parameter names; e.g., max_items, min_added, require_no_changed, require_no_removed 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?
States a specific action (create) on a specific resource (sketch with one 2D circle) and adds a verification behavior. The circle specification clearly distinguishes it from sibling sketch creation tools like create_sketch_line_segment or create_sketch_rectangle.
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 explicit guidance on when to use this tool versus other create_sketch_* tools. The description implies usage when a circle is needed, but does not name alternatives or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_sketch_ellipseC
Create one 2D sketch ellipse in a new or existing sketch and verify the snapshot delta.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | SKETCH_ELLIPSE_1 | |
| angle | No | ||
| plane | No | XOY | |
| center | No | ||
| radius_x | No | ||
| radius_y | No | ||
| max_items | No | ||
| min_added | No | ||
| line_style | No | ||
| sketch_ref | No | ||
| document_id | No | ||
| create_new_sketch | No | ||
| require_no_changed | No | ||
| require_no_removed | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the behavioral disclosure burden. It adds a meaningful behavioral trait ('verify the snapshot delta') and mentions new-or-existing sketch support. However, it does not explain what happens on verification failure, side effects beyond creation, or any preconditions.
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 filler and front-loaded core action. It is appropriately concise, though it could have used the spare sentence to add one or two parameter or usage clarifications.
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 14 parameters, no output schema, no annotations, and no schema description coverage, this description is too sparse. The agent can infer the primary operation but lacks enough context to know how defaults interact, required inputs for a new sketch, or what the verification behavior actually validates.
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 14 parameters; the description adds no parameter-level meaning. Parameter names like radius_x and plane hint at their roles, but the description does not compensate for the missing schema descriptions, leaving center format, line_style, require_no_changed, and others 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 ('Create one 2D sketch ellipse') and adds useful scope ('in a new or existing sketch'). It clearly identifies what the tool does, though it does not explicitly distinguish itself from sibling entity-creation tools like create_sketch_circle or create_sketch_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 context is implied: use this tool when you need a single 2D ellipse in a sketch. It does not compare against alternatives or state when to prefer create_sketch_entities for multiple entities, so usage guidance is present but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_sketch_entitiesA
Create several 2D sketch entities in one target sketch and verify the snapshot delta.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | SKETCH_BATCH_1 | |
| plane | No | XOY | |
| entities | No | ||
| max_items | No | ||
| min_added | No | ||
| dimensions | No | ||
| sketch_ref | No | ||
| constraints | No | ||
| document_id | No | ||
| sketch_options | No | ||
| create_new_sketch | No | ||
| require_no_changed | No | ||
| require_no_removed | No |
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 disclose that the tool mutates by creating entities and that it verifies the snapshot delta. However, it does not mention document-open requirements, persistence behavior, error handling, or what happens when verification fails, leaving notable behavioral gaps.
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 phrase contributes meaning, and it clearly leads with the primary action and 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 complex 13-parameter tool with no output schema and no annotations, this description is far too thin. It omits how entities are structured, how constraints and dimensions are supplied, whether a new sketch is created, what the return value is, and what 'verify snapshot delta' implies for the caller.
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 13 parameters, but it adds almost nothing specific. 'Several' hints at the array nature of entities and 'target sketch' hints at a sketch context, but there is no explanation of entities, constraints, dimensions, flags, or the create_new_sketch/sketch_ref relationship.
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 a concrete resource ('several 2D sketch entities in one target sketch'), clearly distinguishing it from the singular create_sketch_* tools among the siblings. The additional mention of 'verify the snapshot delta' establishes a distinct secondary 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 phrase 'several 2D sketch entities in one target sketch' clearly communicates the intended batching use case versus single-entity creation alternatives. It does not explicitly state exclusions or mention when to prefer sibling tools, but the context is unambiguous enough for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_sketch_line_segmentB
Create a sketch with one 2D line segment and verify the before/after snapshot delta.
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | ||
| name | No | SKETCH_LINE_1 | |
| plane | No | XOY | |
| start | No | ||
| max_items | No | ||
| min_added | No | ||
| line_style | No | ||
| sketch_ref | No | ||
| document_id | No | ||
| create_new_sketch | No | ||
| require_no_changed | No | ||
| require_no_removed | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations available, the description must carry behavioral disclosure. It does state that the tool both creates geometry and verifies a before/after snapshot delta, which is useful because similar creation tools might only create. However, it does not disclose side effects, permissions, or failure semantics.
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 sentence with no filler, front-loading the core action before the verification behavior. Every clause 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 tool with 12 parameters and no output schema, this is too sparse. The critical defaults and relationships among parameters, such as the snapshot verification flags, are left to the agent to infer, so a correct call beyond the defaults is underspecified.
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 input schema has 12 parameters and 0% description coverage. The description explains none of them, so an agent cannot know how start/end coordinates, plane, create_new_sketch, or the require_* flags are meant to be used.
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 operation (create) and resource (a sketch with one 2D line segment), which immediately distinguishes it from sibling tools such as create_sketch_circle or create_sketch_polyline. The added verification behavior is also stated.
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 intended use is implied by the resource named, but no explicit when-to-use, when-not-to-use, or alternative guidance is provided. An agent can infer it is the line-segment creator from the purpose, but nothing excludes or routes to related sketch tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_sketch_pointB
Create one 2D sketch point in a new or existing sketch and verify the snapshot delta.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | SKETCH_POINT_1 | |
| plane | No | XOY | |
| point | No | ||
| max_items | No | ||
| min_added | No | ||
| line_style | No | ||
| sketch_ref | No | ||
| document_id | No | ||
| create_new_sketch | No | ||
| require_no_changed | No | ||
| require_no_removed | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden. It does disclose one notable behavior: the tool 'verif[ies] the snapshot delta' after creation. However, it does not explain side effects on the document, permissions, or error/failure behavior, 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?
A single front-loaded sentence with no filler. It states the action and the key behavioral addition in order of importance.
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 11-parameter tool with no annotations and no output schema, this description is far from complete. It covers the core object but says nothing about most parameters, side effects, return values, or realistic invocation scenarios.
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. 'New or existing sketch' adds some meaning to create_new_sketch/sketch_ref, but the other nine parameters (e.g., max_items, min_added, require_no_changed, require_no_removed, line_style) 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 names a specific verb and resource: 'Create one 2D sketch point' in 'a new or existing sketch.' This clearly differentiates it from sibling tools like create_sketch_line_segment or create_sketch_circle.
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 create_sketch_entities for bulk creation or the other primitive creators. The 'new or existing sketch' clause implies a selection condition but provides no exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_sketch_polylineC
Create one 2D sketch polyline in a new or existing sketch and verify the snapshot delta.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | SKETCH_POLYLINE_1 | |
| plane | No | XOY | |
| closed | No | ||
| points | No | ||
| max_items | No | ||
| min_added | No | ||
| line_style | No | ||
| sketch_ref | No | ||
| document_id | No | ||
| create_new_sketch | No | ||
| require_no_changed | No | ||
| require_no_removed | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits. It mentions 'verify the snapshot delta,' hinting at a verification step, but omits side effects (e.g., mutation of the sketch), prerequisites (e.g., open document), or failure behavior. This is insufficient for a create 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 that is concise and front-loaded with the core purpose. It avoids unnecessary verbosity, though the extreme brevity contributes to other dimensions being 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 tool with 12 parameters, no output schema, and no annotations, the description is severely incomplete. It does not explain how to construct points, what the snapshot delta verification entails, or what the tool returns. An agent cannot confidently invoke this tool correctly based on the 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?
The input schema has 12 parameters with 0% description coverage, and the tool description provides no explanations for any of them. It does not clarify what 'points' should look like, the meaning of 'closed,' or the role of 'sketch_ref' versus 'create_new_sketch.' The description fails to 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 clearly states the tool's purpose: 'Create one 2D sketch polyline' with the scope 'in a new or existing sketch.' The verb-resource combination is specific and differentiates this from other create_sketch_* tools (e.g., create_sketch_line_segment) by naming the polyline entity.
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 minimal contextual guidance ('new or existing sketch') but does not specify when to prefer this tool over alternatives like create_sketch_line_segment or create_sketch_circle. No exclusions or conditions are given, leaving selection to the agent's inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_sketch_rectangleC
Create a sketch rectangle from two corners and verify the before/after snapshot delta.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | SKETCH_RECTANGLE_1 | |
| plane | No | XOY | |
| corner1 | No | ||
| corner2 | No | ||
| max_items | No | ||
| min_added | No | ||
| line_style | No | ||
| sketch_ref | No | ||
| document_id | No | ||
| create_new_sketch | No | ||
| require_no_changed | No | ||
| require_no_removed | No |
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 does reveal that the tool verifies the before/after snapshot delta, but it does not explain mutation scope, required session state, failure behavior, or what the verification enforces.
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 front-loaded and has no filler, which is good. However, a 12-parameter tool with no schema descriptions and no annotations needs more than a sentence, so the brevity is under-specification rather than appropriate 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?
The core action and one verification behavior are present, but the description is not complete enough for an agent to invoke the tool correctly. Missing context includes coordinate conventions, plane naming, whether a sketch/document must already exist, and how max_items/min_added/require_no_changed/require_no_removed control the verification.
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 coverage is 0%, so the description must compensate for 12 undocumented parameters. It adds meaning only for corner1/corner2 ('two corners') and vaguely hints at verification, but leaves plane format, coordinate units, sketch_ref/document_id behavior, and the verification criteria 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 names a concrete operation, creating a sketch rectangle from two corners, which distinguishes it from sibling create_sketch_line_segment/circle/ellipse tools. The appended snapshot verification is a secondary behavior and slightly blurs the primary purpose, 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?
No guidance is given on when to use this tool versus the many sibling sketch-creation tools, nor are prerequisites such as an open document or existing sketch mentioned. The purpose implies one use case, but there are no explicit conditions, exclusions, or alternative routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_specificationC
Create a specification description and fill rows from the current assembly tree.
| Name | Required | Description | Default |
|---|---|---|---|
| save | No | ||
| style_id | No | ||
| document_id | No | ||
| layout_name | No | ||
| include_root | No | ||
| close_after_save | No | ||
| replace_existing | No | ||
| specification_name | No |
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. The definition implies a creation/modification operation but does not state whether it saves, alters the document, or is reversible. It mentions 'fill rows' which implies writing data, but doesn't disclose effects on the model or existing specifications. The absence of any mention of side effects or return behavior leaves the agent without crucial 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 sentence, which is efficient and front-loads the primary purpose. It does not waste words, but could be expanded with critical details without losing conciseness. It's appropriately sized for a one-line intro, though deeper context is missing.
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 (8 parameters, 0% schema coverage, no annotations, no output schema), the description is far from complete. It lacks any explanation of parameters, return values, side effects, or conditions. An agent cannot reliably invoke this tool correctly without additional documentation. The description provides minimal context to operate in the broader 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?
The schema description coverage is 0%, and the description provides no explanation for any of the 8 parameters. The parameter names might hint at their purpose (e.g., save, include_root), but the description does not explain the meaning or relationships. For instance, what does 'replace_existing' do? What is the role of 'style_id'? Without documentation, the agent has to guess, which is a serious shortfall for a tool with this many 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 the action ('create') and the resource ('specification description') and includes an additional behavior ('fill rows from the current assembly tree'). This verb+object structure is clear, though it does not explicitly distinguish it from closely related siblings like preview_specification_generation or create_spw_from_model, but the core purpose is understandable.
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 explicit guidance on when to use this tool versus alternatives. It does not mention prerequisites like having a document open or whether it's for initial creation versus updating. The phrase 'from the current assembly tree' hints at context but no exclusions or selections are provided. With many specification-related siblings, this is a notable gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_spring_from_sizeC
Create a supported spring from one resolved catalog entry.
| Name | Required | Description | Default |
|---|---|---|---|
| visible | No | ||
| entry_id | Yes | ||
| overrides | No | ||
| catalog_id | Yes | ||
| catalog_dir | No | ||
| output_path | No | ||
| close_after_save | No |
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 does not state whether this is a mutating operation, whether it saves to disk, what 'supported' means, or what side effects occur (e.g., creating a document, closing after save). The parameter close_after_save hints at behavior, but the description itself is silent.
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, which is concise, but it is under-specified. It front-loads the core action but omits essential context. It is not verbose, but it does not earn its place as a complete 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 7 parameters, no annotations, no output schema, and 0% schema description coverage, the description is incomplete. An agent cannot determine prerequisites, side effects, or how parameters interact. The tool appears to be part of a spring-creation workflow, but the description does not provide enough context to invoke 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%, so the description must compensate, but it does not explain any parameters. It does not clarify what catalog_id, entry_id, overrides, catalog_dir, output_path, visible, or close_after_save mean in context. The description adds no meaning beyond the schema's raw 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 states a specific verb and resource: 'Create a supported spring from one resolved catalog entry.' It is clear that this tool creates a spring from a catalog entry, but it does not distinguish itself from sibling tools like create_compression_spring or preview_spring_from_size. The phrase 'supported spring' is somewhat vague about what kind of spring is 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 alternatives. It does not mention that the catalog entry must be resolved first, nor does it reference sibling tools like resolve_spring_size or preview_spring_from_size. An agent would not know the prerequisite workflow or when to choose this over create_compression_spring.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_spw_from_modelA
Create a separate .spw specification document from the current model tree.
By default writes only position, designation, title, quantity, comment. Engineering fields are written only when mapped by columns and opted in.
| Name | Required | Description | Default |
|---|---|---|---|
| columns | No | ||
| style_id | No | ||
| document_id | No | ||
| layout_name | No | graphic.lyt | |
| output_path | No | ||
| include_root | No | ||
| column_preset | No | ||
| include_engineering | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description takes on the burden of disclosing behavior. It does disclose the default field set and the condition for engineering fields, which is useful. However, it omits other behavioral aspects such as whether an existing .spw file is overwritten, permission requirements, or the effect of omitting output_path.
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 two concise sentences with the main action front-loaded and a clear conditions sentence. Every word earns its place, and there is no filler or redundant phrasing.
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 has 8 parameters, no annotations, no output schema, and 0% schema coverage, the description is not complete enough. It covers defaults and engineering conditions but leaves parameter semantics, output behavior, and return value unaddressed, making it difficult for an agent to call the tool correctly without additional information.
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 indirectly explains the roles of 'columns' and 'include_engineering' via 'mapped by columns and opted in,' but six other parameters (style_id, document_id, layout_name, output_path, include_root, column_preset) receive no explanation. The description adds only minimal parameter 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 clearly states the action ('Create'), the resource ('.spw specification document'), and the source ('current model tree'). It also notes the default fields written, which helps distinguish it from sibling tools like create_specification that may target different output formats or scopes.
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 by specifying the default behavior and the condition under which engineering fields are included, but it does not explicitly state when to use this tool versus alternatives like create_specification or preview_spw_generation. No exclusions or alternative tool names are mentioned, leaving usage to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_sketch_entityC
Delete one existing sketch entity selected by reference, index, or fingerprint.
| Name | Required | Description | Default |
|---|---|---|---|
| entity | No | ||
| sketch_ref | No | ||
| document_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It states 'Delete' implying a destructive action, but doesn't disclose whether the deletion is permanent, undoable, requires confirmation, or affects dependent entities. No behavioral traits beyond the basic action are revealed.
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 fluff. It front-loads the action and selection methods. Efficient, though it omits necessary details, so it's not perfect.
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 destructive tool with three optional parameters and no output schema, the description is underspecified. It doesn't explain selection semantics, error conditions, or side effects. An agent would likely need to probe the schema or guess to use 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%, so the description must compensate. It mentions 'by reference, index, or fingerprint' but doesn't map these to the actual parameters (entity, sketch_ref, document_id). The agent cannot derive how to populate these fields 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 clear action (delete) and resource (sketch entity), and specifies selection methods (reference, index, fingerprint). This distinguishes it from sibling read-only tools like list_sketch_entities and inspect_sketch_entity, though it doesn't explicitly name 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 on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., must have a valid sketch entity) or exclusions (e.g., cannot delete if referenced elsewhere). The agent is left to infer usage 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.
diff_document_snapshotsC
Compare two readback snapshot/manifest payloads or JSON artifact paths with bounded item deltas.
| Name | Required | Description | Default |
|---|---|---|---|
| after | Yes | ||
| before | Yes | ||
| max_items | No | ||
| ignore_keys | No | ||
| ignore_paths | No | ||
| use_default_volatile_ignores | No |
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 hints that deltas are bounded and that inputs can be payloads or paths, but it does not state whether the operation is read-only, how bounding is configured, or what effects ignore_keys, ignore_paths, and use_default_volatile_ignores have on the comparison.
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 no filler words. It efficiently communicates the core operation and input types, though its brevity contributes to the missing 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?
With no output schema, no annotations, six parameters, and no return-value documentation, the description leaves essential details unstated, such as delta structure, output formatting, and the exact semantics of 'bounded item deltas'. An agent would need to infer too much to invoke this tool 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%, and the description adds no meaning for max_items, ignore_keys, ignore_paths, or use_default_volatile_ignores. The before/after parameters are evident from their names, but the filtering and bounding parameters are left entirely unexplained, 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 names a specific verb ('Compare') and a specific resource ('two readback snapshot/manifest payloads or JSON artifact paths'), and adds the qualifier 'with bounded item deltas', which clarifies the operation's scope. It differentiates this from a capture or verify operation, though it does not explicitly name sibling tools to fully disambiguate.
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 usage context: comparing two snapshot/manifest payloads or JSON paths. However, it gives no explicit when-to-use vs when-not-to-use guidance and does not reference alternatives like verify_document_snapshot_delta, leaving routing to be inferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_itemsC
Search items by text and optional kinds.
| Name | Required | Description | Default |
|---|---|---|---|
| kinds | No | ||
| query | No | ||
| document_id | No |
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. 'Search' implies a read operation, but the description does not clarify matching semantics, empty-query behavior, document scoping, or what result shape 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 short sentence that is front-loaded with the core purpose. Every word earns its place and there is no redundant boilerplate.
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 three optional parameters, no annotations, and no output schema, the description is too sparse. It does not specify document scoping or behavior on empty query, making it incomplete for reliable invocation by 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, but it only explains 'text' and 'optional kinds.' The document_id parameter is omitted entirely, and no additional meaning is added beyond the schema's parameter 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 ('Search items') and the core filter mechanism ('by text and optional kinds'), which is more than a tautology. However, the resource 'items' is ambiguous and the description does not distinguish find_items from siblings like get_items or list_document_tree.
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 find_items versus alternative lookup tools such as get_items or document-scoped searches. The description implies text-based search but gives no exclusions, prerequisites, or selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_spring_sizesC
Find spring catalog entries by type, size, class, or tag.
| Name | Required | Description | Default |
|---|---|---|---|
| tag | No | ||
| limit | No | ||
| turns | No | ||
| height | No | ||
| end_type | No | ||
| hook_type | No | ||
| catalog_id | No | ||
| leg_length | No | ||
| load_class | No | ||
| catalog_dir | No | ||
| spring_type | No | ||
| wire_diameter | No | ||
| outer_diameter | No | ||
| standard_length | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It doesn't state whether this is read-only, whether it returns a list or a single entry, how multiple filter parameters combine (AND/OR), or the role of the limit parameter for pagination. The description only says 'find' without disclosing any behavioral details.
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 that front-loads the action. It is appropriately concise with no wasted words 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?
Given 14 parameters, no annotations, and no output schema, the description is severely under-specified. It doesn't explain return format, pagination via limit, parameter semantics, or relationship to sibling tools. An agent would need to infer too much to call this 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 coverage is 0%, so the description must compensate by explaining parameters. It mentions 'type, size, class, tag' but doesn't map these to specific schema fields like spring_type, load_class, or the various dimension parameters. It adds minimal value over the raw schema, which itself has no 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 clearly states the tool finds spring catalog entries and mentions filter criteria (type, size, class, tag). It distinguishes from sibling tools like recommend_spring_sizes by implying a direct lookup rather than a recommendation. However, 'size' and 'class' are vague and could map to multiple parameters.
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 like recommend_spring_sizes or resolve_spring_size. The description doesn't mention any exclusions, prerequisites, or conditions for selection, leaving the agent to guess which tool fits a given request.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_active_document_stateC
Read bounded active-document state through the primitive operation pipeline.
| Name | Required | Description | Default |
|---|---|---|---|
| max_items | No | ||
| document_id | No | ||
| include_tree | No | ||
| include_items | No | ||
| require_active_document | No |
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 says 'Read', implying read-only behavior, but does not disclose that it returns bounded results (max_items), whether it requires an active document (require_active_document defaults true), or what the 'primitive operation pipeline' involves. This is minimal 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 description is a single concise sentence, but it wastes its brevity on the opaque phrase 'primitive operation pipeline' instead of explaining the tool's actual behavior. It is not verbose, but the short length does not compensate for the jargon and missing 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?
Given five parameters, no output schema, no annotations, and no parameter descriptions, this one-liner is severely incomplete. It does not describe return values, parameter roles, or the meaning of 'bounded state', leaving the agent unable to call this tool confidently in most scenarios.
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 adds no parameter semantics. None of the five parameters (max_items, document_id, include_tree, include_items, require_active_document) are explained. The word 'bounded' hints at max_items but is too vague to count as 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 states a verb and resource ('Read bounded active-document state') but the modifiers 'bounded' and 'primitive operation pipeline' are undefined jargon. It does not distinguish this from sibling tools like get_document_tree, get_items, or get_session_state, which also read document/session state.
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. It does not mention that it is for the active document, how it relates to get_document_tree or get_items, or any conditions for choosing it. With a large sibling list, this is a significant omission.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_document_compositionC
Read the stored composition of the selected or active saved document.
| Name | Required | Description | Default |
|---|---|---|---|
| document_id | No |
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 implies a read operation but does not explicitly state that it is non-destructive, what happens when no document is active, or what the return value contains. The minimal description offers little beyond the verb 'read'.
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 that is direct and front-loaded with the core action. No wasted words; the description is appropriately sized for the simplicity 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 no output schema and no annotations, the description should clarify what 'composition' means, the return format, and potential error cases. It also fails to differentiate itself from get_file_composition. The description is too sparse to fully inform an agent 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?
The schema has zero description coverage, so the description must explain the parameter. It implies that document_id is optional and that when omitted, the selected or active document is used. This adds meaning beyond the schema, but does not clarify the parameter's type or format, leaving ambiguity.
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 tool reads the stored composition of a document, using a specific verb and resource. It distinguishes from siblings like get_file_composition by mentioning 'document' vs 'file', though 'composition' remains somewhat vague without 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 on when to use this tool versus alternatives like get_file_composition or get_document_tree. The description does not mention any prerequisites, selection rules, or scenarios where this tool is preferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_document_treeB
Return the assembly/model tree for the selected or active document.
| Name | Required | Description | Default |
|---|---|---|---|
| document_id | No |
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 implies a read operation ('Return') but does not explicitly state it is read-only, nor does it describe potential side effects, performance characteristics, or error behavior. It also does not clarify what happens when document_id is null (though 'selected or active' hints at it). This is a significant gap given the lack of annotation support.
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 that front-loads the action and resource. Every word earns its place, and there is no filler. It is appropriately sized for a simple read operation.
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 one optional parameter and no output schema, the description is adequate but not complete. It does not describe the structure of the returned tree, what nodes are included, or how errors are handled. Since there is no output schema, the description would need to provide this context for an agent to fully understand the result, but it remains minimal. It is sufficient for a basic call but lacks depth for robust decision-making.
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 provides no description for the single parameter, document_id, and coverage is 0%. The description compensates by explaining the parameter's role: 'selected or active document' implies that omitting document_id uses the active document, while providing it selects a specific one. This adds meaning beyond the bare schema and effectively clarifies the optional parameter.
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 ('Return') and resource ('assembly/model tree'), and clarifies the scope ('selected or active document'). It is unambiguous about what the tool does, though it does not explicitly distinguish it from sibling tools like get_document_composition or get_file_composition, which could be similar in 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 provides no guidance on when to use this tool versus alternatives, nor does it mention any exclusions or prerequisites. It simply states what it returns. An agent is left to infer that this is the tool for retrieving a tree structure, but there is no explicit routing or comparison to siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_file_compositionC
Read the stored composition of an assembly file directly from the file itself.
| Name | Required | Description | Default |
|---|---|---|---|
| assembly_path | 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 of disclosing behavior. It does indicate a read-only operation ('Read') and that it accesses the file directly, which is useful, but it does not describe what the returned 'composition' includes, potential failure modes (e.g., missing file, unsupported format), or whether any session state is affected. This is incomplete 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?
A single, front-loaded sentence with no filler. Every word contributes to the tool's purpose and mechanism. It is appropriately concise for the tool's simplicity.
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 the tool is simple (one parameter, no output schema, no annotations), the description does not fully cover what an agent needs to invoke it confidently. It omits usage guidance, output semantics, and error handling. The phrase 'stored composition' is vague and could mean different things depending on the file system 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?
The schema provides no description for assembly_path (0% coverage), so the description must compensate. The only added meaning is that the path refers to an 'assembly file,' but it does not clarify path format, file type expectations, relative vs absolute paths, or any constraints. This falls short of compensating 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 states a specific verb ('Read'), a resource ('stored composition of an assembly file'), and a distinguishing mechanism ('directly from the file itself'). This makes it clear the tool reads from the file rather than the in-memory document, which differentiates it from the sibling get_document_composition. However, it does not explicitly name any sibling, so it lacks 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?
There is no guidance on when to use this tool versus alternatives like get_document_composition or scan_model_files. No conditions, exclusions, or alternative tools are mentioned, leaving the agent to infer context from the name and description alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_item_propertiesD
Return a practical properties snapshot for selected items.
| Name | Required | Description | Default |
|---|---|---|---|
| item_ids | No | ||
| document_id | No |
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 burden of behavioral disclosure. It only says 'Return a practical properties snapshot' without indicating whether the operation is read-only, what happens if items are missing, performance implications, or any side effects. The behavior is effectively 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?
While the description is a single short sentence, it is under-specified rather than concisely informative. It conveys no more than the tool name already implies, which is wasteful for an agent trying to understand the tool's 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?
Given two optional parameters, no output schema, no annotations, and a large sibling set, the description is drastically insufficient. It does not explain the nature of 'items', the output format, when items are 'selected', or how document_id affects results. An agent cannot reliably call 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%, and the description does not mention the parameters (`item_ids`, `document_id`) at all. It gives no hint of what these inputs mean, how they interact, or which combinations are valid. It completely fails to compensate for the schema 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?
The description uses a clear verb ('Return') and identifies a resource ('properties snapshot for selected items'), but 'items' is ambiguous — it could refer to sketch entities, features, or document elements. It does not explicitly distinguish this from sibling tools like 'get_items' or 'inspect_sketch_entity', which likely have overlapping scopes.
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 conditions, exclusions, or context are provided. The agent has no basis to choose this over 'get_items', 'inspect_sketch_entity', or other read-oriented tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_itemsC
Return selected tree items with their current properties.
| Name | Required | Description | Default |
|---|---|---|---|
| item_ids | No | ||
| document_id | No |
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 implies a read-only retrieval of current properties, but it does not mention side effects, permission needs, error behavior, or the scope of the returned items. It does not contradict annotations because none 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 redundant wording; every word contributes. It is concise but sacrifices necessary detail, so it does not quite reach the highest bar.
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 tool has no annotations, no output schema, and 0% parameter schema coverage, yet the description explains none of the parameters, return shape, or selection semantics. An agent would not have enough information to choose or invoke this 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%, so the description must compensate by explaining item_ids and document_id. It does not mention either parameter, and 'selected tree items' only vaguely hints at item selection without clarifying how the parameters map to the 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?
The description uses a clear verb ('Return') and names the resource ('tree items with their current properties'), so it is not a tautology. However, 'selected' is ambiguous, and the description does not distinguish this tool from close siblings like get_item_properties, find_items, or get_document_tree.
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 get_item_properties or find_items. The description does not explain what 'selected' means, whether item_ids or document_id are needed, or what conditions favor this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_mcp_tool_catalogA
Return the public tool catalog; research tools require explicit opt-in.
| Name | Required | Description | Default |
|---|---|---|---|
| category | No | ||
| stability | No | ||
| include_research | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden of behavioral disclosure. It discloses the key behavioral trait: research tools are excluded unless explicitly opted in. However, it doesn't describe the return format, pagination, or what 'explicit opt-in' means operationally (e.g., whether include_research=true is the opt-in mechanism). The description adds some value but leaves the opt-in mechanism to be inferred from the schema.
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 waste. The core action ('Return the public tool catalog') is front-loaded, and the critical behavioral caveat ('research tools require explicit opt-in') is appended in the same breath. 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 catalog-listing tool with 3 optional parameters and no output schema, the description is mostly adequate. The main gap is that it doesn't explain what 'category' and 'stability' filter on, and it doesn't clarify the return shape. Given the tool's low complexity, this is a minor-to-moderate gap, so a 3 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%, so the description must compensate. It partially does by explaining the 'include_research' concept ('research tools require explicit opt-in'), which maps to the include_research parameter. However, it doesn't explain the 'category' or 'stability' parameters at all, and with 0% schema coverage, the agent must guess at their semantics. The description adds some meaning but doesn't fully compensate for the coverage 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?
The description states a specific verb ('Return') and resource ('public tool catalog'), and adds a scoping qualifier ('public') that distinguishes it from research-oriented catalog tools. It doesn't explicitly name a sibling alternative, but the qualifier plus the 'research tools require explicit opt-in' clause gives enough differentiation from the many sibling 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?
The description implies when to use this tool: when you need the public catalog, and it warns that research tools are not included unless explicitly opted in. It doesn't name a specific alternative tool, but the opt-in warning effectively tells the agent not to expect research tools here and to look elsewhere or pass include_research=true. This is clear context without explicit exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_session_stateB
Return basic information about the current KOMPAS session.
| Name | Required | Description | Default |
|---|---|---|---|
No 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 states it 'returns' information, implying a read-only operation, but does not explicitly confirm lack of side effects. It also does not describe what 'basic information' includes, error behavior, or any session-related constraints. The disclosure is minimal and leaves key traits unspecified.
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 repetition. It efficiently states the tool's purpose and is appropriately sized for a parameterless getter.
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 adequate for a simple getter, but since there is no output schema, it could provide more detail on what 'basic information' includes (e.g., session ID, status, or document references). The tool is simple enough that a 3 is fair, but it leaves room for more useful 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?
The tool has zero parameters and the schema coverage is 100% (vacuously). With no parameters, the description does not need to explain parameter semantics; the baseline score of 4 is appropriate since there is nothing to clarify.
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 ('Return') and resource ('basic information about the current KOMPAS session'), making the tool's purpose unambiguous. However, it does not explicitly distinguish itself from sibling state-related tools like get_active_document_state or get_document_tree, so it's clear but not fully differentiated.
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. Given the large set of sibling tools, an agent has no information about whether to call this or get_active_document_state, for example. There is no mention of 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.
get_specificationC
Read the active or selected specification description with its objects and columns.
| Name | Required | Description | Default |
|---|---|---|---|
| document_id | No | ||
| layout_name | No | ||
| max_objects | No | ||
| include_objects | No | ||
| description_index | No |
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 says 'Read' which implies a non-destructive operation, but it doesn't disclose what 'active or selected' means, how selection is determined, whether the operation can fail (e.g., no active document), or what happens with the max_objects limit. For a read tool with no annotations, this is a moderate 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 sentence that is concise and front-loads the core action ('Read the active or selected specification description'). It doesn't waste words, though it could add a bit more detail 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?
With 5 parameters, 0% schema coverage, no annotations, and no output schema, the description is too thin. An agent doesn't know what 'active or selected' means, how the parameters interact, or what the return structure looks like. Sibling tools like get_specification_descriptions suggest a related but different operation, and the description doesn't clarify the distinction.
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 mentions 'objects and columns' which maps to include_objects and possibly description_index, but it doesn't explain document_id, layout_name, max_objects, or description_index semantics. The description adds minimal value beyond the schema's 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 clear verb ('Read') and resource ('specification description with its objects and columns'), which distinguishes it from sibling tools like get_specification_descriptions (which likely only lists descriptions) and create_specification. However, it doesn't explicitly name a sibling or contrast itself, so it's clear but not fully differentiated.
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 the active or selected specification's full content (objects and columns). It doesn't explicitly state when not to use it or mention alternatives like get_specification_descriptions for just the list of descriptions. The context is implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_specification_descriptionsA
List available specification descriptions for the selected or active document.
| Name | Required | Description | Default |
|---|---|---|---|
| document_id | No |
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 states the operation is a 'List', which implies a read-only, non-mutating behavior, and that it returns available descriptions, but it does not disclose details such as output format, behavior on missing document, or error cases. This is minimal but not misleading.
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 no extraneous words. It is front-loaded with the verb and immediately states scope.
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 one optional parameter and no output schema, the description is adequate but leaves the meaning of 'specification descriptions' ambiguous. It does not explain what a description is, how the list is returned, or how this relates to the broader specification workflow. Given the simple read-only nature, this is a moderate 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 undocumented 'document_id' parameter. The phrase 'selected or active document' suggests that a null document_id resolves to the active document, adding meaning beyond the schema's type and default. However, this is implied rather than explicit.
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') and resource ('specification descriptions') and scopes it to the selected or active document. It is clear enough to distinguish from the sibling 'get_specification' by the word 'descriptions', but it does not explicitly name alternatives or exclusions, so it does not fully meet the 5-level 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?
The description provides a contextual condition ('selected or active document') that implies when the tool applies, but it offers no guidance on when to prefer this over siblings like 'get_specification' or 'preview_specification_generation'. This is implied usage, not explicit when/when-not guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
inspect_featureB
Inspect one existing 3D feature selected by reference, index, fingerprint, or name.
| Name | Required | Description | Default |
|---|---|---|---|
| feature | No | ||
| document_id | No |
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 says 'Inspect' which implies a read-only operation, but it does not state whether the operation is non-destructive, what it returns, whether it can fail (e.g., if the feature is not found), or any side effects. For a read tool, the lack of return-format or error behavior disclosure is a notable 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?
One sentence, front-loaded with the verb and resource, and it lists the selection methods compactly. No wasted 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?
For a tool with no annotations, no output schema, and a vague input schema, the description is too thin. It does not explain what 'inspect' returns, how the selection methods are expressed in the 'feature' parameter, or what document_id is for. An agent would likely need to open the schema (which is unhelpful) or guess. The sibling list shows related inspection tools, but the description does not position itself among them.
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 schema itself is weak: 'feature' is an untyped object with additionalProperties true, and 'document_id' is a nullable string. The description mentions selection by reference, index, fingerprint, or name, which maps to the 'feature' parameter, but it does not explain how these selectors are structured or how document_id relates to them. The description adds some meaning but does not compensate for the schema's lack of detail.
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 ('Inspect') and resource ('one existing 3D feature'), and lists four selection methods (reference, index, fingerprint, name). It is clear what the tool does, though it does not explicitly distinguish it from sibling tools like list_features or inspect_sketch_entity. The phrase '3D feature' helps differentiate from sketch entities, but the description could be more explicit about how it differs from list_features.
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 to inspect an existing 3D feature, selected by one of four identifiers. It does not state when not to use it or name alternatives (e.g., list_features for enumerating features, inspect_sketch_entity for sketch entities). The context is clear enough for an agent to infer the primary use case, but explicit routing guidance is missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
inspect_sketch_constraintB
Inspect one existing sketch constraint selected by reference, index, or fingerprint.
| Name | Required | Description | Default |
|---|---|---|---|
| constraint | No | ||
| sketch_ref | No | ||
| document_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden. 'Inspect' communicates a read-only operation and 'existing' hints at failure modes for invalid selections, but it does not disclose what information is returned or whether any session state is affected. This is partial but insufficient 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?
One sentence with no padding; the core verb and object are front-loaded. Every phrase adds a constraint: one, existing, and selection mode.
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 output schema and no annotations, the description does not explain what an inspection returns, how the three optional parameters interact, or what errors may occur. The tool's call contract is underspecified for reliable agent use.
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 hints that selection can be by reference, index, or fingerprint, but never maps those modes to the actual parameters (constraint, sketch_ref, document_id) or explains how the optional parameters combine. The agent is left guessing.
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 action (inspect), the resource (one existing sketch constraint), and the selection modes (reference, index, fingerprint). This distinguishes it from list_sketch_constraints and inspect_sketch_entity without needing to name 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 is given on when to use this tool versus alternatives like list_sketch_constraints or inspect_sketch_dimension. There are no prerequisites, exclusions, or contextual hints beyond the implication that the constraint must already exist.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
inspect_sketch_dimensionB
Inspect one existing sketch dimension selected by reference, index, or fingerprint.
| Name | Required | Description | Default |
|---|---|---|---|
| dimension | No | ||
| sketch_ref | No | ||
| document_id | No |
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. 'Inspect' implies a read-only operation with no modification, and 'existing' suggests it operates on already-created dimensions, but the description does not explicitly state that no changes are made, what is returned, or how selection failures are handled. This is adequate but not rich.
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 communicates the core action and selection options, though a bit more structure or clarification of parameters would improve usefulness without harming 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?
For a tool with three undocumented optional parameters and no output schema, the description is too sparse. It omits parameter semantics, return behavior, error cases, and guidance on how the selection modes relate to the input schema. The presence of many sketch-related siblings increases the need for more context to prevent misuse.
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 vaguely mentions 'reference, index, or fingerprint' without mapping these concepts to the three parameters (dimension, sketch_ref, document_id). The description adds minimal meaning beyond the raw parameter names, and the agent is left without guidance on how to populate or combine these optional fields.
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 ('inspect'), the resource ('sketch dimension'), and adds selection modes ('reference, index, or fingerprint'), which separates it from generic inspection tools. It does not explicitly distinguish itself from close siblings like list_sketch_dimensions or inspect_sketch_constraint, but the singular 'one existing sketch dimension' provides reasonable scoping.
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 'one existing sketch dimension' implies this is for individual inspection rather than listing, but no explicit alternative or when-not-to-use guidance is provided. The intended use case is inferable from the name and description, but the description does not clearly state when to prefer this over list_sketch_dimensions or inspect_sketch_entity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
inspect_sketch_entityC
Inspect one existing sketch entity selected by reference, index, or fingerprint.
| Name | Required | Description | Default |
|---|---|---|---|
| entity | No | ||
| sketch_ref | No | ||
| document_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. 'Inspect' implies a read-only operation but does not explicitly state it is non-destructive, what happens if the entity is not found, or any side effects. Missing critical 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?
A single sentence with no filler. The core action and object are front-loaded. It is efficiently concise, though brevity contributes to incompleteness.
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 3 parameters, no output schema, and no annotation coverage, this description is severely inadequate. It lacks parameter explanations, return value description, and usage context, making it impossible for an agent to correctly invoke the tool without external knowledge.
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 coverage is 0% and the description does not explain what the three parameters (entity, sketch_ref, document_id) mean. It mentions 'by reference, index, or fingerprint' but does not map these to the parameters, leaving the agent without any 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 ('Inspect') on a specific resource ('one existing sketch entity') and indicates selection methods. It distinguishes from siblings like list_sketch_entities and inspect_sketch_full, though it doesn't explicitly name 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 on when to use this tool vs alternatives. It doesn't mention prerequisites like listing entities first, how to obtain a reference, or when to prefer inspect_sketch_full. No exclusions or contextual hints.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
inspect_sketch_fullA
Full dump of an existing sketch: entities, dimensions, constraints, status.
Parameters
document_id : str | None Document ID. None = active document. sketch_ref : str Sketch reference (name or reference ID). include_dimensions : bool If True, read dimensions with values and entity refs. include_constraints : bool If True, read constraints via API5 ksGetObjConstraints (22 types: horizontal, vertical, parallel, perpendicular, merge_points, tangent, fixed_length, concentricity, etc.). include_diagnostics : bool If True, include COM/API5 diagnostic blocks such as projection classification, variable surfaces, available properties, and begin-edit fallback data. max_items : int Max entities per collection.
Returns
dict with: entities — list of {kind, index, geometry, reference, constraints_state} geometry: segments get start/end; arcs get start/end/center/radius/direction; circles get center/radius; points get point coordinates. dimensions — dimensions.items plus api5.dimension_variable_name and linked variable Expression when available. constraints — constraints.items/api5_items/all_items/projection_items with owner_object/partner_object links. status — sketch definition status (0=not_defined, 1=under, 2=fully, 3=over) collections — entity collections metadata projection — per-entity projection classification and UI-like projection constraints when detected.
| Name | Required | Description | Default |
|---|---|---|---|
| max_items | No | ||
| sketch_ref | No | ||
| document_id | No | ||
| include_dimensions | No | ||
| include_constraints | No | ||
| include_diagnostics | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Even though no annotations are provided, the description discloses substantial behavioral detail: it reads dimensions and constraints via API5, includes COM/API5 diagnostic blocks, can include begin-edit fallback data, and explains status code meanings. It also describes the shape of returned geometry, constraint links, and projection classifications, which goes far beyond what annotations would convey.
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 one-sentence summary and then organized into Parameters and Returns sections. Though detailed, every sentence provides necessary operational or return-structure information for a complex inspection tool, with 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 six-parameter tool with no output schema, the description covers all inputs and every part of the return payload, including status codes, entity geometry formats, constraint owner/partner links, and diagnostic content. An agent has enough detail to invoke the tool correctly and interpret its results; only explicit sibling-selection guidance is absent, which is already covered under usage guidelines.
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 input schema provides only names, types, and defaults, with 0% description coverage. The tool description fully compensates by explaining each parameter's purpose and effect, including document_id None meaning the active document, the 22 constraint types enumerated, what include_diagnostics adds, and that max_items caps entities per collection.
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 'Full dump of an existing sketch: entities, dimensions, constraints, status,' which names a specific verb, resource, and scope. 'Full dump' distinguishes this from sibling tools that inspect individual entities or list only one category of sketch data, so the tool's purpose is immediately 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 description implies the tool should be used when a complete sketch inspection is needed, but it does not explicitly state when to prefer it over list_sketch_entities, inspect_sketch_entity, list_sketch_dimensions, or list_sketch_constraints. There is clear context about what it does, but no mention of alternatives or exclusion conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_documentsB
Return open KOMPAS documents.
| Name | Required | Description | Default |
|---|---|---|---|
No 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 honestly states the core list behavior and the open-document scope, and 'Return' implies a read-only operation. However, it does not disclose output shape, ordering, failure behavior, or whether hidden or closed documents are excluded.
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 six-word sentence that front-loads the action and resource with no filler or redundancy. The terseness is appropriate for a zero-parameter list operation, and any under-specification is captured 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 zero-parameter list operation, the description is minimally usable, but with no output schema and no annotations, it leaves unspecified what a returned 'document' entry looks like (IDs, paths, metadata) and whether an active session is required. These are clear gaps for an agent invoking 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 tool takes zero parameters, so the input schema is already complete and there is nothing for the description to add. The baseline for zero-parameter tools applies.
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 ('Return') and resource ('open KOMPAS documents'), and the 'open' qualifier narrows the scope, distinguishing it from file-scanning or tree-based siblings. However, it does not explicitly contrast with related tools like get_document_tree or get_document_composition, 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 gives no guidance on when to use this tool versus alternatives. There are no prerequisites, exclusions, or references to sibling tools like get_active_document_state or get_document_tree, leaving the selection decision entirely to the agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_featuresC
List existing 3D features with reference, index, fingerprint, and state fields.
| Name | Required | Description | Default |
|---|---|---|---|
| kinds | No | ||
| max_items | No | ||
| document_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits. It only states that features are listed and which fields appear, but omits any details on side effects (likely read-only but not stated), pagination, limits, permissions, or error behavior. The agent cannot infer the full operational footprint from the description alone.
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, which is structurally efficient. However, its brevity is due to under-specification rather than purposeful precision. It earns credit for being front-loaded and clear about the output fields, but lacks necessary detail, so it does not reach the higher range.
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, no output schema, and zero parameter coverage, the description is severely incomplete. It does not explain how parameters affect the result, what the response looks like, or any operational constraints. For a list operation with filtering parameters, an agent would struggle to call it correctly without external knowledge.
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 'kinds', 'max_items', or 'document_id' at all. The description adds no meaning beyond the raw schema names, which are also undescribed. This is a major gap for a tool with three optional parameters that likely control filtering and limits.
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 ('List') and resource ('existing 3D features') and lists the fields returned (reference, index, fingerprint, state). This distinguishes it from tools like list_sketch_entities, though it does not explicitly differentiate from sibling tools like inspect_feature or get_items. The purpose is specific and actionable.
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. It does not mention inspect_feature for detailed feature inspection, or filtering options. There is no discussion of prerequisites or exclusions, leaving the agent to infer when this listing is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_helical_thread_v1_candidatesA
List only helical-thread-V1-compatible metric standards with bundled size rows.
| Name | Required | Description | Default |
|---|---|---|---|
| offset | No | ||
| pitch_max | No | ||
| pitch_min | No | ||
| title_query | No | ||
| diameter_max | No | ||
| diameter_min | No | ||
| database_path | No | ||
| limit_per_standard | No |
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 conveys read-only list behavior and the output scope includes size rows, but it does not explain pagination, database_path handling, or return shape.
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 front-loaded, single-purpose sentence with no filler. Every word earns its place, and the key filtering constraint is stated immediately.
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 list tool with 8 parameters, no annotations, and no output schema, the description is too thin. It omits behavior around filtering, pagination, database_path, and what 'bundled size rows' means concretely in the response.
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 8 parameters and 0% schema description coverage, the description needed to compensate but does not explain any parameter. Parameter names are somewhat self-descriptive, yet units, filter semantics, defaults, and database_path behavior remain 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 names a specific verb ('List'), a precise resource ('helical-thread-V1-compatible metric standards'), and a clear differentiator ('with bundled size rows'). This distinguishes it from sibling thread-catalog and listing tools, even without naming an alternative 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 description gives clear usage context: the tool is for listing only V1-compatible metric standards that bundle size rows. It does not explicitly name alternatives or state when not to use it, but the 'only' restriction communicates the selection scope clearly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_poly_v_profilesA
List ISO 9982:2021 PH, PJ, PK, PL, and PM Poly-V pulley profiles.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are absent, so the description must disclose behavioral traits. 'List' implies a read-only operation, but the description does not explicitly state that it has no side effects, nor does it describe the output format. For a simple listing tool, this is acceptable but not fully 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 description is a single, front-loaded sentence with no filler. It immediately conveys the standard and the specific profile types. Extremely concise and 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?
For a listing tool with no parameters, the description is complete in scope. It specifies the exact standard and profile types. It does not describe the return format, but given the simplicity and lack of output schema, this is a minor omission. The description is adequate for the tool's purpose.
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 has zero parameters, so the baseline is 4. The description does not need to explain any parameters, and no extra information is required. This score reflects the baseline for parameter-free tools.
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' and precisely identifies the resource: ISO 9982:2021 PH, PJ, PK, PL, and PM Poly-V pulley profiles. This clearly differentiates it from sibling tools like list_v_belt_profiles (V-belt) and resolve_poly_v_profile (resolution of a specific profile).
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 explicit guidance on when to use this tool versus alternatives is provided. However, the name and description imply it is for browsing available profiles before selection. The lack of explicit conditions or alternatives is a minor gap, but not misleading.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_sketch_constraintsC
List existing sketch constraints with reference, index, fingerprint, and owner entity fields.
| Name | Required | Description | Default |
|---|---|---|---|
| kinds | No | ||
| max_items | No | ||
| sketch_ref | No | ||
| document_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the safety and behavior burden. It only says 'List' and names output fields; it does not disclose the default max_items truncation, filtering combination semantics, or that this is a read-only operation 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?
A single front-loaded sentence with no filler; every word adds information about the resource or returned fields.
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 undocumented optional parameters and no output schema, the description is too thin: it omits parameter meaning, default limit behavior, and the relation to sibling tools like inspect_sketch_constraint, which is needed 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 does not explain any of the four optional input parameters. kinds, max_items, sketch_ref, and document_id are left entirely 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 and resource ('List existing sketch constraints') and names the fields returned (reference, index, fingerprint, owner entity), so an agent can tell this is the summary listing tool. It does not explicitly distinguish itself from list_sketch_dimensions or inspect_sketch_constraint, but the resource and output fields make the purpose 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?
No when-to-use guidance or alternatives are given; the agent must infer from the tool name and siblings. Nothing says to prefer this over list_sketch_dimensions or inspect_sketch_constraint, and there are no exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_sketch_dimensionsB
List existing sketch dimensions with reference, index, fingerprint, and placement fields.
| Name | Required | Description | Default |
|---|---|---|---|
| kinds | No | ||
| max_items | No | ||
| sketch_ref | No | ||
| document_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry this burden. Saying 'List existing' implies a read-only operation, but the description does not disclose significant behavior such as whether max_items truncates results, how the list is ordered, whether all dimensions are returned by default, or any operational limits that could affect an agent's interpretation of the result.
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 with no filler. The verb and resource are front-loaded, and the mention of return fields is compact and immediately useful.
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 optional parameters and no output schema, the description is incomplete. It does not explain how to scope the listing via sketch_ref/document_id, what kinds values look like, or what max_items does. An agent would need to guess or probe the parameters to use the tool correctly beyond a default unfiltered call.
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 only returned fields, not the four parameters (kinds, max_items, sketch_ref, document_id). An agent cannot infer that sketch_ref and document_id likely filter the list, that kinds selects dimension types, or that max_items caps results. The description provides no parameter-level 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 description uses a specific verb ('List'), a clear resource ('sketch dimensions'), and names the return fields ('reference, index, fingerprint, and placement fields'). This makes the tool's purpose clear and distinguishes it from siblings like inspect_sketch_dimension, which implies a single-item inspection rather than a listing 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?
The verb 'List' implies when to use it, but there is no explicit guidance about when to choose this over related siblings such as inspect_sketch_dimension or list_sketch_constraints. No alternatives, exclusions, or preconditions are mentioned, so the guidance is only implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_sketch_entitiesC
List existing sketch entities with reference, index, fingerprint, and geometry selectors.
| Name | Required | Description | Default |
|---|---|---|---|
| kinds | No | ||
| max_items | No | ||
| sketch_ref | No | ||
| document_id | No |
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 implies a read-only operation through the word 'List' but never states non-mutating behavior, result shape, pagination, or how max_items affects output. For a tool with no annotation safety signals, 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 that names the action and resource immediately. It is concise and easy to scan. The jargon in the selector list is a minor clarity issue, but the structure itself is efficient and appropriately sized for a list operation.
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 four parameters, no annotations, no output schema, and zero schema description coverage, the definition is incomplete. It does not explain what entities can be filtered by kinds, how to scope the listing to a sketch or document, or what the response contains besides vague selectors. More context is needed for an agent to invoke it correctly and interpret 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 does not compensate by explaining kinds, max_items, sketch_ref, document_id, or what the selectors are used for. The parameter names are self-evident, but the critical selector terminology is unexplained. Without any schema descriptions, the agent must guess at accepted values and 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 uses a specific verb and resource: 'List existing sketch entities.' It is distinguishable from siblings like inspect_sketch_entity and list_sketches at a high level. However, the phrase 'with reference, index, fingerprint, and geometry selectors' is ambiguous about whether these are output fields or filter inputs, which keeps it from being 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 such as inspect_sketch_entity, list_sketches, or other sketch inspection tools. It does not mention preconditions such as needing a sketch_ref or document_id, nor does it explain how kinds relates to filtering. The agent is left to infer the intended workflow context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_sketchesA
List sketches with their stable sketch_ref values for follow-up entity tools.
| Name | Required | Description | Default |
|---|---|---|---|
| max_items | No | ||
| document_id | No | ||
| name_contains | No | ||
| include_entity_counts | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must carry the behavioral disclosure burden. It does reveal that the returned sketch_ref values are stable and that the call is a read-style listing. It does not disclose pagination behavior, whether a document must be open, or the full result shape, leaving some important behavior unstated.
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 that states the action, the key output (stable sketch_refs), and the downstream purpose with no filler. It is appropriately sized for a simple listing tool and 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?
Although the core purpose is clear, there is no output schema and no parameter semantics, while the sibling set contains many sketch-related tools. The definition does not fully equip an agent to handle filtered calls, to understand limits, or to know what data will be returned beyond sketch_ref.
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 four parameters: max_items, document_id, name_contains, or include_entity_counts. The parameter names and defaults are somewhat self-explanatory, but the description does not compensate for the missing schema-level 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: 'List sketches' with a distinctive output: stable sketch_ref values for follow-up entity tools. This clearly differentiates it from sibling list_sketch_entities, which is the entity-level counterpart. An agent can tell this tool returns sketch-level references rather than entity details.
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 follow-up entity tools' implies the primary use case: obtain sketch references before calling list_sketch_entities or inspect_sketch_entity. However, it never explicitly names alternatives or states when not to use this tool. Usage guidance is implicit rather than directive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_spring_size_catalogsC
List available built-in spring size catalogs.
| Name | Required | Description | Default |
|---|---|---|---|
| catalog_dir | No | ||
| spring_type | No | ||
| include_entries | No |
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 explaining behavior. It communicates that this is a listing operation, but it does not disclose whether catalog_dir points to custom catalogs despite 'built-in', whether availability involves filesystem checks, or what the result set looks like. The ambiguity between 'built-in' and the catalog_dir parameter 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 short, front-loaded with the primary verb and resource, and contains no fluff. It is concise rather than bloated, though the single sentence may be too sparse to carry the needed 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 no annotations, no output schema, and three undocumented optional parameters, the description is not complete enough. An agent cannot tell how filters affect the listing, what the return value contains, or how 'available' catalogs are determined. The core resource is clear, but the operational context needed to call it confidently is 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 adds no meaning for catalog_dir, spring_type, or include_entries. The parameter names and defaults imply optional filters, but the description does not explain what each parameter controls, what values are valid for spring_type, whether catalog_dir overrides the built-in catalogs, or what include_entries=true returns.
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 ('List') and a specific resource ('available built-in spring size catalogs'), which makes the tool's core purpose understandable and distinguishes it from obvious mutation or preview siblings. It could go further by naming the sibling it is not, but the central purpose is 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?
There is no guidance about when to use this tool versus related siblings such as validate_spring_size_catalogs or find_spring_sizes, and no exclusions are stated. The only implied usage is that this lists catalogs, but the agent must infer when that is preferred over alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_thread_catalog_entriesC
List size rows of one thread standard table (d/p/title), with helical-thread-friendly shaping.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| pitch | No | ||
| offset | No | ||
| diameter | No | ||
| standard | Yes | ||
| pitch_max | No | ||
| pitch_min | No | ||
| title_query | No | ||
| diameter_max | No | ||
| diameter_min | No | ||
| database_path | No |
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 itself, but it only offers the cryptic 'helical-thread-friendly shaping'. It does not mention pagination, output format, ordering, filtering effects, or whether the operation is read-only; for an unannotated 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 short and has no padding, which is good, but the phrasing 'size rows' and 'helical-thread-friendly shaping' is jargon-heavy and not self-explanatory. The compactness comes at the cost of clarity.
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 an 11-parameter listing tool with no output schema and no annotation safety profile. The description does not explain what a returned row looks like, how filtering works, how pagination behaves, or when this tool is preferable to closely related thread catalog tools, so it is not complete enough for reliable 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 hints at diameter/pitch/title fields and does not explain the 11 parameters. Nothing clarifies standard, limit, offset, min/max filters, title_query, or database_path 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 names a specific verb ('List') and resource ('one thread standard table') and indicates the returned fields are diameter/pitch/title, which distinguishes it from standard-listing siblings. However, 'size rows' and 'helical-thread-friendly shaping' are ambiguous enough that the core purpose is not fully crisp.
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 siblings like list_thread_catalog_standards, list_helical_thread_v1_candidates, or resolve_thread_catalog_designation. There are no exclusions, alternatives, or context cues beyond the implicit 'this lists entries' meaning.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_thread_catalog_standardsC
List thread standards from KOMPAS thread.db with helical-thread V1 compatibility hints.
| Name | Required | Description | Default |
|---|---|---|---|
| database_path | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of disclosing behavior; it does state the operation is read-only listing and points to a specific source database and compatibility-hint output. However, it does not disclose return shape, pagination/volume, or how database_path affects behavior, leaving some ambiguity for an agent.
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 efficient sentence that front-loads the verb and noun ('List thread standards') and keeps the qualifier short. It is concise, though the terseness contributes to under-specification elsewhere.
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 no annotations, no output schema, zero schema description coverage, and a single unexplained parameter, while the description offers only a one-line summary. Given the large set of thread-related siblings, an agent cannot confidently distinguish or invoke it correctly from this definition 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% and the only parameter, database_path, is not mentioned in the description at all. The description does nothing to explain the default null behavior, the expected format of the path, or when passing it is necessary.
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: it says it 'List[s] thread standards from KOMPAS thread.db' and adds the domain qualifier 'with helical-thread V1 compatibility hints.' This makes the operation fairly clear, though it does not explicitly contrast with nearby siblings like list_thread_catalog_entries or list_helical_thread_v1_candidates.
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 this tool should be selected over the many thread-catalog siblings, such as list_thread_catalog_entries or list_helical_thread_v1_candidates. No prerequisites, exclusions, or alternative conditions are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_v_belt_profilesB
List built-in classical or narrow-wedge V-belt groove profiles.
| Name | Required | Description | Default |
|---|---|---|---|
| request | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden. 'List' clearly implies a read-only operation, and 'built-in' adds that this returns standard catalog data. However, it does not disclose any requirements (e.g., session, document context), return format, or other behavioral traits. The minimal disclosure is adequate for a simple list tool but not comprehensive.
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 worded sentence with no redundancy. It leads with the verb and resource, making it easy to parse. Perfectly concise for what it covers.
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 parameters (family, standard_system) and lack of output schema or annotations, the description is insufficiently complete. It does not explain the effect of the parameters, clarify what 'groove profiles' returns (strings, objects, units), or set expectations about the response. An agent cannot fully anticipate the tool's behavior 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 for the lack of parameter documentation. The description does not mention 'family' or 'standard_system' at all, leaving the agent without any clue about how these parameters filter results. This is a critical gap for effective usage.
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 specific action ('List'), the resource ('built-in classical or narrow-wedge V-belt groove profiles'), and the filtering by family. It immediately distinguishes this from sibling tools like list_poly_v_profiles and resolve_v_belt_profile, making 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?
No guidance is given on when to use this tool versus alternatives. It does not mention that for poly-V profiles one should use list_poly_v_profiles, or that for resolving a specific profile one should use resolve_v_belt_profile. The description leaves the selection entirely to the agent's inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
normalize_operation_resultC
Normalize a primitive operation result, preflight/readback checks, and optional error into one envelope.
| Name | Required | Description | Default |
|---|---|---|---|
| error | No | ||
| stage | No | operation_result | |
| checks | No | ||
| result | No | ||
| artifacts | No | ||
| operation | Yes | ||
| preflight | No | ||
| exception_type | No | ||
| require_result | No | ||
| readback_contract | No |
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. It mentions normalization of result, checks, and error but does not explain side effects, return value shape, failure modes, or whether it mutates inputs. For a tool with no 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, concise sentence with no wasted words. It front-loads the main intent. However, its brevity comes at the cost of essential detail, so it is not ideal, but for structure alone it earns a 4.
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 10 parameters, no annotations, no output schema, and 0% description coverage, the description is woefully incomplete. An agent has no idea what the 'envelope' looks like, how to set required inputs, or what the result means. This is inadequate for a tool of this 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 for parameter meanings. It vaguely references 'result', 'preflight/readback checks', and 'optional error' but does not explain any of the 10 parameters, their relationships, or defaults. The description adds no value beyond the schema's raw 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 states a specific verb ('Normalize') and a clear resource ('a primitive operation result, preflight/readback checks, and optional error'). It conveys the core purpose of combining inputs into a single envelope. However, it does not explicitly differentiate from sibling tools, and terms like 'primitive operation result' and 'envelope' are somewhat vague without further 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, no mention of prerequisites, and no exclusions. The description only defines what it does, not when to invoke it. Sibling tools are numerous, but no relationship or selection criteria are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
open_documentC
Open a KOMPAS document and return a stable document_id.
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | ||
| visible | No | ||
| read_only | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full behavioral burden. It only says 'open' and 'return a stable document_id'. It does not disclose side effects (e.g., becoming the active document, loading into memory), failure modes (e.g., missing path), or permission requirements. The only behavioral hint is 'stable', which is 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 filler. It efficiently communicates the core purpose. However, it is so terse that it omits essential context, though conciseness itself is not the issue.
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 foundational tool with 3 parameters, no output schema, and no annotations. The description does not explain the role of the returned document_id, the meaning of the parameters, or the typical flow (e.g., use the ID with other tools). It is far from 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 for the bare parameter names. It does not mention 'path', 'visible', or 'read_only' at all. An agent cannot infer what these parameters mean or how they affect the open 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 ('Open') and resource ('KOMPAS document') and states an outcome ('return a stable document_id'). It is clear enough to be distinguished from siblings like list_documents or close_document, 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 description gives no guidance on when to use this tool versus other document-related tools such as list_documents, get_document_tree, or preflight_document_context. It does not mention that opening is a prerequisite for downstream operations or any exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
parameterize_sketchC
Apply constraints/dimensions to existing sketch entities selected by reference, index, or fingerprint.
| Name | Required | Description | Default |
|---|---|---|---|
| entities | No | ||
| max_items | No | ||
| dimensions | No | ||
| sketch_ref | No | ||
| constraints | No | ||
| document_id | No | ||
| sketch_options | No | ||
| require_no_changed | No | ||
| require_no_removed | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the full behavioral burden. It indicates a mutation operation but does not disclose side effects, such as whether existing constraints are overwritten, whether entities are modified in place, or if any validation occurs. The selection modes are mentioned but not elaborated.
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-loaded with the primary action. It avoids unnecessary detail and is easily scannable. However, it could benefit from a brief structure highlighting parameters or usage, but it does not waste 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 the complexity (9 parameters, no output schema, no annotations), the description is severely incomplete. It fails to explain how to specify entities, dimensions, or constraints, what the selection modes mean, or what the tool returns. An agent has insufficient information to call this 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 does not explain any of the 9 parameters. Parameters like entities, dimensions, constraints, and sketch_ref remain opaque. The description only mentions selection by reference/index/fingerprint, but does not map these to specific parameters, leaving agents with no 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 clearly states the tool's purpose: applying constraints/dimensions to existing sketch entities. It specifies the selection modes (reference, index, fingerprint) which adds specificity. However, it does not differentiate from sibling tools like set_sketch_entity_style or update_sketch_entity_geometry, but the purpose is distinct 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. There is no mention of prerequisites, such as needing an active sketch, or when constraints should be applied instead of dimensions. The description is purely declarative and offers no contextual direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
preflight_document_contextC
Check KOMPAS session/document readiness before running a low-level operation.
| Name | Required | Description | Default |
|---|---|---|---|
| min_items | No | ||
| document_id | No | ||
| require_tree | No | ||
| require_items | No | ||
| min_tree_nodes | No | ||
| expected_extensions | No | ||
| expected_document_type | No | ||
| require_active_document | No |
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 'check readiness' with no mention of side effects, permissions, failure behavior, or what happens if checks fail. For a tool that presumably validates preconditions, this is a significant gap; an agent cannot anticipate the outcome or 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, concise sentence that states the core purpose. It is front-loaded and wastes no words. However, given the parameter complexity and lack of schema coverage, the brevity borders on under-specification rather than efficient 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?
The tool has 8 parameters, no output schema, and no parameter descriptions. The description provides no context on what readiness conditions are checked, what the return value looks like, or how results map to parameters. It is entirely inadequate for an agent to correctly invoke and interpret 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?
Schema description coverage is 0% and the description does not explain any of the 8 parameters (e.g., min_items, require_tree, expected_extensions). The names give hints but not semantics—what counts as an 'item', what 'tree' refers to, how expected_extensions is matched. With zero coverage, the description must compensate but offers nothing.
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) on a specific resource (KOMPAS session/document readiness) and a purpose (before running a low-level operation). It is clear but somewhat vague about what 'readiness' entails. It does not explicitly distinguish itself from similar check tools like smoke_check_session or get_session_state, but the name and 'preflight' imply a pre-operation gate.
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 some usage context ('before running a low-level operation') but does not mention alternatives or exclusions. With many sibling tools that also check state (smoke_check_session, get_active_document_state), there is no guidance on when to choose this one over them. The condition is implied but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
preview_changesetC
Build a safe preview of name and designation changes.
| Name | Required | Description | Default |
|---|---|---|---|
| rules_path | No | ||
| document_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the behavioral burden. 'Safe preview' suggests a non-mutating operation, but there is no statement about whether the document/state is modified, what side effects occur, whether a document must be open, or what the preview consists of.
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 omits parameter relationship, output, and routing context, so it is concise more because of sparsity than because every necessary piece is present.
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 output schema, no annotations, 0% schema coverage, and a large sibling set of preview/apply/analyze tools, the description is not complete enough for an agent to know what the preview returns, when it applies, or how it differs from alternatives.
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 rules_path or document_id. It does not explain what rules are used, what document is affected, or how the parameters relate to the name/designation changes.
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 ('Build') and names the resource ('a safe preview of name and designation changes'), so the high-level purpose is readable. However, 'name and designation changes' is not tied to the actual inputs (rules_path/document_id) and does not differentiate this from sibling preview/apply/analyze 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 apply_changeset, analyze_naming_issues, or preview_property_changes. 'Preview' implies it should precede application of changes, but this is left entirely to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
preview_compression_springC
Preview a compression spring scenario without creating a KOMPAS document.
| Name | Required | Description | Default |
|---|---|---|---|
| params | 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 of behavioral disclosure. It does convey a key trait: no KOMPAS document is created. However, it does not disclose whether the preview has other side effects, what it returns, or what inputs it expects.
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 the key non-creation behavior is front-loaded. It is appropriately terse, though the vagueness of 'scenario' keeps it from being maximally effective.
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, no output schema, and a completely unspecified params object, the description is not enough for an agent to invoke the tool correctly. The only useful context is the non-destructive preview intent; parameter structure and expected behavior are entirely 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?
The schema has one generic 'params' object with additionalProperties true and 0% description coverage, so the description must compensate. It does not: the description says nothing about what parameters the compression spring scenario needs, such as dimensions, material, or load. An agent cannot construct a valid argument from this information.
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 ('Preview') and resource ('a compression spring scenario'), and explicitly states it does not create a KOMPAS document, which partially distinguishes it from create_compression_spring. However, 'scenario' is somewhat vague and it does not differentiate from other preview tools like preview_spring_from_size.
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 'without creating a KOMPAS document' implies this is for non-destructive previews rather than creation, giving some usage context. But no alternatives are named and there is no explicit guidance about when to choose this tool over related preview or creation tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
preview_file_relink_map_pathsC
Preview relinks for a file assembly from an explicit mapping file.
| Name | Required | Description | Default |
|---|---|---|---|
| mapping_path | Yes | ||
| assembly_path | 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 states the tool 'previews' relinks, implying a non-destructive read-only operation, but it does not disclose whether any changes are made, whether the mapping file is validated, what happens if the mapping is incomplete, or what the output format is. For a tool with no annotations, 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 that front-loads the core action ('Preview relinks') and the key qualifier ('from an explicit mapping file'). It is efficient and easy to parse, though it could add a bit more detail 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?
Given the tool has no annotations, no output schema, and 0% schema description coverage, the description is too thin. An agent cannot tell what the preview output looks like, whether the operation is safe, or how the mapping file should be structured. The sibling list shows many similar relink tools, so more context is needed to disambiguate and use this 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%, so the description must compensate. It mentions 'mapping file' and 'file assembly' which loosely map to mapping_path and assembly_path, but it does not explain the expected format of the mapping file, what 'assembly path' refers to, or how the two parameters relate. The description adds minimal meaning beyond the 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 ('Preview'), a resource ('relinks for a file assembly'), and the source of the mapping ('from an explicit mapping file'). This distinguishes it from generic relink tools, though it doesn't explicitly name a sibling alternative. The phrase 'file assembly' and 'explicit mapping file' add useful specificity.
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 context: use this when you have an explicit mapping file and want to preview relinks for a file assembly. However, it does not explicitly state when to use this tool versus alternatives like preview_relink_paths, preview_file_relink_paths, or build_relink_map_plan. The sibling list contains many similar relink tools, so 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.
preview_file_relink_pathsC
Preview persistent relinks by reading the Sources entry of an assembly file directly.
| Name | Required | Description | Default |
|---|---|---|---|
| relink_all | No | ||
| search_root | Yes | ||
| assembly_path | 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 disclosure burden. It implies a non-destructive read operation ('Preview', 'reading'), but says nothing about side effects, required permissions/access, return format, or failure behavior. The core read-only trait is conveyed only by implication, not explicit statement.
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 no wasted words, and the primary action is front-loaded. It is appropriately sized for what it does say.
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 output schema and no annotations, operating in a dense cluster of similarly named relink tools, this description is inadequate. It lacks parameter semantics, discriminator information against near-identical siblings, and behavioral details that an agent needs 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%, so the description must compensate by explaining the parameters. It does not address assembly_path, search_root, or relink_all at all. The parameter names are self-explanatory enough to salvage a score above 1, but the description contributes zero semantic value 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 states a clear verb+resource ('Preview persistent relinks') and grounds the mechanism ('reading the Sources entry of an assembly file directly'). However, it does not differentiate from very similar siblings such as preview_file_relink_map_paths, preview_relink_paths, and preview_relink_map_paths, all of which appear to serve overlapping purposes. The distinction is only implicit, requiring the agent to infer what separates this from the others.
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, no exclusions, and no reference to any alternative tool. Given the large cluster of relink preview/build tools in the sibling list, the agent receives zero help deciding whether this tool or a sibling is appropriate for a given task.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
preview_flat_belt_pulleyC
Preview a cylindrical or explicitly crowned flat-belt pulley rim.
| Name | Required | Description | Default |
|---|---|---|---|
| request | 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. 'Preview' implies a non-destructive operation, but it does not state what the preview returns, whether it requires an active document, whether it creates temporary geometry, or any side effects. The behavior is under-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, focused sentence with no filler. It is concise, but the brevity comes at the cost of essential detail (e.g., no usage guidance, no behavioral notes). It earns a passing score for efficiency but not for 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 preview tool with no output schema and no annotations, the description is insufficient. It does not describe the expected return value, whether the operation is read-only, or any preconditions (e.g., open document, existing geometry). An agent would have to guess at invocation expectations.
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% (though crown_height has a schema description, the signal states 0%). The description does not explain any of the parameters beyond what the schema already states. For a tool with three parameters and no param-level descriptions, the description should compensate, but it adds nothing about face_width or outer_diameter 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 clearly states the verb 'Preview' and the resource 'flat-belt pulley rim', and adds the key distinction of cylindrical vs crowned geometry. It does not explicitly contrast with sibling preview tools like preview_timing_belt_pulley or preview_poly_v_groove, but the resource is specific enough to identify its domain.
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 use this tool versus alternatives. There are sibling preview tools for other belt types (timing, V-belt, poly-V), but the description gives no conditions for selecting this one. It only describes what the tool does, not when to prefer it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
preview_part_scenarioB
Preview a parametric part scenario without creating a KOMPAS document.
| Name | Required | Description | Default |
|---|---|---|---|
| params | Yes | ||
| scenario | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden of behavioral disclosure. It does disclose one meaningful behavior: no KOMPAS document is created, implying a non-mutating preview operation. However, it does not explain whether the preview returns data, requires an active session, or has any other side effects, leaving the behavioral picture incomplete.
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 meaning, and the most important distinction, no document creation, is placed immediately after the verb.
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 two required parameters, no output schema, and no annotations, yet the description only clarifies purpose. It omits what 'scenario' and 'params' mean, what the preview output looks like, and any operational context needed to 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?
The schema has 0% description coverage and the description mentions neither parameter. Both 'scenario' and 'params' are generic names, and 'params' is an open nested object, so an agent has no way to know what values are expected or how parameters should be structured.
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 ('Preview'), names the resource ('parametric part scenario'), and adds the key boundary 'without creating a KOMPAS document.' This clearly distinguishes the tool from siblings like create_part_from_scenario and other preview/create tool pairs.
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 'without creating a KOMPAS document' implies this is for side-effect-free preview work, and the sibling list contains create_part_from_scenario as the likely alternative. However, it never explicitly states when to choose this tool over that alternative, nor does it mention any preconditions or exclusions, so guidance is implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
preview_poly_v_grooveB
Preview a rounded Poly-V pulley groove set without hubs, bores, or COM.
| Name | Required | Description | Default |
|---|---|---|---|
| request | 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. It discloses that the preview excludes hubs, bores, and COM, which is useful, but it does not state whether the operation is read-only, what the output looks like, or any side effects. For a preview tool, the lack of behavioral clarity 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 sentence with no filler. It front-loads the verb and resource, then adds the key exclusions. Every word earns its place, and it is appropriately sized for 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?
There is no output schema, no annotations, and the description is minimal. Given the domain complexity (poly-V pulleys) and the large set of sibling tools, the description does not provide enough context about return values, safety, or how it fits into the broader workflow. An agent would struggle to know what to expect from calling 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?
Schema description coverage is 0%, meaning the description does not explain any parameters. The schema itself has clear field names and an enum for designation, but the description adds no semantic meaning beyond what the field names imply, such as units for effective_diameter or the purpose of groove_count.
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 ('Preview') and a precise resource ('rounded Poly-V pulley groove set') and explicitly lists exclusions (hubs, bores, COM). This clearly distinguishes it from apply tools (apply_poly_v_grooves) and other preview tools like preview_v_belt_groove, leaving no ambiguity about the tool's scope.
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 for previewing poly-V grooves, but it does not explicitly state when to use this versus alternatives like preview_v_belt_groove or apply_poly_v_grooves. There is no mention of conditions, prerequisites, or why one would choose this tool over others.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
preview_property_changesC
Preview direct property edits for writable item fields.
| Name | Required | Description | Default |
|---|---|---|---|
| updates | Yes | ||
| document_id | No |
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 implies a non-mutating preview but does not explicitly state that no changes are applied, how writability is determined, or what the preview result 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 filler or repetition. It is appropriately concise, though it is terse enough that it leaves critical parameter details unexplained.
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, no output schema, and no parameter descriptions, the tool definition is incomplete for safe or correct invocation. It does not explain the updates array item format, the document_id semantics, or the preview behavior, so an agent would likely need external knowledge.
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 clarify the structure of each object in 'updates' or the role of 'document_id'. 'Writable item fields' gives some context, but not enough to construct valid update objects.
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, 'Preview', and a specific resource, 'direct property edits for writable item fields'. It distinguishes the tool from apply/set siblings by its preview nature, though 'item fields' is somewhat ambiguous and 'preview_changeset' is also a preview 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 set_item_properties, preview_changeset, or apply_changeset. No conditions, exclusions, or alternatives are provided; the only usage signal is the verb 'Preview'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
preview_relink_map_pathsC
Preview relinks from an explicit old->new mapping file, useful when files were also renamed.
| Name | Required | Description | Default |
|---|---|---|---|
| document_id | No | ||
| mapping_path | No |
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 implies a non-destructive 'preview' action but does not explicitly state that no changes are applied, what the output format is, or any side effects. It also doesn't mention error conditions or prerequisites like file access requirements. This is a significant gap for a 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 a single, compact sentence with no filler. It front-loads the core action and includes a useful context cue. However, it is concise to the point of under-specification, but that is a completeness issue rather than a structure issue, so conciseness itself is well-executed.
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 output schema, no annotations, and only 2 parameters, the description must carry substantial context. It fails to explain the tool's behavior, return values, or how it differs from the many sibling relink tools. An agent cannot confidently decide when to use it or how to invoke it correctly. This is critically 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 explain either parameter. It mentions 'mapping file' which likely maps to mapping_path, but document_id is completely unexplained. An agent cannot determine what values to pass or how they affect behavior, making the tool nearly unusable without external knowledge.
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 purpose: 'Preview relinks from an explicit old->new mapping file'. It also adds a contextual note ('useful when files were also renamed') that helps distinguish it from other preview relink tools, though it doesn't name alternatives. It is specific about the resource and 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?
The description provides only a weak usage hint ('useful when files were also renamed') but does not explicitly state when to use this tool versus the many sibling relink/preview tools. No exclusions or alternatives are named, leaving the agent to infer the selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
preview_relink_pathsC
Find candidate component path updates by searching for matching filenames under a new root.
| Name | Required | Description | Default |
|---|---|---|---|
| relink_all | No | ||
| document_id | No | ||
| search_root | No |
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 does convey that the tool 'finds' candidates, implying a read-only search operation, and the word 'candidate' suggests no changes are applied. However, it does not explicitly state that nothing is modified, what inputs affect behavior (e.g., whether a document must be open), or what the output looks like, leaving significant room for 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 a single focused sentence with no filler or repetition. It front-loads the core purpose and method, and every word contributes 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?
Given a 3-parameter tool with 0% schema description coverage, no output schema, and no annotations, the description is far too sparse. It omits return value expectations, side effects, differences from the many sibling relink tools, and the roles of relink_all and document_id. An agent cannot reliably invoke this tool correctly based solely on 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%, so the description must compensate for the three parameters. It only partially explains search_root via 'searching ... under a new root,' but gives no meaningful guidance for relink_all or document_id. An agent cannot infer what these parameters control or how they should be set 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 action ('Find candidate component path updates') and a method ('searching for matching filenames under a new root'), which clearly identifies the tool's function. However, it does not differentiate from closely named siblings like preview_relink_map_paths or preview_file_relink_paths, so an agent must infer which specific variant this is.
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: use when you need to preview candidate component path updates based on filename matching. But it provides no explicit when-to-use or when-not-to-use guidance, nor any mention of alternatives, despite a large family of relink-related siblings. An agent is left to guess which preview/build/apply tool fits a given workflow.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
preview_section_by_surface_operationC
Preview a low-level section-by-surface operation payload.
| Name | Required | Description | Default |
|---|---|---|---|
| role | No | ||
| keep_side | No | positive | |
| target_ref | Yes | ||
| normal_direction | No | axis_positive | |
| offset_expression | No | ||
| surface_reference | 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. 'Preview' implies a non-mutating inspection, but the description does not disclose the return shape, whether inputs are validated, or what the agent should do with the resulting payload. With no output schema, this leaves behavior opaque.
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 concise, front-loaded sentence with no wasted words. But for a six-parameter tool with no annotations, this is under-specification rather than appropriate concision; additional details would clearly earn their 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?
This is a six-parameter operation with two required parameters, no annotations, and no output schema. The description omits operation semantics, input formats, valid values, and expected output, making the tool not safely or reliably invocable by 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%, and all six parameters (target_ref, surface_reference, keep_side, normal_direction, offset_expression, role) are undocumented. The description provides no meaning for any parameter, so an agent must guess what values are valid and how they relate to 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 names a clear action ('Preview') and a specific resource ('low-level section-by-surface operation payload'), which distinguishes it from the many preview_* siblings. However, it never defines what 'section-by-surface' means or what the payload looks like, so it is clear at a surface level but not fully self-contained.
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 preview_changeset, preview_specification_generation, or other preview_* tools. The word 'low-level' hints at positioning, but no conditions, prerequisites, or exclusions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
preview_specification_autofillC
Build a safe preview of filling or syncing specification rows from the model tree.
| Name | Required | Description | Default |
|---|---|---|---|
| fields | No | ||
| fill_only | No | ||
| document_id | No | ||
| layout_name | No | ||
| max_objects | No | ||
| include_root | No | ||
| description_index | No |
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. 'Safe preview' weakly suggests non-destructiveness, but it does not state whether the tool modifies anything, whether it requires an open document, what side effects it may trigger, or what the preview result looks like. The safety claim is too vague to be actionable.
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 or repetition. It loses a point because the phrasing is somewhat awkward and telegraphic, but overall it is efficiently 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?
This is a seven-parameter tool with zero schema coverage, no annotations, and no output schema, so the description needed to provide substantial context. It only gives a high-level preview notion and leaves out parameter semantics, return value, safety guarantees, and relation to the many sibling tools. It is far from 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 for seven undocumented parameters. It does not explain `fields`, `fill_only`, `document_id`, `layout_name`, `max_objects`, `include_root`, or `description_index`. An agent has no semantic grounding for any parameter.
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 ('preview'), a resource ('specification autofill'), and the data source ('model tree'), which is enough to distinguish it from the sibling `apply_specification_autofill`. However, 'filling or syncing' is somewhat ambiguous about what the preview actually shows or computes.
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 'safe preview' implies that this should be used before applying changes, but it never explicitly says when to use this tool versus `apply_specification_autofill` or `refresh_specification_from_model`. No exclusions, prerequisites, or alternatives are named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
preview_specification_changesC
Preview edits for existing specification rows by object_id and standard fields.
| Name | Required | Description | Default |
|---|---|---|---|
| updates | Yes | ||
| document_id | No | ||
| layout_name | No | ||
| max_objects | No | ||
| description_index | No |
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. The verb 'preview' reasonably implies a non-mutating dry-run, which offers some transparency. However, the description does not disclose what the preview returns (diff, report, validation result), whether it is side-effect free, or whether it requires an existing row to match. These gaps lower the score.
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 that immediately states the verb, resource, and key scoping terms. There is no filler. It is slightly spare but appropriately sized; it could be structured to enumerate parameters, yet it earns credit for efficiency.
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 5-parameter tool with no output schema, no annotations, and 0% schema description coverage. Given siblings like apply_specification_changes and preview_specification_generation, the description leaves out workflow context, the meaning of 'standard fields', the updates structure, and the preview result format. It is far from complete for safe, 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 by explaining the parameters. It loosely references 'object_id and standard fields' which maps onto the 'updates' array, but it never explains the structure of updates items, what object_id refers to, what 'standard fields' are, or the roles of document_id, layout_name, max_objects, and description_index. For a tool with five parameters and zero schema descriptions, this is a substantial 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?
The description names a specific verb ('Preview'), resource ('specification rows'), and scope ('existing ... by object_id and standard fields'). This distinguishes it from siblings like apply_specification_changes (which applies rather than previews) and preview_specification_generation (which targets new rows rather than existing ones). The term 'standard fields' is slightly vague, so it doesn't quite reach 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 gives no guidance on when to use this tool versus closely related siblings such as apply_specification_changes, preview_specification_generation, preview_specification_autofill, or get_specification. It provides no context about the intended pre-apply workflow or any exclusions. Without this, an agent cannot easily decide between preview and apply tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
preview_specification_generationC
Build a practical specification preview from the assembly tree.
| Name | Required | Description | Default |
|---|---|---|---|
| document_id | No | ||
| include_root | No |
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. 'Build a practical specification preview' implies a read-only preview operation, but it does not state whether this mutates anything, whether it requires an open document, what 'practical' means, or what the preview contains. The description adds minimal behavioral context beyond the name.
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 filler words. It is front-loaded with the verb and resource. However, it is so terse that it sacrifices useful information 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 tool with two parameters, no annotations, no output schema, and 0% schema description coverage, the description is incomplete. It does not explain what the preview is for, how it relates to the assembly tree, what the parameters do, or what the agent should do with the result. The sibling context shows many similar preview tools, so more context 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 for the two parameters (document_id, include_root), but it does not mention either parameter. The description gives no hint about what document_id refers to or what include_root controls, leaving the agent to infer 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 ('Build') and resource ('specification preview from the assembly tree'), which is clear enough to distinguish it from generic tools. However, it does not differentiate it from closely related siblings like preview_specification_changes, preview_specification_autofill, or preview_spw_generation, so an agent may struggle to pick the right one without opening 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?
No guidance is provided on when to use this tool versus alternatives. The sibling list includes several preview_* tools (preview_specification_changes, preview_specification_autofill, preview_spw_generation), and the description gives no conditions, exclusions, or context to route the agent to this specific tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
preview_spring_from_sizeC
Preview a supported spring from one resolved catalog entry.
| Name | Required | Description | Default |
|---|---|---|---|
| entry_id | Yes | ||
| overrides | No | ||
| catalog_id | Yes | ||
| catalog_dir | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of disclosing behavior. 'Preview' communicates that the operation is non-mutating, but nothing is said about what the preview returns, whether it validates the entry, what 'supported' means, or what side effects (if any) it has.
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 appropriately short, though the terminology ('supported', 'resolved') is not anchored by any additional structure.
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 4-parameter tool with no output schema and no annotations, this description is insufficient: it lacks return value details, preconditions, alternatives, parameter semantics, and error behavior. An agent has to guess what 'preview' produces and whether required inputs are the catalog/entry IDs 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 by explaining parameter meanings, but it mentions none of the four parameters. catalog_id, entry_id, overrides, and catalog_dir are left undocumented at the semantic level, and 'one resolved catalog entry' only weakly implies entry_id.
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 clear verb ('Preview') and identifies the resource ('a supported spring from one resolved catalog entry'), so an agent can tell this is a preview operation rather than a creation or resolution one. However, 'supported spring' and 'resolved catalog entry' are unexplained jargon, and it does not explicitly set the tool apart from sibling preview/create tools such as preview_compression_spring or create_spring_from_size.
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 explicit guidance on when to use this tool versus alternatives, no exclusions, and no named siblings. The phrase 'from one resolved catalog entry' implies a prerequisite resolution step, but the description leaves the timing and selection criteria to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
preview_spw_generationB
Build a preview for a separate .spw specification document from the assembly tree.
columns maps row fields to .spw columns: field, column_type, block_number, column_number, skip_unit_value. column_preset can be default/base or engineering_comment_columns. Engineering fields require explicit opt-in.
| Name | Required | Description | Default |
|---|---|---|---|
| columns | No | ||
| document_id | No | ||
| include_root | No | ||
| column_preset | No | ||
| include_engineering | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description reveals that engineering fields require explicit opt-in and specifies allowed values for column_preset, which goes beyond the schema. However, it does not disclose whether the operation is read-only, what side effects exist, or any safety profile. With no annotations, the description carries the burden but only partially covers 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 compact, with a clear opening sentence stating purpose, followed by a focused paragraph on parameter details. No unnecessary words. It is front-loaded with the primary action and then provides essential mapping 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?
With 5 parameters, no annotations, and 0% schema coverage, the description is the sole source of information. It explains some parameters but omits document_id and include_root, does not describe the return value, and gives no usage context relative to siblings. An agent would need to infer too much 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%, so the description must explain parameters. It details the structure of 'columns' (field, column_type, block_number, column_number, skip_unit_value) and the valid values for 'column_preset'. It implies 'include_engineering' via the opt-in note but leaves 'document_id' and 'include_root' unexplained. Partial compensation 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 clearly states it builds a preview for a separate .spw specification document from the assembly tree, which is a specific verb-resource pair. It distinguishes the tool by using 'separate .spw', hinting at a distinct use case from other specification preview tools, though it does not explicitly name sibling 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 explicit guidance on when to use this tool versus the many similar preview tools (e.g., preview_specification_generation). The term 'separate .spw' implies a scenario but does not state conditions or exclusions. There is no mention of alternatives or when this tool is preferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
preview_timing_belt_pulleyA
Preview an end-view synchronous-belt pulley tooth profile; no CAD write.
| Name | Required | Description | Default |
|---|---|---|---|
| request | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral disclosure burden, and 'no CAD write' is a clear disclosure of the operation's non-mutating behavior — the main safety-relevant trait for a preview tool. It does not disclose output format or prerequisites, but the core behavioral contract is explicit.
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 with no wasted words; the core action and scope are front-loaded and the safety qualifier follows immediately. Every element 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?
Despite a 10-property nested schema, no output schema, and no annotations, the description covers only the operation and write-safety. The agent still lacks return-type information, unit conventions (e.g., face_width units), validation behavior, and guidance for CUSTOM geometry parameters, making the definition incomplete for reliable 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 names no parameters, so it does not compensate for undocumented nested fields such as custom_shape, custom_groove_depth, or custom_pitch_line_offset. Property names, defaults, and constraints in the schema provide some meaning, but the custom-parameter interactions (e.g., when designation='CUSTOM') are left 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 names a specific verb ('Preview'), a specific resource ('end-view synchronous-belt pulley tooth profile'), and a boundary ('no CAD write'). This makes it distinguishable from write/create tools and from sibling preview tools like preview_flat_belt_pulley or preview_v_belt_groove without needing to open 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 'Preview' and 'no CAD write' phrases imply the tool is for non-destructive inspection, but the description never explicitly states when to choose it over sibling preview tools or when not to use it. An agent can infer usage from the name and sibling set, but the guidance is not spelled out.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
preview_v_belt_grooveB
Preview functional V-groove cut geometry without hubs, bores, or COM.
| Name | Required | Description | Default |
|---|---|---|---|
| request | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description must carry the behavioral disclosure burden. It conveys that the tool is a non-destructive preview and specifies exclusions, but it does not disclose any side effects, prerequisites (e.g., active document), or the nature of the returned preview. Thus, beyond the word 'Preview' and the exclusion list, behavioral transparency is 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?
A single, front-loaded sentence that states the action, resource, and scope without filler. Every word contributes to communicating the core purpose, making it appropriately concise.
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 with a deeply nested request schema, no annotations, and no output schema, yet the description is only one sentence. It ignores required inputs like designation and datum_diameter, does not explain the meaning of 'functional' in this context, and provides no information about the preview result/format. The exclusions add some context, but the definition is far from complete for reliable 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 never mentions the single 'request' parameter or its required fields. The exclusion of hubs/bores/COM provides a small clue about what parameters are absent, but the description does not explain how to populate the request object beyond what the schema's field titles already show.
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 'Preview' and names the resource 'functional V-groove cut geometry', and further qualifies the scope with 'without hubs, bores, or COM.' This clearly distinguishes it from a full pulley preview, though the description alone does not explicitly distinguish from the sibling preview_poly_v_groove; the tool name carries 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?
The phrase 'without hubs, bores, or COM' implies the tool is for a groove-only preview, suggesting the agent should use it when full pulley features are not needed. However, there is no explicit 'use X instead' or criteria for choosing among the many sibling preview tools (preview_timing_belt_pulley, preview_flat_belt_pulley, preview_poly_v_groove), leaving usage guidance implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
probe_document_readbackC
Collect a low-level COM readback manifest for an opened file or active document.
| Name | Required | Description | Default |
|---|---|---|---|
| visible | No | ||
| read_only | No | ||
| model_path | No | ||
| document_id | No | ||
| output_path | No | ||
| close_after_probe | No |
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 the action ('Collect a low-level COM readback manifest') without any details on side effects, permissions, whether the operation is read-only, what happens if no document is open, or what the manifest contains. The description is a tautological restatement of the purpose, adding no behavioral context beyond the name.
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, which is concise and front-loaded with the action. However, it is so sparse that it under-specifies the tool's behavior, and the conciseness comes at the cost of essential detail. The sentence earns its place but does not go far enough to be considered well-structured for an agent's decision-making.
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, no output schema, and no annotations, the description is drastically incomplete. It does not explain what a 'readback manifest' is, what the output format is, how the parameters affect the operation, or any error conditions. An agent cannot confidently invoke this tool without guessing about parameter usage and expected outcomes.
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% — the description makes no mention of any of the six parameters (visible, read_only, model_path, document_id, output_path, close_after_probe). Since the schema has no descriptions for these properties either, the agent has no explanation of their purpose or how they interrelate. The description fails to compensate for the low coverage, leaving parameter semantics entirely 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 states a specific action ('Collect') and a specific resource ('low-level COM readback manifest'), and it targets 'an opened file or active document.' This clearly indicates the tool's purpose and distinguishes it from siblings like verify_document_readback_stability, which focus on stability verification rather than manifest collection. However, it does not explicitly name alternatives or contrast with them, and the nature of a 'readback manifest' remains 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?
The description provides no guidance on when to use this tool versus alternatives. It does not mention prerequisites (e.g., needing an opened document), conditions for selection, or any exclusions. There is no mention of alternative tools or scenarios where this would be preferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
probe_model_formulasC
Probe formula-bearing sketch dimensions, constraints, and feature variables.
| Name | Required | Description | Default |
|---|---|---|---|
| visible | No | ||
| read_only | No | ||
| model_path | No | ||
| document_id | No | ||
| output_path | No | ||
| close_after_probe | No | ||
| include_contents_fallback | No |
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. It only says 'probe' without stating whether the tool is read-only, whether it opens/closes documents, what it returns, or any potential side effects. Parameter names like close_after_probe hint at document handling, but the description does not clarify.
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 filler. It front-loads the core purpose. However, it is too sparse to be considered well-structured for a complex 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 7 optional parameters, no output schema, no annotations, and a specialized domain (probing formulas in CAD models), the description is severely incomplete. It does not explain the probing workflow, output format, or when to use it, making it inadequate for an agent to invoke 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 by explaining parameters. It does not mention any of the seven parameters (visible, read_only, model_path, document_id, output_path, close_after_probe, include_contents_fallback), leaving their purpose entirely to name inference. This is a critical gap for a tool with no 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 specific action (probe) on a specific resource (formula-bearing sketch dimensions, constraints, and feature variables). This distinguishes it from siblings like list_sketch_dimensions or inspect_feature. However, 'probe' is vague about whether it returns formulas or just checks for their presence, so it isn't fully precise.
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 tools like inspect_sketch_dimension or inspect_feature. There is no mention of alternatives, prerequisites, or exclusions, leaving an agent to guess the selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
probe_model_object_collectionsC
Probe known sketch/feature collections exposed by the selected or active 3D document.
| Name | Required | Description | Default |
|---|---|---|---|
| max_items | No | ||
| document_id | No | ||
| include_empty | No |
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 does not state whether the operation is read-only, what side effects might occur, how document selection is resolved, or what the response structure looks like. 'Probe' hints at inspection but is not explicit enough.
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, which is good, but it is under-specified. It earns its place for purpose clarity yet omits behavioral and parameter details that are needed for correct invocation, so it is concise but not appropriately 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?
Given three optional parameters, no annotations, and no output schema, the description is too sparse. An agent cannot infer what max_items or include_empty do, what 'probe' returns, or how document_id interacts with the selected document. The description provides only a high-level hint rather than a complete picture.
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 of the three parameters (max_items, document_id, include_empty). Values like include_empty and document_id have no semantic explanation beyond their names and defaults, and the description makes no effort to compensate for the missing 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 identifies a specific verb ('Probe') and a clear resource ('known sketch/feature collections exposed by the selected or active 3D document'). It is distinguishable from sibling tools like list_sketch_entities or list_features because it targets collections rather than individual entities, though 'probe' still leaves some ambiguity about the exact 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 about when to use this tool compared to alternatives such as get_document_tree, list_features, or list_sketches. The description does not state conditions, exclusions, or prerequisites, so an agent receives no routing help.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recommend_spring_sizesC
Recommend nearest spring catalog entries for target dimensions.
| Name | Required | Description | Default |
|---|---|---|---|
| tag | No | ||
| limit | No | ||
| end_type | No | ||
| hook_type | No | ||
| catalog_id | No | ||
| load_class | No | ||
| catalog_dir | No | ||
| spring_type | No | ||
| target_pitch | No | ||
| target_turns | No | ||
| target_height | No | ||
| target_length | No | ||
| target_leg_length | No | ||
| target_wire_diameter | No | ||
| target_outer_diameter | No | ||
| target_standard_length | No |
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 results are 'nearest' recommendations, leaving unclear whether the call is read-only, requires an active document, how similarity is computed, or what the response shape is.
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 compact and front-loaded, with no filler. However, it is under-specified for a 16-parameter tool; the structure provides no parameter grouping, examples, or any roadmap for how to pass targets and filters.
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, no output schema, and a high parameter count, this description is far from complete. It omits return value expectations, parameter combinations, behavior relative to catalogs, and any relationship to sibling spring 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%, and the description names no individual parameters. With 16 optional parameters, an agent cannot determine which target_* dimensions are required or compatible, how filters like tag, catalog_id, or end_type behave, or how limit affects results.
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 ('Recommend'), a resource ('nearest spring catalog entries'), and an input concept ('target dimensions'), so the core purpose is clear. However, it does not explicitly differentiate itself from sibling tools like find_spring_sizes or resolve_spring_size, which an agent might reasonably confuse it with.
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 target dimensions' implies the tool is meant for dimensional lookup or recommendation, providing a weak usage context. It does not explicitly say when to use this tool over alternatives such as find_spring_sizes or resolve_spring_size, nor does it state any exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
refresh_specification_from_modelC
Recreate the active specification from the model and then apply safe autofill for supported fields.
| Name | Required | Description | Default |
|---|---|---|---|
| save | No | ||
| fields | No | ||
| style_id | No | ||
| fill_only | No | ||
| document_id | No | ||
| layout_name | No | ||
| max_objects | No | ||
| include_root | No | ||
| close_after_save | No | ||
| replace_existing | No | ||
| specification_name | No |
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 reveals a two-step sequence (recreate, then autofill) and mentions 'safe' autofill, but it does not explain whether the operation overwrites the active specification, whether it is destructive, whether it saves, or what happens to unsupported fields.
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 clean sentence with no filler, and the main action is front-loaded. It loses a point only because it omits enough detail to fully stand alone for a complex operation.
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 11 parameters, no annotations, and no output schema, this description is far too thin. It leaves unanswered critical context: what 'active specification' means, what 'safe autofill' does, which fields are affected, whether saving is implicit, and what side effects occur.
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 there are 11 parameters, none of which are explained in the description. The phrase 'supported fields' is the only nod to parameters, but it does not clarify save, fill_only, replace_existing, specification_name, or any other parameter's 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 states a clear verb ('recreate') and resource ('active specification from the model'), plus a follow-up action ('apply safe autofill'). This conveys what the tool does, though it does not explicitly distinguish it from related siblings like apply_specification_autofill or create_specification.
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, nor are prerequisites or exclusions mentioned. The description implies a refresh scenario, but an agent cannot tell if this is the right choice compared to preview_specification_changes or apply_specification_autofill.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
relink_file_from_map_to_outputC
Apply relinks from an explicit mapping file to a copied assembly through KOMPAS itself.
| Name | Required | Description | Default |
|---|---|---|---|
| output_path | Yes | ||
| mapping_path | Yes | ||
| assembly_path | 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. It adds one behavioral detail: the operation happens 'through KOMPAS itself,' implying a real application operation. But it does not disclose side effects, file modifications, prerequisites, whether the assembly is saved, or what happens to the output path.
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, direct sentence with no filler words. It is efficient and readable, though it is compact to the point of under-specification, so it does not fully earn a 5.
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 mutation tool with three required path parameters, no annotations, no output schema, zero schema descriptions, and many closely related sibling tools, a one-sentence description is inadequate. An agent cannot reliably determine what assembly_path and output_path should be, what distinct role this tool plays, or what response 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%, so the description must compensate. It gives meaning to mapping_path via 'mapping file' and loosely suggests a destination via 'copied assembly,' but it leaves assembly_path and output_path ambiguous and does not clarify their relationship or expected formats.
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 ('Apply relinks'), a resource ('a copied assembly'), and a source ('an explicit mapping file'), so an agent can tell what the tool operates on. It does not explicitly differentiate it from the many sibling relink tools, 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 implies when to use the tool: when relinks come from an explicit mapping file and are applied to a copied assembly. However, it gives no explicit alternatives, when-not-to-use conditions, or comparison with sibling tools such as relink_from_map, preview_relink_map_paths, or apply_file_relink_paths.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
relink_file_to_outputC
Preview and apply assembly relinks to a copied file through KOMPAS itself.
| Name | Required | Description | Default |
|---|---|---|---|
| relink_all | No | ||
| output_path | Yes | ||
| search_root | Yes | ||
| assembly_path | 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 mentions 'preview and apply' implying a mutating action, but gives no details on side effects, reversibility, permissions, or what 'apply' entails. The agent has no way to anticipate the impact.
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, so it is concise, but it lacks any structure or elaboration. It is under-specified rather than efficiently written, and the front-loading of the verb is the only structural merit.
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 output schema, no annotations, and a large set of closely related siblings, this description is completely inadequate. It omits return behavior, parameter roles, and selection criteria, making it impossible to use 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 parameters. There is no explanation of assembly_path, search_root, output_path, or relink_all, leaving the agent without guidance on how to fill them.
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 ('preview and apply'), a resource ('assembly relinks to a copied file'), and a method ('through KOMPAS itself'). However, it does not differentiate from the many relink siblings, such as relink_file_from_map_to_output or preview_relink_paths, leaving ambiguity about which tool is appropriate.
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. The description provides no context, prerequisites, or exclusions, leaving the agent to guess based on the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
relink_from_mapC
Preview and apply assembly relinks from an explicit mapping file.
| Name | Required | Description | Default |
|---|---|---|---|
| save | No | ||
| document_id | No | ||
| mapping_path | 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. It discloses that the tool can both preview and apply, implying a mutation when 'apply' is used, but it does not state whether applying is reversible, whether it requires a saved document, or what happens to existing relinks. The 'save' parameter hints at persistence but the description doesn't explain the 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?
One sentence, front-loaded with the action and resource. It is concise and readable, though it could add a bit more 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 tool that can apply mutations, with no annotations and no output schema, the description is incomplete. It does not explain the effect of 'save', the role of 'document_id', or what the preview output looks like. Given the complexity of relink operations and the large sibling set, more context 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 only explains 'mapping_path' implicitly ('explicit mapping file') and says nothing about 'save' or 'document_id'. The description adds minimal meaning beyond the schema, leaving the agent to guess what 'save' controls and why document_id is needed.
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 ('Preview and apply') and resource ('assembly relinks from an explicit mapping file'). It distinguishes from siblings like build_relink_map_plan (which builds a plan) and preview_relink_map_paths (which only previews), though it doesn't explicitly name 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 description implies usage: use when you have an explicit mapping file and want to preview or apply relinks. It does not explicitly state when not to use it or name alternatives like build_relink_map_plan or preview_relink_map_paths. The 'Preview and apply' phrasing gives some context but no exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
relink_from_map_to_exportC
Apply relinks from an explicit mapping file and save a safe exported copy with a report.
| Name | Required | Description | Default |
|---|---|---|---|
| suffix | No | relinked | |
| document_id | No | ||
| mapping_path | 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 mentions a 'safe exported copy with a report,' but it does not clarify whether the original document is modified, what side effects applying relinks has, what the report contains, 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 one front-loaded sentence with no filler, making it easy to scan. It is somewhat too terse for a tool with three undocumented parameters, but the conciseness itself is well executed.
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, no schema descriptions, no annotations, and no output schema, yet the description only provides a high-level action and result. It omits parameter semantics, side effects, output details, and selection criteria, so an agent would need additional context to invoke 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%, so the description must explain the parameters. It only vaguely maps to mapping_path via 'mapping file,' and gives no meaning for suffix or document_id, leaving those parameters 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 clearly states the action ('Apply relinks') and the result ('save a safe exported copy with a report'), and identifies the input as an explicit mapping file. It does not explicitly differentiate itself from the many sibling relink tools, though the exported-copy-and-report outcome helps distinguish it.
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 should be used when applying relinks from a mapping file and wanting a safe exported copy with a report. It gives no explicit guidance on when to prefer this tool over siblings like relink_from_map or relink_to_export, nor any exclusion conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
relink_project_rootC
Preview and apply assembly relinks by matching component filenames under a new root.
| Name | Required | Description | Default |
|---|---|---|---|
| save | No | ||
| relink_all | No | ||
| document_id | No | ||
| search_root | Yes |
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. It mentions 'apply', implying mutation, but does not clarify whether changes are reversible, require saving, or affect the document state. It also does not mention any permission or side-effect details. The description is vague about what 'apply' entails, leaving the agent uncertain about consequences.
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. It is appropriately sized for the information it conveys, though that information is minimal. There is no wasted text, but the brevity comes at the cost of missing essential 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?
Given the tool has four parameters, no output schema, no annotations, and many closely related siblings, the description is severely incomplete. It lacks usage context, parameter explanations, and clarity on the apply operation. An agent would struggle to invoke this tool correctly without additional information.
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 of the four parameters. It mentions 'matching component filenames' and 'new root' but does not map these to search_root, document_id, save, or relink_all. The agent has no information on what these parameters do beyond their 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 states a clear action (preview and apply) and resource (assembly relinks) with a method (matching component filenames under a new root). However, it does not explicitly differentiate this from the many sibling relink tools such as build_relink_plan or apply_relink_paths, which also handle relinking. The purpose is understandable but lacks the specificity needed to choose it over 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 provided on when to use this tool versus the numerous sibling tools. The description does not mention scenarios where it is preferred, nor does it state any exclusions. An agent would have to infer usage from the name and description, which is insufficient given the crowded toolset.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
relink_to_exportC
Preview and apply assembly relinks, then save a safe exported copy with a relink report.
| Name | Required | Description | Default |
|---|---|---|---|
| suffix | No | relinked | |
| relink_all | No | ||
| document_id | No | ||
| search_root | 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 of behavioral disclosure. It does mention previewing before applying and saving a 'safe exported copy', which hints at non-destructive intent, but it never states whether the original document is modified, what the report contains, or how 'safe' the copy is. This is a meaningful gap for a tool that applies changes.
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 names the three phases (preview, apply, save) in order. It is concise, though the terms 'safe' and 'report' add little concrete 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 tool has 4 parameters, 0% schema coverage, no output schema, and no annotations, yet the description provides almost none of the context an agent needs to call it correctly. The required search_root is not defined, the suffix behavior is not explained, and the relink report format is unspecified. This is inadequate relative to 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% and the description does not compensate by explaining any of the four parameters. It never mentions search_root, suffix, relink_all, or document_id, so an agent gets no semantic help beyond 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 clear verb-plus-resource: it previews and applies assembly relinks, then saves an exported copy with a report. This distinguishes it from pure preview tools like preview_relink_paths and pure save tools like save_export_copy, though it does not explicitly name those 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 use this tool versus the many overlapping relink siblings such as relink_from_map_to_export, relink_file_to_output, or apply_relink_paths. The phrase 'preview and apply' implies a two-step workflow, but there are no explicit conditions or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rename_sketchB
Rename an existing sketch selected by sketch_ref.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | ||
| sketch_ref | No | ||
| document_id | No |
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 implies a mutating operation ('rename') but does not explain side effects on references, whether the change persists, error behavior for invalid sketch_ref, or any permission/state requirements. 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, front-loaded sentence with no wasted words. It immediately states the action and the key selection parameter, making it easy to scan and 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?
This is a 3-parameter mutating tool with no annotations, no output schema, and no parameter descriptions. The description only covers purpose and sketch_ref, leaving significant gaps around required context (document_id), defaults, return behavior, and operational consequences. It is not complete enough for an agent to confidently invoke the tool 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?
With 0% schema description coverage, the description must compensate, but it only clarifies sketch_ref ('selected by sketch_ref'). It does not explain what name represents, the role of document_id, the relationship between sketch_ref and document_id, or why all parameters are optional with defaults. The description adds minimal 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 clearly states the operation: 'Rename an existing sketch' and specifies the selection mechanism ('selected by sketch_ref'). This distinguishes it from sibling tools like delete_sketch_entity, update_sketch_entity_geometry, and list_sketches 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 description gives no guidance on when to use this tool versus alternatives, nor does it mention prerequisites such as an open document or a valid sketch_ref. There are no exclusions or conditional routing hints, leaving the agent to infer usage solely from the tool name and purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
repair_featureB
Plan or apply bounded repairs to existing 3D features: rename, suppress, or delete.
| Name | Required | Description | Default |
|---|---|---|---|
| apply | No | ||
| operations | No | ||
| document_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits. It mentions 'plan or apply' but does not clarify what 'plan' does (e.g., preview vs. dry-run) or whether operations are destructive or reversible. This is a significant gap for a mutation-capable 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, efficient sentence that front-loads the core purpose and lists operations. There is no wasted text, making it appropriately sized for the tool's scope.
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 three parameters, no schema descriptions, no output schema, and no annotations, the description is incomplete. It does not explain the planning mode's output, the operations array format, or the document_id requirement, leaving an agent without enough information 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%, so the description must compensate. It mentions the operations (rename, suppress, delete) but does not explain the structure of the 'operations' array, the meaning of 'apply', or the role of 'document_id'. The description adds minimal value beyond the schema's raw 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 clearly states the verb (repair) and resource (existing 3D features) and enumerates the specific operations (rename, suppress, or delete). It distinguishes itself from sibling tools like list_features and inspect_feature, which have different purposes.
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 repairing features but does not explicitly state when to use this tool over alternatives like repair_sketch or apply_changeset. No exclusions or conditions are provided; the 'bounded' qualifier hints at scope but is not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
repair_sketchC
Plan or apply a bounded repair scenario for one existing sketch.
| Name | Required | Description | Default |
|---|---|---|---|
| apply | No | ||
| operations | No | ||
| sketch_ref | No | ||
| document_id | No |
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 itself. It only says 'Plan or apply', implying a possible mutation but never stating whether applying a repair modifies the geometry destructively, whether it is reversible, what happens to existing constraints or dimensions, or what outputs are returned. This is a significant gap for a mutation-capable 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, which is concise, but it is so terse that it leaves essential details unsaid. It is not a tautology, but it is closer to an under-specified tagline than a helpful description. The front-loading is fine, but the sentence is too thin to earn 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?
Given there are 4 parameters, no annotations, and no output schema, the description's single sentence is far from complete. It does not explain what a repair scenario consists of, how operations are structured, how to identify the target sketch, or what result the agent should expect. An agent would need to probe or guess to use this tool 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% and the description adds no information about the four parameters (apply, operations, sketch_ref, document_id). The terms 'bounded repair scenario' and 'plan or apply' vaguely suggest the apply boolean but do not explain the operations array, sketch_ref, or document_id semantics. The description fails to compensate for the absent 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 names a clear action ('Plan or apply') and resource ('a bounded repair scenario for one existing sketch'), so an agent can tell it is about repairing an existing sketch rather than creating or inspecting one. It doesn't explicitly distinguish itself from siblings like repair_feature or update_sketch_entity_geometry, so it falls 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?
The description provides no guidance on when to use this tool versus alternate sketch repair or editing tools. It does not explain when to choose 'plan' vs 'apply', what makes a repair scenario 'bounded', or any prerequisites like requiring an open document. There are no usage hints or exclusions beyond the terse action phrase.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
resolve_poly_v_profileC
Resolve one ISO 9982:2021 Poly-V pulley groove profile.
| Name | Required | Description | Default |
|---|---|---|---|
| request | 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 behavioral disclosure burden. It does not state whether this is a read-only lookup, what 'resolve' returns, how invalid designations are handled, or what side effects (if any) 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 concise sentence with no filler and the key resource is front-loaded. It is appropriately short for a simple lookup tool, though it sacrifices useful context 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 simple, but there is no output schema, no annotations, and no explanation of what 'resolve' produces or how it relates to sibling poly-V and V-belt tools. An agent cannot tell whether this returns dimensions, validates a designation, or generates a geometry.
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 the 'designation' parameter or its PH/PJ/PK/PL/PM enum. The schema itself fully documents the single parameter, which mitigates the gap, but the description adds no semantic value beyond the structured definition.
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 ('resolve'), a concrete resource ('ISO 9982:2021 Poly-V pulley groove profile'), and narrows scope to 'one' profile. It is distinguishable from V-belt siblings, though 'resolve' is somewhat vague and it does not explicitly differentiate from list_poly_v_profiles or preview_poly_v_groove.
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 list_poly_v_profiles or preview_poly_v_groove. No conditions, exclusions, or sibling comparisons are provided; usage is only implied by the resource name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
resolve_spring_sizeC
Resolve one spring catalog entry to generator-ready scenario params.
| Name | Required | Description | Default |
|---|---|---|---|
| entry_id | Yes | ||
| overrides | No | ||
| catalog_id | Yes | ||
| catalog_dir | No | ||
| include_preview | No |
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 reveals that the output is 'generator-ready scenario params,' which hints at a pure transformation, but it discloses nothing about side effects, error behavior for an invalid catalog_id/entry_id, whether lookups are read-only, or how overrides interact with resolved values. The safety and side-effect profile is entirely 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?
The description is a single ten-word sentence with no filler, and the key constraint ('one spring catalog entry') plus the output purpose are front-loaded. It earns full credit for brevity, but the terseness comes at the cost of the elaboration needed for parameters and usage, so it stops short of a 5.
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, no output schema, and 0% schema coverage, this description is insufficient. An agent cannot determine the shape of overrides, the source of a valid catalog_id, the meaning of catalog_dir, or the structure of the returned 'generator-ready scenario params.' The tool is positioned among many spring workflow siblings, and this short description does not provide enough context to invoke it correctly on the first attempt.
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, and it does not. None of the five parameters (catalog_id, entry_id, overrides, catalog_dir, include_preview) are explained. The names are reasonably self-explanatory and mirror sibling naming conventions, but the description adds nothing about what overrides should contain, how catalog_dir is used, or what include_preview produces.
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 ('Resolve'), a specific resource ('one spring catalog entry'), and a concrete outcome ('generator-ready scenario params'). The word 'one' usefully distinguishes this from bulk operations. However, it does not explicitly differentiate from closely related siblings like find_spring_sizes, preview_spring_from_size, or create_spring_from_size, leaving some ambiguity for an agent browsing the tool list.
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. There is no mention of prerequisites (e.g., getting valid catalog_id from list_spring_size_catalogs), no indication of the workflow step this belongs to, and no exclusions. Among many spring-related siblings (recommend_spring_sizes, preview_spring_from_size, create_spring_from_size), the description leaves the agent to infer placement in the pipeline.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
resolve_thread_catalog_designationC
Resolve a thread size by its designation/title within the default standard for a thread type (or an explicit standard).
| Name | Required | Description | Default |
|---|---|---|---|
| standard | No | ||
| designation | Yes | ||
| thread_type | No | ||
| database_path | No |
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 what the tool resolves but does not explain whether it is read-only, what happens on no match, how the default standard is determined, or what the return shape looks like.
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 with no redundancy. The core operation and key parameters are front-loaded, though the sentence packs several clauses without structural aids.
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 domain-specific catalog lookup with four parameters, no output schema, and no annotations. The description fails to explain what the resolved output is, how defaults operate, or the role of database_path, leaving an agent under-equipped 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. It adds meaning for designation, standard, and thread_type, but database_path is completely unexplained, and the required designation parameter lacks format or example context.
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 ('Resolve') with a clear resource: a thread size from its designation/title within a standard. It distinguishes itself from list-style siblings by indicating a lookup action, though it does not explicitly name an alternative.
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 some context about default versus explicit standards but provides no guidance on when to use this tool versus siblings like list_thread_catalog_standards or list_thread_catalog_entries. No exclusions, prerequisites, or alternative routing are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
resolve_v_belt_profileC
Resolve one V-belt groove profile and its diameter-dependent angle.
| Name | Required | Description | Default |
|---|---|---|---|
| request | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Since no annotations are provided, the description carries the full burden of behavioral disclosure. It only states the outcome (resolve profile and angle) but does not disclose side effects (if any), whether it is read-only, required inputs, or output format. The mention of 'diameter-dependent angle' hints at behavior but lacks 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 that is front-loaded with the verb and resource. It contains no filler words and is highly concise. However, given the tool's complexity (multiple parameters, standard systems), it may be too brief, but the conciseness itself 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?
With multiple parameters, no annotations, and no output schema, the description is severely incomplete. It does not explain the purpose of 'standard_system', the optional 'datum_diameter', or what the resolved output looks like. An agent cannot reliably invoke this tool correctly with only this 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 by explaining parameters. It mentions none of the three parameters (designation, datum_diameter, standard_system) and does not explain the enum values or how they affect the resolution. This is a critical gap for a tool with multiple 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 uses a clear verb 'Resolve' with resource 'V-belt groove profile' and mentions 'diameter-dependent angle', which adds specificity. It distinguishes from the sibling 'resolve_poly_v_profile' by explicitly stating 'V-belt', and from 'list_v_belt_profiles' by using 'resolve' vs 'list'. However, it does not clarify what 'resolve' returns (dimensions, angles, etc.) or differentiate from 'preview_v_belt_groove' beyond the 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?
No guidance is given on when to use this tool versus alternatives like 'list_v_belt_profiles', 'preview_v_belt_groove', or 'resolve_poly_v_profile'. It does not mention prerequisites, context, or exclusions, leaving the agent to infer usage from the name and siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
save_documentC
Save the selected or active document in place.
| Name | Required | Description | Default |
|---|---|---|---|
| document_id | No | ||
| close_after_save | No |
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. 'In place' communicates overwriting the current file, which is useful, but it omits the default close_after_save behavior, what happens if no document is active, and how unsaved changes 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, direct sentence with no filler or redundancy. It is concise, though the brevity comes at the cost of needed detail that belongs 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?
For a mutation tool with no annotations, no output schema, and zero parameter coverage, the description is too sparse. It fails to explain both parameters, the selected-vs-active ambiguity, the default closing behavior, or how it differs from save_document_as and save_export_copy.
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 two parameters. 'Selected or active' vaguely relates to document_id but does not clarify its nullable default, and close_after_save is entirely unaddressed.
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?
'Save' gives a specific verb, 'document' gives the resource, and 'selected or active' plus 'in place' scope what gets saved and where. It does not name the sibling alternatives, but 'in place' implicitly distinguishes it from save_document_as and save_export_copy.
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 siblings like save_document_as or save_export_copy. 'In place' weakly implies a different use case, but there are no explicit conditions, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
save_document_asC
Save the selected or active document to an explicit path.
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | ||
| document_id | No | ||
| close_after_save | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of disclosing behavior beyond the operation name. It discloses only the target and destination; it does not explain that close_after_save defaults to true, whether files are overwritten, whether directories are created, or what side effects occur after saving.
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 appropriately small and front-loaded with the core action, with no wasted words. It earns its place but sacrifices important 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 mutation tool with no annotations and no output schema, the description is too sparse to be complete. The three parameters need at least minimal clarification, especially close_after_save, and the side effects of saving to an explicit path are left entirely implicit.
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 only the notion of an "explicit path" for the required path parameter. It does not explain the optional document_id semantics or the close_after_save flag, which is likely to affect workflow behavior and defaults to true.
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: "Save the selected or active document to an explicit path." It clearly distinguishes this from sibling save tools by emphasizing the explicit-path destination, and from open/close tools by stating the save action.
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 like save_document, save_export_copy, or close_document. The description states what it does but never mentions conditions, exclusions, or preferred alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
save_export_copyC
Save the active document to the default export directory with an ASCII-safe file name.
| Name | Required | Description | Default |
|---|---|---|---|
| suffix | No | codex | |
| document_id | No | ||
| close_after_save | No |
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 reveals the ASCII-safe file-name transformation but doesn't mention overwrite behavior, what happens when close_after_save defaults to true, error cases, or return values — significant gaps 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?
A single efficient sentence with the core behavior front-loaded. No wasted words, but the brevity borders on under-specification given the undocumented parameters.
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 3 undocumented parameters, no annotations, and no output schema, the description is incomplete. It does not explain the meaning or effect of any parameter, and provides no detail on the result of saving.
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 there are 3 parameters (suffix, document_id, close_after_save), all with defaults and none required. The description mentions none of them, so the agent receives no guidance on what suffix means, which document_id targets, or the effect of close_after_save.
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 verb+resource (save the active document) with two distinguishing traits: default export directory and ASCII-safe file naming. This differentiates it from siblings save_document and save_document_as in behavior, though it doesn't 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?
No guidance on when to use this tool versus save_document, save_document_as, or other export-related tools. The 'active document' and 'default export directory' scoping is implied but no exclusions or alternative routing is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
scan_model_filesA
Scan a folder or a single file for KOMPAS model files without opening KOMPAS.
| Name | Required | Description | Default |
|---|---|---|---|
| root | Yes | ||
| max_files | No | ||
| recursive | No | ||
| extensions | No | ||
| include_locks | No |
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 reveals a key trait—'without opening KOMPAS'—which implies a lightweight, read-only scan. Yet it does not mention return format, side effects, or limitations such as performance or lock semantics, leaving significant behavioral gaps.
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 no filler. The action is front-loaded, and every word contributes to clarifying the tool's scope and key differentiator.
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 output schema, this one-sentence description is insufficient. It omits the return value, parameter semantics, and how it relates to sibling tools, requiring the agent to infer too much 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 only implicitly hints at 'root' via 'folder or a single file'. It does not explain 'max_files', 'recursive', 'extensions', or especially 'include_locks', leaving the agent to guess their meaning. The description fails to compensate for the absent 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 ('Scan') and identifies the resource ('a folder or a single file' for 'KOMPAS model files'). The qualifier 'without opening KOMPAS' clearly distinguishes it from session-dependent document tools, making its purpose unmistakable.
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 'without opening KOMPAS' provides clear context for when to use this tool: when file discovery is needed without establishing a KOMPAS session. However, it does not explicitly name alternative tools or offer when-not-to-use exclusions, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
set_item_propertiesC
Apply direct property edits for writable item fields.
| Name | Required | Description | Default |
|---|---|---|---|
| save | No | ||
| updates | Yes | ||
| document_id | No | ||
| close_after_save | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must disclose behavior. It only says 'apply direct property edits' without explaining side effects, reversibility, validation, or what happens when save is false. The save flag is a boolean defaulting to false, implying edits might be temporary, but this is not stated.
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, which is concise, but it omits essential details. For a tool with a required array parameter and multiple options, this is under-specification rather than efficient 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?
Given the tool's complexity (required array of objects, save flag, document_id, close_after_save) and no schema descriptions or output schema, the description is woefully incomplete. An agent cannot determine correct usage or expected return values.
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 no meaning for any of the four parameters. The required 'updates' is an array of objects with additionalProperties, but the description gives no clue about allowed keys, structure, or examples.
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 verb (apply) and a resource (direct property edits for writable item fields), but 'item' is vague and it does not distinguish this tool from siblings like preview_property_changes or apply_changeset. An agent cannot tell what makes this different without inspecting other tool definitions.
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 use this tool versus alternatives. It does not mention prerequisites, exclusions, or any condition that would select this over preview_property_changes or apply_changeset.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
set_sketch_entity_styleC
Set line style on one existing sketch entity selected by reference, index, or fingerprint.
| Name | Required | Description | Default |
|---|---|---|---|
| entity | No | ||
| line_style | No | ||
| sketch_ref | No | ||
| document_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It doesn't state whether the operation is idempotent, what happens to existing style properties, whether it requires a specific document/sketch context, or whether it has side effects on other entities. It only states the action and selection method.
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, concise and free of fluff. It front-loads the primary action and resource. However, it's under-specified, which is a completeness issue, not conciseness. Still, for what it says, it's 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?
Given 4 parameters with 0% schema coverage, no output schema, and no annotations, the description is grossly incomplete. It fails to explain what line_style values are valid, how to reference an entity (what format), and what the tool returns. An agent cannot reliably call this tool without external knowledge.
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%, meaning no parameter descriptions are provided in the schema. The tool description does not explain the semantics of 'line_style' (integer, default 1) or how to format 'sketch_ref' or 'document_id'. The 'entity' parameter is an opaque object. The description adds no parameter-level information, so agents cannot correctly construct 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 clearly states the action (set line style) and the resource (one existing sketch entity), and specifies selection by reference, index, or fingerprint. However, it doesn't explicitly differentiate from sibling tools like update_sketch_entity_geometry or clear_sketch_entity_constraints, but the verb and resource 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?
There is no guidance on when to use this tool versus alternatives. It doesn't mention any prerequisites (e.g., entity must exist, sketch must be open), nor does it indicate when one selection method (reference vs index vs fingerprint) is preferred. The agent is left to infer usage from the description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
shutdown_sessionB
Close all tracked documents and release the KOMPAS session.
| Name | Required | Description | Default |
|---|---|---|---|
| save | No | ||
| close_mode | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the full burden of behavioral disclosure. It states the basic action but omits the most critical consequence: with save defaulting to false, unsaved changes may be lost. It also does not disclose whether the session can be resumed after 'release' or what side effects propagating. For a session-terminating operation 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?
A single front-loaded sentence with zero filler. The primary action ('Close all tracked documents') comes first and the session resource is named second. Nothing needs to be cut.
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 output schema, no annotations, and two opaque parameters, the description is incomplete for a state-changing session teardown. An agent cannot determine data-loss risk, how close_mode behaves, what success looks like, or whether the session is reusable, leaving critical operational uncertainty.
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. 'save' can be weakly inferred to mean persisting documents before shutdown, but 'close_mode' (an unexplained integer) has no hint about its meaning or allowed values. With 0% schema coverage, the description must compensate and does 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 uses specific verbs and a specific resource: 'Close all tracked documents and release the KOMPAS session.' The scope ('all tracked documents' + session release) clearly differentiates it from close_document, which handles a single document, and from save_* tools, which persist rather than terminate.
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 intended context (end-of-session teardown, not single-document closing) is implied by 'all tracked documents' and 'release the session,' but no alternatives are named and there is no explicit when-to-use vs. when-not-to-use guidance. An agent must infer the distinction from close_document and open_document siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
smoke_check_sessionB
Open, save-as-close, reopen-readonly and close a KOMPAS document to verify lifecycle handling.
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | ||
| visible | No | ||
| output_dir | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the behavioral disclosure burden. It does disclose the overall operation sequence and that the document is reopened in read-only mode, which is useful. However, it does not explain side effects, whether anything is persisted, what output_dir is used for, or what the tool 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 entire description is one compact, front-loaded sentence that lists the sequence of lifecycle actions and the purpose. Every word contributes, with no filler or repetition.
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 annotations, no output schema, and no parameter documentation, this description is far from complete. It does not explain expected results, error scenarios, what 'save-as-close' concretely writes, or how visible and output_dir influence behavior, which an agent would need to invoke it 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%, and the description adds no meaning for any of the three parameters. The names path, visible, and output_dir are self-explanatory at a surface level, but the description does not clarify how they affect the smoke-check sequence or what output_dir should contain.
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 concrete sequence of actions—open, save-as-close, reopen-readonly, close—on a KOMPAS document, making the tool's purpose clear. It stops short of explicitly contrasting itself with the sibling batch_smoke_check_session, so it loses the top point for 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 phrase 'to verify lifecycle handling' implies a use case, but the description gives no explicit guidance about when to choose this tool over alternatives such as batch_smoke_check_session or the individual session tools like open_document and close_document. There are no prerequisites, exclusions, or alternative routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_sketch_entity_geometryA
Update geometry for one existing point, segment, circle, or arc selected by reference, index, or fingerprint.
| Name | Required | Description | Default |
|---|---|---|---|
| entity | No | ||
| geometry | No | ||
| sketch_ref | No | ||
| document_id | No |
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 discloses that the tool mutates geometry but does not mention error handling, what happens if the entity is not found, whether changes are reversible, or any side effects. The only behavioral hint is 'existing', implying the entity must already exist. This is minimal disclosure 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, front-loaded sentence with no filler. It efficiently states the action, the object, and the selection method, earning 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?
For a mutation tool with four undocumented parameters, no output schema, and no annotations, this description is significantly incomplete. An agent cannot reliably call it because it lacks guidance on parameter formats, required fields, and expected outcomes. The description would need to explain the entity selection options and the geometry structure to be minimally usable.
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 does not explain any of the four parameters. It only hints that the entity can be selected by 'reference, index, or fingerprint', which loosely maps to the 'entity' parameter, but it does not clarify the format of geometry, sketch_ref, or document_id. The description adds very little beyond the 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 (Update), a clear resource (geometry of one existing point, segment, circle, or arc), and a selection method (by reference, index, or fingerprint). This clearly distinguishes it from creation tools like create_sketch_point and from style tools like set_sketch_entity_style, leaving no ambiguity about its 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?
It explicitly states the tool applies to 'one existing' entity, which implies it is not for creation, and it mentions three ways to select the entity. However, it does not explicitly contrast itself with alternatives such as set_sketch_entity_style or delete_sketch_entity, leaving the when-not-to-use guidance implicit rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_spring_size_catalogsC
Validate built-in spring catalog metadata and optional previews.
| Name | Required | Description | Default |
|---|---|---|---|
| catalog_dir | No | ||
| include_preview | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavior. It states the action but does not indicate whether the operation is read-only, whether it has side effects, what happens on failure, or any permissions needed. 'Validate' implies non-mutating but is not explicit. Minimal transparency beyond the basic action.
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 wasted words. It is front-loaded with the main action and object. However, its brevity comes at the cost of completeness, so while it is concise, it is not adequately structured to convey necessary 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?
With no output schema, no annotations, and a 0% parameter coverage, this description is severely incomplete. It does not explain what validation checks are performed, what the return value represents, or how the parameters influence the result. For a tool with two parameters, this is insufficient for an agent to invoke 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 parameters (catalog_dir or include_preview). It provides no explanation of what these parameters mean, how they affect behavior, or what values are expected. The description fails entirely 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 clearly states the action (validate) and the resource (built-in spring catalog metadata and optional previews). It distinguishes itself from sibling tools like list_spring_size_catalogs and find_spring_sizes by focusing on validation. However, it is somewhat vague about what 'validate' entails and what 'previews' means, but the core purpose is identifiable.
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. It does not mention scenarios where validation is needed, prerequisites, or when to prefer list_spring_size_catalogs or other related tools. The description provides zero usage context, leaving the agent without direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_document_readback_stabilityB
Capture two readback snapshots and verify that document readback is stable before write/read checks.
| Name | Required | Description | Default |
|---|---|---|---|
| max_items | No | ||
| document_id | No | ||
| ignore_keys | No | ||
| ignore_paths | No | ||
| after_output_path | No | ||
| include_manifests | No | ||
| before_output_path | No | ||
| require_active_document | No | ||
| use_default_volatile_ignores | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the burden of behavioral disclosure. It reveals that the tool captures snapshots and verifies stability, suggesting a read-only operation, but does not explicitly state whether it modifies anything, what it returns, or if there are side effects. This is 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, front-loaded sentence that gets straight to the point without any fluff. It is appropriately concise for the purpose it states, even though it lacks detail elsewhere.
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 has 9 parameters, no output schema, and no annotations, the description is grossly incomplete. It does not explain what the parameters control, what the output is, or any constraints. An agent cannot confidently call this tool based on the 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%, and the description provides no explanation of any of the 9 parameters. The description must compensate for the missing schema coverage but fails to do so, leaving the agent with no semantic guidance for parameters like max_items, ignore_keys, or require_active_document.
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 (verify) and resource (document readback stability) and explains the mechanism (capture two snapshots). It distinguishes itself from sibling tools like verify_document_snapshot_delta by specifying the stability check before write/read checks, giving it a clear identity.
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 'before write/read checks' provides clear context for when to use this tool, implying it is a precondition. However, it does not explicitly mention alternatives or when not to use it, so it stops short of a full 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_document_snapshot_deltaC
Verify expected before/after readback snapshot deltas for a primitive operation.
| Name | Required | Description | Default |
|---|---|---|---|
| diff | No | ||
| after | No | ||
| before | No | ||
| max_added | No | ||
| max_items | No | ||
| min_added | No | ||
| operation | Yes | ||
| ignore_keys | No | ||
| max_changed | No | ||
| max_removed | No | ||
| min_changed | No | ||
| min_removed | No | ||
| ignore_paths | No | ||
| expected_added | No | ||
| expected_changed | No | ||
| expected_removed | No | ||
| require_no_changed | No | ||
| require_no_removed | No | ||
| expected_counts_delta | No | ||
| use_default_volatile_ignores | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the full burden of behavioral disclosure. It says 'verify' but does not state whether a mismatch causes an exception, returns a boolean, or what failure looks like. It also does not mention how ignore_keys, ignore_paths, or default volatile ignores affect the verification.
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 definition is a single sentence with no redundant wording, and the main verb is front-loaded. However, it is almost too terse: it compresses the tool's purpose into jargon rather than explaining it. It is concise in form but at the cost of clarity.
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 20 parameters, 0% schema coverage, no output schema, and no annotations, this description covers only the central concept. An agent cannot determine return behavior, the role of min/max/expected bounds, or how ignore_keys and volatile ignores affect verification. This is incomplete for reliable 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 does not compensate. 'Before/after' maps loosely to the before/after/diff parameters and 'expected' to the expected_* fields, but no parameter semantics, interactions, or defaults such as max_items=25 or require_no_* are explained. For a 20-parameter tool, this is a major 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?
The description uses the verb 'Verify' against a specific resource ('before/after readback snapshot deltas'), so an agent can infer it checks that an operation changed a document as expected. However, 'primitive operation' and 'readback snapshot' are unexplained jargon, and there is no contrast with the sibling verifier 'verify_document_readback_stability' or 'diff_document_snapshots'. It is more specific than a tautology but not clearly scoped.
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 choose this tool over verify_document_readback_stability, diff_document_snapshots, or probe_document_readback. The description implies it runs after a primitive operation and against snapshots, but it never states a workflow, prerequisites, or exclusions. An agent is left to infer the context from sibling names.
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.
118 tool updates
v0.1.0- First observed
analyze_naming_issues - First observed
analyze_spec_issues - First observed
apply_changeset - First observed
apply_file_relink_paths - First observed
apply_poly_v_grooves - First observed
apply_relink_paths - First observed
apply_specification_autofill - First observed
apply_specification_changes - First observed
apply_v_belt_grooves - First observed
batch_analyze_model_quality - First observed
batch_smoke_check_session - First observed
build_file_relink_map_plan - First observed
build_file_relink_plan - First observed
build_relink_map_plan - First observed
build_relink_plan - First observed
capture_document_snapshot - First observed
check_file_access - First observed
classify_runtime_error - First observed
cleanup_to_export - First observed
clear_sketch_entity_constraints - First observed
close_document - First observed
create_compression_spring - First observed
create_part_from_scenario - First observed
create_point3d - First observed
create_sketch_arc - First observed
create_sketch_circle - First observed
create_sketch_ellipse - First observed
create_sketch_entities - First observed
create_sketch_line_segment - First observed
create_sketch_point - First observed
create_sketch_polyline - First observed
create_sketch_rectangle - First observed
create_specification - First observed
create_spring_from_size - First observed
create_spw_from_model - First observed
delete_sketch_entity - First observed
diff_document_snapshots - First observed
find_items - First observed
find_spring_sizes - First observed
get_active_document_state - First observed
get_document_composition - First observed
get_document_tree - First observed
get_file_composition - First observed
get_item_properties - First observed
get_items - First observed
get_mcp_tool_catalog - First observed
get_session_state - First observed
get_specification - First observed
get_specification_descriptions - First observed
inspect_feature - First observed
inspect_sketch_constraint - First observed
inspect_sketch_dimension - First observed
inspect_sketch_entity - First observed
inspect_sketch_full - First observed
list_documents - First observed
list_features - First observed
list_helical_thread_v1_candidates - First observed
list_poly_v_profiles - First observed
list_sketch_constraints - First observed
list_sketch_dimensions - First observed
list_sketch_entities - First observed
list_sketches - First observed
list_spring_size_catalogs - First observed
list_thread_catalog_entries - First observed
list_thread_catalog_standards - First observed
list_v_belt_profiles - First observed
normalize_operation_result - First observed
open_document - First observed
parameterize_sketch - First observed
preflight_document_context - First observed
preview_changeset - First observed
preview_compression_spring - First observed
preview_file_relink_map_paths - First observed
preview_file_relink_paths - First observed
preview_flat_belt_pulley - First observed
preview_part_scenario - First observed
preview_poly_v_groove - First observed
preview_property_changes - First observed
preview_relink_map_paths - First observed
preview_relink_paths - First observed
preview_section_by_surface_operation - First observed
preview_specification_autofill - First observed
preview_specification_changes - First observed
preview_specification_generation - First observed
preview_spring_from_size - First observed
preview_spw_generation - First observed
preview_timing_belt_pulley - First observed
preview_v_belt_groove - First observed
probe_document_readback - First observed
probe_model_formulas - First observed
probe_model_object_collections - First observed
recommend_spring_sizes - First observed
refresh_specification_from_model - First observed
relink_file_from_map_to_output - First observed
relink_file_to_output - First observed
relink_from_map - First observed
relink_from_map_to_export - First observed
relink_project_root - First observed
relink_to_export - First observed
rename_sketch - First observed
repair_feature - First observed
repair_sketch - First observed
resolve_poly_v_profile - First observed
resolve_spring_size - First observed
resolve_thread_catalog_designation - First observed
resolve_v_belt_profile - First observed
save_document - First observed
save_document_as - First observed
save_export_copy - First observed
scan_model_files - First observed
set_item_properties - First observed
set_sketch_entity_style - First observed
shutdown_session - First observed
smoke_check_session - First observed
update_sketch_entity_geometry - First observed
validate_spring_size_catalogs - First observed
verify_document_readback_stability - First observed
verify_document_snapshot_delta
TDQS
Scored across 118 tools
The relink family alone has 17 highly similar tools (relink_to_export vs relink_from_map_to_export vs relink_file_to_output, preview_relink_paths vs preview_file_relink_paths vs preview_relink_map_paths) that are nearly indistinguishable without reading detailed descriptions. get_items and get_item_properties also overlap heavily, making agent misselection very likely.
Most tools follow a readable snake_case verb_noun pattern (list_, create_, preview_, apply_), but the relink group mixes styles inconsistently (apply_relink_paths, relink_to_export, relink_from_map_to_export, preview_relink_paths). Read operations also alternate between get_, list_, probe_, and capture_, which weakens overall predictability.
118 tools is far beyond a coherent single-server scope and creates a severe navigation and selection burden. The server bundles many distinct domains — sketches, features, specifications, relinking, thread/belt/spring catalogs, and low-level diagnostics — that should be split into focused MCP servers.
The surface is very broad and many workflow pairs are present (preview/create, preview/apply, analyze/apply), but there are notable gaps: no direct create/update/delete tools for sketch dimensions, no generic 3D feature creation beyond scenarios, and no assembly creation or component insertion tools. These omissions leave some common CAD workflows incomplete despite the huge tool count.
Maintenance
Related MCP Connectors
- OwlCADOAuthcom.owlcad
Parametric 3D CAD for AI agents: build print-ready parts, check them, export STL, 3MF or STEP.
Agent-first CAD: editable .kcad.ts source, deterministic review, OpenCASCADE kernel.
DXF and PDF/X-4 for AI agents: structured facts, PNG renders, an interactive in-chat viewer.
Operate Linux, macOS and Windows from your LLM. Every action runs through an auditable allowlist.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables agent-assisted CAD engineering, allowing users to create, validate, and export CAD designs through natural language, with a deterministic engine that has zero LLM runtime dependency.Academic Free v1.1
- FlicenseNot gradedqualityCmaintenanceMCP server that connects AI agents to KOMPAS-3D CAD, enabling automated 3D document operations through deterministic COM/API7 calls.1-
- AlicenseNot gradedqualityBmaintenanceEnables AI hosts to interact with a browser CAD workbench through model-neutral local stdio or authenticated remote MCP tools, supporting command discovery, design-health analysis, and scoped previews while never reading local files or taking over open sessions.MIT
- AlicenseNot gradedqualityCmaintenanceEnables safe, AI-driven CATIA V5 modeling through 36 guarded tools for creating and inspecting parametric CATParts, including sketch, part design, GSD/surface, and transaction operations, while preventing mutation of existing documents.1Apache 2.0