Skip to main content
Glama
kostia-egik

geomwright

by kostia-egik

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 geomwright

They 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.cmd

Or run it directly:

.\.venv\Scripts\python.exe -m geomwright.studio --port 8765

Studio 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 geomwright

For 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

  1. Call get_mcp_tool_catalog and choose a category whose status matches the task.

  2. Call get_session_state and list_documents; always name the target document explicitly.

  3. Use inspection, preview, and preflight tools before a write.

  4. Follow Plan → Execute → Verify → Correct. A successful COM Update() is not, by itself, proof that geometry or direction is correct.

  5. 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 work

The 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

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 tools
analyze_naming_issuesC

Analyze naming issues in the selected or active document.

ParametersJSON Schema
NameRequiredDescriptionDefault
rules_pathNo
document_idNo

TDQS

C2.4/5.0
Behavior2/5

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.

Conciseness3/5

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.

Completeness1/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
rules_pathNo
document_idNo

TDQS

C2.7/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
saveNo
changesYes
document_idNo
close_after_saveNo

TDQS

C2.4/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose3/5

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.

Usage Guidelines2/5

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_poly_v_groovesC

Preflight or cut exact rounded Poly-V grooves into one global-X rotational body.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYes

TDQS

C2.4/5.0
Behavior2/5

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.

Conciseness3/5

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.

Completeness2/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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_specification_autofillC

Apply filling or syncing of specification rows from the model tree.

ParametersJSON Schema
NameRequiredDescriptionDefault
saveNo
fieldsNo
fill_onlyNo
document_idNo
layout_nameNo
max_objectsNo
include_rootNo
close_after_saveNo
description_indexNo

TDQS

C2/5.0
Behavior2/5

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.

Conciseness2/5

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.

Completeness1/5

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.

Parameters1/5

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.

Purpose3/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
saveNo
updatesYes
document_idNo
layout_nameNo
max_objectsNo
close_after_saveNo
description_indexNo

TDQS

C2.7/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYes

TDQS

A3.5/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
rootNo
limitNo
pathsNo
visibleNo
analysesNo
recursiveNo
extensionsNo
report_dirNo
rules_pathNo
report_nameNo
include_locksNo
report_formatsNo
continue_on_errorNo

TDQS

C2.8/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness1/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
rootNo
limitNo
pathsNo
dry_runNo
visibleNo
recursiveNo
extensionsNo
output_dirNo
report_dirNo
report_nameNo
include_locksNo
report_formatsNo
continue_on_errorNo

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness1/5

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.

Parameters2/5

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.

Purpose5/5

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.

Usage Guidelines2/5

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.

capture_document_snapshotC

Capture a bounded readback snapshot for an active/opened document, optionally writing the full manifest JSON.

ParametersJSON Schema
NameRequiredDescriptionDefault
visibleNo
read_onlyNo
model_pathNo
document_idNo
output_pathNo
include_manifestNo
close_after_probeNo
require_active_documentNo

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYes

TDQS

C2.8/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
stageNo
messageYes
exception_typeNo

TDQS

A3.5/5.0
Behavior3/5

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.

Conciseness4/5

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.

Completeness3/5

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.

Parameters2/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
suffixNoclean
rules_pathNo
document_idNo

TDQS

C2.4/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters1/5

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.

Purpose3/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
entityNo
sketch_refNo
document_idNo

TDQS

C2.7/5.0
Behavior3/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
saveNo
close_modeNo
document_idNo

TDQS

C2.2/5.0
Behavior1/5

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.

Conciseness3/5

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.

Completeness1/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
paramsYes
visibleNo
output_pathNo
close_after_saveNo
save_partial_on_errorNo
return_partial_result_on_errorNo

TDQS

C2.6/5.0
Behavior2/5

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.

Conciseness3/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
paramsYes
visibleNo
scenarioYes
output_pathNo
close_after_saveNo
save_partial_on_errorNo
return_partial_result_on_errorNo

TDQS

C2.1/5.0
Behavior2/5

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.

Conciseness3/5

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.

Completeness1/5

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.

Parameters1/5

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.

Purpose3/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoPT1
originNo
max_itemsNo
min_addedNo
document_idNo
require_no_changedNo
require_no_removedNo

TDQS

C2.7/5.0
Behavior3/5

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.

Conciseness4/5

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.

Completeness1/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
endNo
nameNoSKETCH_ARC_1
planeNoXOY
startNo
centerNo
radiusNo
directionNo
max_itemsNo
min_addedNo
line_styleNo
sketch_refNo
document_idNo
create_new_sketchNo
require_no_changedNo
require_no_removedNo

TDQS

C2.7/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness1/5

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.

Parameters1/5

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.

Purpose5/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoSKETCH_CIRCLE_1
planeNoXOY
centerNo
radiusNo
max_itemsNo
min_addedNo
line_styleNo
sketch_refNo
document_idNo
create_new_sketchNo
require_no_changedNo
require_no_removedNo

TDQS

B3.2/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness1/5

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.

Parameters1/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoSKETCH_ELLIPSE_1
angleNo
planeNoXOY
centerNo
radius_xNo
radius_yNo
max_itemsNo
min_addedNo
line_styleNo
sketch_refNo
document_idNo
create_new_sketchNo
require_no_changedNo
require_no_removedNo

TDQS

C2.9/5.0
Behavior3/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoSKETCH_BATCH_1
planeNoXOY
entitiesNo
max_itemsNo
min_addedNo
dimensionsNo
sketch_refNo
constraintsNo
document_idNo
sketch_optionsNo
create_new_sketchNo
require_no_changedNo
require_no_removedNo

TDQS

A3.7/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose5/5

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.

Usage Guidelines4/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
endNo
nameNoSKETCH_LINE_1
planeNoXOY
startNo
max_itemsNo
min_addedNo
line_styleNo
sketch_refNo
document_idNo
create_new_sketchNo
require_no_changedNo
require_no_removedNo

TDQS

B3.3/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters1/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoSKETCH_POINT_1
planeNoXOY
pointNo
max_itemsNo
min_addedNo
line_styleNo
sketch_refNo
document_idNo
create_new_sketchNo
require_no_changedNo
require_no_removedNo

TDQS

B3.2/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness1/5

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.

Parameters2/5

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.

Purpose5/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoSKETCH_POLYLINE_1
planeNoXOY
closedNo
pointsNo
max_itemsNo
min_addedNo
line_styleNo
sketch_refNo
document_idNo
create_new_sketchNo
require_no_changedNo
require_no_removedNo

TDQS

C2.7/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness1/5

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.

Parameters1/5

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.

Purpose5/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoSKETCH_RECTANGLE_1
planeNoXOY
corner1No
corner2No
max_itemsNo
min_addedNo
line_styleNo
sketch_refNo
document_idNo
create_new_sketchNo
require_no_changedNo
require_no_removedNo

TDQS

C2.6/5.0
Behavior2/5

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.

Conciseness3/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
saveNo
style_idNo
document_idNo
layout_nameNo
include_rootNo
close_after_saveNo
replace_existingNo
specification_nameNo

TDQS

C2.6/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
visibleNo
entry_idYes
overridesNo
catalog_idYes
catalog_dirNo
output_pathNo
close_after_saveNo

TDQS

C2.4/5.0
Behavior2/5

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.

Conciseness3/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose3/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
columnsNo
style_idNo
document_idNo
layout_nameNographic.lyt
output_pathNo
include_rootNo
column_presetNo
include_engineeringNo

TDQS

A3.5/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
entityNo
sketch_refNo
document_idNo

TDQS

C2.7/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
afterYes
beforeYes
max_itemsNo
ignore_keysNo
ignore_pathsNo
use_default_volatile_ignoresNo

TDQS

C2.8/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
kindsNo
queryNo
document_idNo

TDQS

C2.8/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
tagNo
limitNo
turnsNo
heightNo
end_typeNo
hook_typeNo
catalog_idNo
leg_lengthNo
load_classNo
catalog_dirNo
spring_typeNo
wire_diameterNo
outer_diameterNo
standard_lengthNo

TDQS

C2.8/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
max_itemsNo
document_idNo
include_treeNo
include_itemsNo
require_active_documentNo

TDQS

C2.1/5.0
Behavior2/5

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.

Conciseness3/5

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.

Completeness1/5

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.

Parameters1/5

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.

Purpose3/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
document_idNo

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
document_idNo

TDQS

B3.2/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters4/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
assembly_pathYes

TDQS

C2.8/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idsNo
document_idNo

TDQS

D1.8/5.0
Behavior2/5

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.

Conciseness2/5

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.

Completeness1/5

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.

Parameters1/5

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.

Purpose3/5

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.

Usage Guidelines1/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idsNo
document_idNo

TDQS

C2.2/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness1/5

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.

Parameters1/5

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.

Purpose3/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
categoryNo
stabilityNo
include_researchNo

TDQS

A3.7/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines4/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters4/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
document_idNo
layout_nameNo
max_objectsNo
include_objectsNo
description_indexNo

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
document_idNo

TDQS

A3.5/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
featureNo
document_idNo

TDQS

B3/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
constraintNo
sketch_refNo
document_idNo

TDQS

B3.3/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose5/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
dimensionNo
sketch_refNo
document_idNo

TDQS

B3.1/5.0
Behavior3/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
entityNo
sketch_refNo
document_idNo

TDQS

C2.6/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness1/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
max_itemsNo
sketch_refNo
document_idNo
include_dimensionsNo
include_constraintsNo
include_diagnosticsNo

TDQS

A4.6/5.0
Behavior5/5

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.

Conciseness5/5

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.

Completeness5/5

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.

Parameters5/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.4/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters4/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
kindsNo
max_itemsNo
document_idNo

TDQS

C2.4/5.0
Behavior2/5

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.

Conciseness3/5

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.

Completeness2/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
offsetNo
pitch_maxNo
pitch_minNo
title_queryNo
diameter_maxNo
diameter_minNo
database_pathNo
limit_per_standardNo

TDQS

A3.7/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose5/5

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.

Usage Guidelines4/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness4/5

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.

Parameters4/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
kindsNo
max_itemsNo
sketch_refNo
document_idNo

TDQS

C2.7/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
kindsNo
max_itemsNo
sketch_refNo
document_idNo

TDQS

B3.1/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters1/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
kindsNo
max_itemsNo
sketch_refNo
document_idNo

TDQS

C2.7/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
max_itemsNo
document_idNo
name_containsNo
include_entity_countsNo

TDQS

A3.5/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
catalog_dirNo
spring_typeNo
include_entriesNo

TDQS

C2.6/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
pitchNo
offsetNo
diameterNo
standardYes
pitch_maxNo
pitch_minNo
title_queryNo
diameter_maxNo
diameter_minNo
database_pathNo

TDQS

C2.6/5.0
Behavior2/5

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.

Conciseness3/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
database_pathNo

TDQS

C2.7/5.0
Behavior3/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYes

TDQS

B3.1/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters1/5

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.

Purpose5/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
errorNo
stageNooperation_result
checksNo
resultNo
artifactsNo
operationYes
preflightNo
exception_typeNo
require_resultNo
readback_contractNo

TDQS

C2.4/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness1/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYes
visibleNo
read_onlyNo

TDQS

C2.4/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness1/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
entitiesNo
max_itemsNo
dimensionsNo
sketch_refNo
constraintsNo
document_idNo
sketch_optionsNo
require_no_changedNo
require_no_removedNo

TDQS

C2.4/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness1/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
min_itemsNo
document_idNo
require_treeNo
require_itemsNo
min_tree_nodesNo
expected_extensionsNo
expected_document_typeNo
require_active_documentNo

TDQS

C2.6/5.0
Behavior2/5

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.

Conciseness3/5

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.

Completeness1/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
rules_pathNo
document_idNo

TDQS

C2.1/5.0
Behavior2/5

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.

Conciseness3/5

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.

Completeness1/5

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.

Parameters1/5

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.

Purpose3/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
paramsYes

TDQS

C2.9/5.0
Behavior3/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines3/5

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_flat_belt_pulleyC

Preview a cylindrical or explicitly crowned flat-belt pulley rim.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYes

TDQS

C2.6/5.0
Behavior2/5

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.

Conciseness3/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
paramsYes
scenarioYes

TDQS

B3.3/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters1/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYes

TDQS

B3.3/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
updatesYes
document_idNo

TDQS

C2.7/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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_section_by_surface_operationC

Preview a low-level section-by-surface operation payload.

ParametersJSON Schema
NameRequiredDescriptionDefault
roleNo
keep_sideNopositive
target_refYes
normal_directionNoaxis_positive
offset_expressionNo
surface_referenceYes

TDQS

C2.4/5.0
Behavior2/5

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.

Conciseness3/5

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.

Completeness1/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
fieldsNo
fill_onlyNo
document_idNo
layout_nameNo
max_objectsNo
include_rootNo
description_indexNo

TDQS

C2.4/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness1/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
updatesYes
document_idNo
layout_nameNo
max_objectsNo
description_indexNo

TDQS

C2.7/5.0
Behavior3/5

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.

Conciseness4/5

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.

Completeness1/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
document_idNo
include_rootNo

TDQS

C2.4/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose3/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
entry_idYes
overridesNo
catalog_idYes
catalog_dirNo

TDQS

C2.6/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
columnsNo
document_idNo
include_rootNo
column_presetNo
include_engineeringNo

TDQS

B3.1/5.0
Behavior3/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYes

TDQS

A3.7/5.0
Behavior4/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYes

TDQS

B3/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
visibleNo
read_onlyNo
model_pathNo
document_idNo
output_pathNo
close_after_probeNo

TDQS

C2.2/5.0
Behavior1/5

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.

Conciseness3/5

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.

Completeness1/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
visibleNo
read_onlyNo
model_pathNo
document_idNo
output_pathNo
close_after_probeNo
include_contents_fallbackNo

TDQS

C2.4/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness1/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
max_itemsNo
document_idNo
include_emptyNo

TDQS

C2.4/5.0
Behavior2/5

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.

Conciseness3/5

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.

Completeness2/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
tagNo
limitNo
end_typeNo
hook_typeNo
catalog_idNo
load_classNo
catalog_dirNo
spring_typeNo
target_pitchNo
target_turnsNo
target_heightNo
target_lengthNo
target_leg_lengthNo
target_wire_diameterNo
target_outer_diameterNo
target_standard_lengthNo

TDQS

C2.7/5.0
Behavior2/5

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.

Conciseness3/5

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.

Completeness2/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
saveNo
fieldsNo
style_idNo
fill_onlyNo
document_idNo
layout_nameNo
max_objectsNo
include_rootNo
close_after_saveNo
replace_existingNo
specification_nameNo

TDQS

C2.4/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness1/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

rename_sketchB

Rename an existing sketch selected by sketch_ref.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo
sketch_refNo
document_idNo

TDQS

B3.1/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose5/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
applyNo
operationsNo
document_idNo

TDQS

B3.3/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
applyNo
operationsNo
sketch_refNo
document_idNo

TDQS

C2.4/5.0
Behavior2/5

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.

Conciseness3/5

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.

Completeness2/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYes

TDQS

C2.7/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
entry_idYes
overridesNo
catalog_idYes
catalog_dirNo
include_previewNo

TDQS

C2.7/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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).

ParametersJSON Schema
NameRequiredDescriptionDefault
standardNo
designationYes
thread_typeNo
database_pathNo

TDQS

C2.7/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYes

TDQS

C2.4/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness1/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
document_idNo
close_after_saveNo

TDQS

C2.7/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYes
document_idNo
close_after_saveNo

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose5/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
suffixNocodex
document_idNo
close_after_saveNo

TDQS

C2.6/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
rootYes
max_filesNo
recursiveNo
extensionsNo
include_locksNo

TDQS

A3.7/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose5/5

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.

Usage Guidelines4/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
saveNo
updatesYes
document_idNo
close_after_saveNo

TDQS

C2/5.0
Behavior2/5

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.

Conciseness2/5

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.

Completeness1/5

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.

Parameters1/5

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.

Purpose3/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
entityNo
line_styleNo
sketch_refNo
document_idNo

TDQS

C2.4/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness1/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
saveNo
close_modeNo

TDQS

B3.3/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYes
visibleNo
output_dirNo

TDQS

B3.1/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
entityNo
geometryNo
sketch_refNo
document_idNo

TDQS

A3.5/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose5/5

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.

Usage Guidelines4/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
catalog_dirNo
include_previewNo

TDQS

C2.3/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness1/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines1/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
max_itemsNo
document_idNo
ignore_keysNo
ignore_pathsNo
after_output_pathNo
include_manifestsNo
before_output_pathNo
require_active_documentNo
use_default_volatile_ignoresNo

TDQS

B3.4/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness1/5

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.

Parameters1/5

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.

Purpose5/5

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.

Usage Guidelines4/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
diffNo
afterNo
beforeNo
max_addedNo
max_itemsNo
min_addedNo
operationYes
ignore_keysNo
max_changedNo
max_removedNo
min_changedNo
min_removedNo
ignore_pathsNo
expected_addedNo
expected_changedNo
expected_removedNo
require_no_changedNo
require_no_removedNo
expected_counts_deltaNo
use_default_volatile_ignoresNo

TDQS

C2.4/5.0
Behavior2/5

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.

Conciseness3/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose3/5

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.

Usage Guidelines2/5

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.

  1. 118 tool updatesv0.1.0
    • First observedanalyze_naming_issues
    • First observedanalyze_spec_issues
    • First observedapply_changeset
    • First observedapply_file_relink_paths
    • First observedapply_poly_v_grooves
    • First observedapply_relink_paths
    • First observedapply_specification_autofill
    • First observedapply_specification_changes
    • First observedapply_v_belt_grooves
    • First observedbatch_analyze_model_quality
    • First observedbatch_smoke_check_session
    • First observedbuild_file_relink_map_plan
    • First observedbuild_file_relink_plan
    • First observedbuild_relink_map_plan
    • First observedbuild_relink_plan
    • First observedcapture_document_snapshot
    • First observedcheck_file_access
    • First observedclassify_runtime_error
    • First observedcleanup_to_export
    • First observedclear_sketch_entity_constraints
    • First observedclose_document
    • First observedcreate_compression_spring
    • First observedcreate_part_from_scenario
    • First observedcreate_point3d
    • First observedcreate_sketch_arc
    • First observedcreate_sketch_circle
    • First observedcreate_sketch_ellipse
    • First observedcreate_sketch_entities
    • First observedcreate_sketch_line_segment
    • First observedcreate_sketch_point
    • First observedcreate_sketch_polyline
    • First observedcreate_sketch_rectangle
    • First observedcreate_specification
    • First observedcreate_spring_from_size
    • First observedcreate_spw_from_model
    • First observeddelete_sketch_entity
    • First observeddiff_document_snapshots
    • First observedfind_items
    • First observedfind_spring_sizes
    • First observedget_active_document_state
    • First observedget_document_composition
    • First observedget_document_tree
    • First observedget_file_composition
    • First observedget_item_properties
    • First observedget_items
    • First observedget_mcp_tool_catalog
    • First observedget_session_state
    • First observedget_specification
    • First observedget_specification_descriptions
    • First observedinspect_feature
    • First observedinspect_sketch_constraint
    • First observedinspect_sketch_dimension
    • First observedinspect_sketch_entity
    • First observedinspect_sketch_full
    • First observedlist_documents
    • First observedlist_features
    • First observedlist_helical_thread_v1_candidates
    • First observedlist_poly_v_profiles
    • First observedlist_sketch_constraints
    • First observedlist_sketch_dimensions
    • First observedlist_sketch_entities
    • First observedlist_sketches
    • First observedlist_spring_size_catalogs
    • First observedlist_thread_catalog_entries
    • First observedlist_thread_catalog_standards
    • First observedlist_v_belt_profiles
    • First observednormalize_operation_result
    • First observedopen_document
    • First observedparameterize_sketch
    • First observedpreflight_document_context
    • First observedpreview_changeset
    • First observedpreview_compression_spring
    • First observedpreview_file_relink_map_paths
    • First observedpreview_file_relink_paths
    • First observedpreview_flat_belt_pulley
    • First observedpreview_part_scenario
    • First observedpreview_poly_v_groove
    • First observedpreview_property_changes
    • First observedpreview_relink_map_paths
    • First observedpreview_relink_paths
    • First observedpreview_section_by_surface_operation
    • First observedpreview_specification_autofill
    • First observedpreview_specification_changes
    • First observedpreview_specification_generation
    • First observedpreview_spring_from_size
    • First observedpreview_spw_generation
    • First observedpreview_timing_belt_pulley
    • First observedpreview_v_belt_groove
    • First observedprobe_document_readback
    • First observedprobe_model_formulas
    • First observedprobe_model_object_collections
    • First observedrecommend_spring_sizes
    • First observedrefresh_specification_from_model
    • First observedrelink_file_from_map_to_output
    • First observedrelink_file_to_output
    • First observedrelink_from_map
    • First observedrelink_from_map_to_export
    • First observedrelink_project_root
    • First observedrelink_to_export
    • First observedrename_sketch
    • First observedrepair_feature
    • First observedrepair_sketch
    • First observedresolve_poly_v_profile
    • First observedresolve_spring_size
    • First observedresolve_thread_catalog_designation
    • First observedresolve_v_belt_profile
    • First observedsave_document
    • First observedsave_document_as
    • First observedsave_export_copy
    • First observedscan_model_files
    • First observedset_item_properties
    • First observedset_sketch_entity_style
    • First observedshutdown_session
    • First observedsmoke_check_session
    • First observedupdate_sketch_entity_geometry
    • First observedvalidate_spring_size_catalogs
    • First observedverify_document_readback_stability
    • First observedverify_document_snapshot_delta

TDQS

C2.3/5.0

Scored across 118 tools

Disambiguation1/5

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.

Naming Consistency3/5

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.

Tool Count1/5

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.

Completeness3/5

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

ActivityActive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables 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
  • F
    license
    Not graded
    quality
    C
    maintenance
    MCP server that connects AI agents to KOMPAS-3D CAD, enabling automated 3D document operations through deterministic COM/API7 calls.
    1
    -
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables 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
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables 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.
    1
    Apache 2.0