Skip to main content
Glama

Server Details

Manufacturing capability graph for AI agents: materials, processes, tolerances, and instant quotes.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A3.5/5.0

Scored across 20 tools

Disambiguation4/5

Most tools target clearly distinct resources/actions (materials vs equipment vs processes, compare vs filter vs find). The material family is dense — search_materials, compare_materials, find_equivalent_materials, and filter_materials_by_constraint sit close together — but the descriptions explicitly differentiate exact-ID vs messy-input vs constraint use. get_industry_requirements and match_industry_materials also partially overlap, though one returns requirements and the other materials.

Naming Consistency4/5

Nearly all tools follow a predictable snake_case verb_noun pattern (check_*, compare_*, find_*, get_*, filter_*, match_*, calculate_part_mass, search_materials). The single outlier is quote_calc, which drops the noun ordering used everywhere else. One minor deviation keeps this from a 5.

Tool Count4/5

20 tools is on the heavier side of the 16-25 range, but the domain genuinely spans materials, equipment, processes, tolerances, compliance, industry, and quoting, and each tool maps to a distinct lookup/calculation. Nothing appears redundant enough to be padding, though the count is approaching the point where navigation cost rises.

Completeness4/5

The surface covers the full research workflow — resolving materials, comparing options, checking compatibility/compliance/tolerances, matching equipment and processes, and quoting. Minor gaps remain: quoting appears limited to 3D printing (no CNC/injection pricing) and there is no single-detail getter for a material/equipment by ID beyond filter/search, but core paths have no dead ends.

Available Tools

20 tools
calculate_part_massAInspect

Use when the user provides a part volume and material to calculate mass or weight. Returns mass in grams and kilograms. Example: 'How heavy is a 100cm³ aluminum 6061 part?'

NameRequiredDescriptionDefault
volume_cm3YesPart volume in cubic centimeters
material_idYesMaterial_ID from the materials dictionary

TDQS

A3.8/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 usefully discloses the return units ('grams and kilograms'), which matters because there is no output schema, and the tool is implicitly a side-effect-free computation. However it never explicitly states that it is non-mutating or that material_id must resolve against the materials dictionary, so key behavioral context is left implied.

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?

Three short sentences with the trigger front-loaded, followed by the return format and a concrete example. The only minor redundancy is 'mass or weight', and nothing else is wasted.

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 two-parameter pure calculation with no output schema, the description supplies the missing piece an agent needs — the units of the result — plus a usage example. It is close to complete; an explicit note on the material lookup source and the absence of side effects would close the remaining 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 100%, so both parameters are already documented (volume_cm3 with units and minimum, material_id sourced from the materials dictionary). The worked example clarifies the input shape a little, but the description adds no format or constraint detail beyond the schema, so baseline 3 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 states a specific verb and resource ('calculate mass or weight' from 'part volume and material'), which is unambiguous and distinct from the materials-comparison and process-lookup siblings. It stops short of naming which sibling to use instead for adjacent needs (e.g. quote_calc, which likely also consumes mass data), so it does not fully differentiate.

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 opening sentence gives an explicit trigger condition ('Use when the user provides a part volume and material'), which is enough for an agent to route to this tool on a mass/weight question. There is no statement of when *not* to use it or what to do when material is unknown, leaving a small gap.

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

check_equipment_capabilityAInspect

Use when the user asks 'can the Bambu X1C print a 400mm × 400mm × 400mm part?', 'does this machine support 25 micron layer thickness?', 'is this machine capable for this part?'. Returns capable/not-capable with specific gaps.

NameRequiredDescriptionDefault
model_idYes
requiredNo

TDQS

A3.6/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. It usefully discloses the output shape ('capable/not-capable with specific gaps'), and the operation is evidently a read-only check, so there is little risk to disclose. However it says nothing about permissions, whether missing requirements default to capable, or how partial inputs are treated.

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?

Compact and front-loaded: the triggering questions come first, the return behavior last, with no filler. Slightly example-heavy but every element earns its place.

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 read-only capability check with no output schema, the description states the operation, the triggering scenarios, and the return semantics, which is sufficient to call it correctly. The main residual gap is the undocumented material_id and the interaction between model and requirement fields.

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% and the schema contains a nested 'required' object, so the description must compensate. The examples implicitly map build_size_mm (400×400×400) and layer_thickness_micron (25 micron) and model_id (Bambu X1C), but material_id is never illustrated and no parameter is explicitly named or typed.

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 function: check whether a given machine can build a part under specified requirements, returning capable/not-capable. Concrete examples (Bambu X1C, 400mm part, 25 micron layer) make the intent unambiguous and implicitly distinguish it from sibling comparison tools like compare_equipment. It stops short of explicitly naming a sibling to defer to.

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?

Three 'use when the user asks...' phrasings give explicit triggering conditions, which is strong when-to-use guidance. There are no when-not conditions or named alternatives, keeping it below a 5.

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

check_material_environment_compatibilityAInspect

Use when the user describes an operating environment (temperature, humidity, UV, chemicals) and wants to know if a material is suitable. Returns a compatibility rating (excellent/good/fair/poor) and specific risk factors.

NameRequiredDescriptionDefault
environmentYes
material_idYes

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 behavioral burden. It discloses the return format (compatibility rating and risk factors) and implies a read-only check, but does not state permissions, rate limits, data sources, 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.

Conciseness5/5

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

Two sentences, front-loaded with the usage trigger and then the return values, with no wasted words. 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.

Completeness3/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 0% schema description coverage, the description covers purpose and return format but omits parameter details and behavioral/safety context. It is minimally adequate but not fully complete for a tool with required nested inputs.

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 restates environment factors already present as nested property names (temperature, humidity, UV, chemicals). It does not explain material_id, expected value formats, or how to specify chemical exposures, so it fails to compensate for the undocumented schema.

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 specific action (check suitability) and resource (material in an operating environment), plus the return values. It implicitly distinguishes itself from process-compatibility siblings by focusing on the environment, but 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 Guidelines4/5

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

Provides a clear trigger: use when the user describes an operating environment and wants to know material suitability. It does not mention when not to use this tool, prerequisites, or specific alternative tools such as get_material_process_compatibility or compare_materials.

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

check_service_temperatureAInspect

Use when the user specifies an operating temperature and asks if a material is suitable (e.g. 'can ABS handle 80°C?', 'what is the max temp for 6061 aluminum?'). Returns within_range status, min/max service temps, and safety margin.

NameRequiredDescriptionDefault
material_idYes
service_temp_cYesDesired operating temperature in °C

TDQS

A3.7/5.0
Behavior3/5

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

No annotations exist, so the description carries the full burden. It does disclose the return payload (within_range status, min/max service temps, safety margin), which is valuable with no output schema, but it says nothing about data provenance, units for the returned temps, or edge cases such as temperatures outside the rated range.

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?

Two sentences: the first front-loads the usage trigger with examples, the second enumerates the return values. Nothing is wasted and the ordering is ideal for an agent skimming for applicability.

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 two-required-param tool with no annotations and no output schema, the description does cover the outputs, which is the main gap it needed to fill. However, material_id semantics and the meaning/units of the returned min/max values remain unaddressed, leaving an agent partially equipped.

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 coverage is only 50%: service_temp_c has a description and the example ('80°C') reinforces its unit, but material_id is undocumented in both schema and description. The description adds no syntax or sourcing detail (e.g. where a valid material_id comes from), so it does not compensate for the 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 and resource ('checks' whether a material suits a given service temperature) and names the exact returned fields. It is functionally distinguishable from generic siblings like compare_materials, though it never names 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?

It gives an explicit trigger condition ('Use when the user specifies an operating temperature and asks if a material is suitable') plus two concrete example phrasings, which is strong positive routing. It stops short of when-not-to-use or naming a sibling tool for adjacent questions.

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

compare_equipmentAInspect

Use when the user wants to compare specific machines (e.g. 'compare Formlabs Form 3 vs Stratasys J55', 'which machine has better build volume?'). Accepts 2–4 model IDs and optional metric list.

NameRequiredDescriptionDefault
model_idsYes
compare_onNo

TDQS

A3.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 behavioral burden. Comparison implies a read-only operation, but the description says nothing about the returned format, ordering, pagination, or what happens when a requested metric is unavailable for a machine — significant gaps for a tool with zero annotation coverage.

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

Conciseness4/5

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

Two tight sentences, front-loaded with the triggering condition before the parameter summary. Nothing excessive, though the inline examples add a little bulk that could have been trimmed.

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 two-parameter tool with no output schema and no annotations, the description covers the essential 'when' and the input shape but leaves the result behavior (what a comparison returns, how metrics are contrasted) unspecified. Adequate but with a clear 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?

With 0% schema description coverage the description must compensate, and it partially does: it explains that model_ids are model identifiers (2-4 of them) and that compare_on is an optional metric list. However it never enumerates the available metrics (build_volume, speed, tolerance, etc.) nor states what happens when the optional list is omitted.

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 verb and resource ('compare specific machines') and immediately differentiates itself from the material/process comparison siblings via the 'machines' framing plus concrete examples like 'Formlabs Form 3 vs Stratasys J55'. An agent can identify the tool without opening the schema.

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

Usage Guidelines4/5

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

The 'Use when...' clause plus the example questions ('which machine has better build volume?') give clear triggering context. It does not explicitly name the sibling alternatives (compare_materials, compare_processes) to route away from, but the resource distinction is unambiguous.

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

compare_materialsAInspect

Use when the user asks to compare materials (e.g. 'AL6061 vs SS304', 'which plastic is stronger'). Returns a structured comparison table grouped by property. Accepts 2–5 material IDs and an optional list of properties to compare.

NameRequiredDescriptionDefault
propertiesNoOptional: which properties to include. Defaults to density, tensile, yield, max_temp, cost_tier.
material_idsYesList of Material_IDs to compare

TDQS

A4.2/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 burden, and it does disclose real behavioral traits: the return is a structured comparison table grouped by property, and the tool accepts only 2-5 IDs. It omits error behavior for invalid IDs and doesn't explicitly confirm the read-only nature, but for a comparison tool the disclosed behavior is largely sufficient.

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?

Three sentences, front-loaded with the usage trigger, then output shape, then input constraints. No filler, no repetition, and every sentence carries information an agent needs.

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?

There is no output schema, but the description compensates by describing the returned comparison table grouped by property, and it covers trigger, inputs, and limits. The only missing piece is failure behavior for unknown or mismatched material IDs, which keeps it from a 5.

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 100% and both parameters are documented there, including the default property list and the min/max item bounds, so the baseline is 3. The description restates the 2-5 range and the optional properties list without adding format or syntax meaning beyond the 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?

Names a specific verb+resource ('compare materials') and anchors it with concrete examples ('AL6061 vs SS304', 'which plastic is stronger') that make the intent unmistakable against siblings like search_materials or find_equivalent_materials. It also states the output shape and accepted input range, so an agent knows exactly what this call produces.

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?

Opens with an explicit trigger ('Use when the user asks to compare materials'), which is clear when-to-use guidance. It stops short of naming alternatives or stating when NOT to use it (e.g. versus find_equivalent_materials), so it earns a solid 4 rather than a 5.

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

compare_processesAInspect

Use when the user wants to compare manufacturing processes (e.g. 'SLS vs FDM vs SLA comparison', 'which process has better tolerance: CNC or injection molding?'). Accepts 2–5 process IDs and optional metric list.

NameRequiredDescriptionDefault
compare_onNoOptional: metrics to include. Omit for all metrics.
process_idsYes

TDQS

A3.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 entire behavioral burden. Beyond restating the 2-5 ID constraint (which the schema already enforces via minItems/maxItems), it discloses nothing about read-only safety, whether IDs must be valid/existing, error behavior, or what the comparison 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?

Two sentences, front-loaded with the when-to-use condition followed by the input contract. Every clause earns its place, and the parenthetical examples are the only elaboration, which is warranted for a comparison tool.

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 two-parameter tool this is mostly sufficient, but with no output schema and no annotations the description should ideally say what a comparison result looks like (table, metrics, ranking) and how invalid or unknown process IDs are handled. Those gaps leave the agent guessing at the tool's contract.

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 coverage is only 50%: compare_on is documented in the schema but process_ids has no schema description. The description partially compensates by stating '2-5 process IDs' and 'optional metric list', but it adds no format details for the IDs and does not enumerate or characterize the metrics, leaving the parameter story thin.

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 (compare) and resource (manufacturing processes), and the quoted user utterances ('SLS vs FDM vs SLA', 'CNC or injection molding') make the scope unmistakable. It is cleanly distinguishable from sibling tools like compare_materials and compare_equipment by virtue of the 'processes' resource.

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 opening 'Use when the user wants to compare manufacturing processes' gives clear triggering context, reinforced by two realistic example queries. It stops short of naming the alternatives (compare_materials, compare_equipment) or stating when not to use it, so it is clear but not fully routing.

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

filter_materials_by_constraintAInspect

Use when the user specifies material requirements (e.g. 'density < 3 g/cm³', 'tensile > 400 MPa', 'max temp ≥ 200°C'). Returns all materials that pass every constraint. Supports gte, lte, eq, contains operators.

NameRequiredDescriptionDefault
process_idNoOptional: only return materials compatible with this process
constraintsYes

TDQS

A3.6/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. It usefully discloses the AND semantics ('pass every constraint') and the supported operator set, but says nothing about the 8-constraint cap, what happens on zero matches or invalid property names, or whether process_id is a hard pre-filter or a soft ranking factor.

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?

Three short sentences with the usage trigger front-loaded, then the return semantics, then the operator capabilities. The parenthetical examples add length but earn it by disambiguating the constraint format; nothing is redundant with the title.

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 two-parameter, no-annotation, no-output-schema tool, the agent learns what triggers the call, what comes back conceptually, and which operators exist. It still lacks the constraint-count ceiling context, the process_id interaction, and any hint of the properties each returned material carries, leaving meaningful gaps.

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 coverage is 50%; the operator enum and value typing are already documented in the nested schema, and the description's examples and operator list largely restate them while making the intended syntax easier to read. The optional process_id parameter is never mentioned in the description, relying entirely on its schema text.

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 specific verb and resource: filters materials down to those passing a set of property constraints, and the three worked examples make the input shape concrete. It does not, however, differentiate itself from nearby siblings such as search_materials, match_industry_materials, or compare_materials, so an agent still has to infer which of the filtering/search tools applies.

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?

"Use when the user specifies material requirements" is an explicit, actionable trigger, reinforced by three realistic phrasings ('density < 3 g/cm³', 'tensile > 400 MPa'). There is no when-not guidance and no named alternative, so the agent is not told when to prefer search_materials or match_industry_materials instead.

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

find_alternative_processesBInspect

Use when the user asks 'what can replace FDM for this part?', 'alternative to CNC for low volumes?', or needs to switch process due to lead time / cost / material constraints.

NameRequiredDescriptionDefault
process_idYes
constraintsNo
material_idNoOptional: filter alternatives compatible with this material.

TDQS

B3.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 behavioral burden, yet it says nothing about what the tool returns, whether results are ranked, or that it is a read-only query. Only a vague implication of 'find quotations of triggers' exists; behavioral traits are essentially 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?

One front-loaded sentence beginning with 'Use when' with no filler; the examples are useful. It is somewhat list-heavy but every clause 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 lookup tool with no output schema, no annotations, and a nested constraints object, the description should hint at the return set and the meaning of process_id. It covers the trigger well but leaves output and key parameter semantics unspecified.

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 coverage is 33%, so the description must compensate. It loosely references the constraint dimensions (lead time, cost, material), which map to max_lead_days, cost_tier and material_id, but the required process_id and the nested constraints object are not explained.

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 examples ('what can replace FDM', 'alternative to CNC') make the intent clear: return alternative manufacturing processes for a given part/process. However, it never states a clean verb+resource purpose directly and does not distinguish itself from siblings like compare_processes or get_material_process_compatibility.

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?

Strong when-to-use triggers are given: replace a process, switch due to lead time/cost/material constraints. It lacks any explicit 'when not to use' or named alternative sibling (e.g. compare_processes), so routing is good but not complete.

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

find_equipment_by_processAInspect

Use when the user asks 'what machines can do SLS?', 'do you have equipment that can print 300mm × 300mm?', 'which printers support PEEK material?'. Returns matching equipment with build volumes, layer thickness, and availability status.

NameRequiredDescriptionDefault
process_idYes
material_idNoOptional: filter by material compatibility.
build_size_min_mmNo
layer_thickness_max_micronNo

TDQS

A3.6/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 discloses the return payload (build volumes, layer thickness, availability status), which is useful, but says nothing about permissions, rate limits, empty-result behavior, or pagination for a search 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?

Two sentences; the usage examples are front-loaded and each corresponds to a distinct filter, so they earn their place. Slightly verbose but no filler sentences.

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?

There is no output schema, and the description does cover the returned fields, fulfilling that obligation. But for a 4-parameter tool with a nested object and thin schema documentation, filter semantics and behavioral edge cases remain under-specified.

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 coverage is only 25% (only material_id is documented), so the description must compensate. The example queries implicitly map to process_id (SLS), build_size_min_mm (300mm × 300mm), and material_id (PEEK), adding some meaning, but layer_thickness_max_micron and the nested x/y/z structure are never explained.

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 conveys a specific verb+resource through three example queries (finding machines by process, by build size, by material) and states what is returned (build volumes, layer thickness, availability). This distinguishes it reasonably from compare_equipment and check_equipment_capability, though it never names a sibling or gives a crisp one-line statement of 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 example user utterances ('what machines can do SLS?', 'do you have equipment that can print 300mm × 300mm?') provide concrete, actionable when-to-use context tied to different filters. However, there is no 'when-not' guidance and no explicit routing to alternatives such as check_equipment_capability or compare_equipment.

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

find_equivalent_materialsAInspect

Use when the user wants alternatives to a specific material (e.g. 'what can replace SS304?', 'cheaper alternative to titanium'). Returns materials ranked by similarity score. Match criteria include strength, density, cost_tier, process_compat, thermal, corrosion.

NameRequiredDescriptionDefault
material_idYes
max_resultsNo
match_criteriaYes

TDQS

A3.6/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 disclosure burden. It does state the return shape ('materials ranked by similarity score') and the criteria driving the ranking, but says nothing about read-only nature, permissions, or result limits, leaving meaningful gaps 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.

Conciseness4/5

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

Three compact, front-loaded sentences with the usage trigger first, followed by return behavior and criteria. No filler, though the final criteria list partially duplicates the schema enum rather than earning 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 an unannotated, no-output-schema tool, the description covers when to use it and what it returns. It omits the material_id format, the meaning/scale of the similarity score, and max_results defaults, which an agent needs 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?

Schema description coverage is 0% across 3 parameters. The description enumerates the match_criteria values, but those are already the schema's enum, so the text largely restates structured data and adds only the notion that they drive ranking. material_id and max_results (default, min/max) receive no explanation.

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 specific verb+resource (find equivalent/alternative materials) and reinforces it with concrete example queries like 'what can replace SS304?'. It does not explicitly differentiate from sibling tools such as compare_materials or search_materials, so the agent must infer the boundary.

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?

Opens with an explicit trigger ('Use when the user wants alternatives to a specific material') and gives two representative queries, which is clear context. It stops short of naming exclusions or pointing to the sibling tools that handle comparison vs. search, so it lacks the full when-not guidance of a 5.

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

get_equipment_qc_specsBInspect

Use when the user asks about machine certifications, dimensional accuracy, or QC procedures (e.g. 'is this machine ISO certified?', 'what is the dimensional accuracy of the EOS M 290?', 'what inspection methods do you use for this machine?').

NameRequiredDescriptionDefault
model_idYes

TDQS

B3.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 behavioral burden, and it discloses nothing beyond the invocation trigger. It does not say whether this is a read-only lookup, whether an unknown model_id errors or returns empty, what the response contains, or whether the model name must match exactly.

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 front-loaded sentence with the trigger condition first and examples in parentheses; every element is useful. It is slightly example-heavy relative to the amount of actual behavioral information given.

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 single-parameter lookup with no annotations and no output schema, the description conveys the subject matter but not the parameter format or return shape. An agent knows when to call it, but not how to construct or interpret the call fully.

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 coverage is 0% for the single model_id parameter, but the examples ('the EOS M 290', 'this machine') imply it is a machine model identifier. That is meaningful but thin — nothing is said about accepted formats, aliases, or whether an exact model name is required.

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 the concrete content the tool returns (machine certifications, dimensional accuracy, QC procedures) and the example queries make the resource unambiguous, so an agent can tell it apart from check_equipment_capability or get_process_specs. It never states a retrieval verb explicitly, but the three subject areas plus the tool name make the purpose clear without opening the schema.

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

Usage Guidelines4/5

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

The entire description is trigger guidance, with three concrete example utterances covering certifications, accuracy, and inspection methods. It stops short of naming when NOT to use it or which sibling to prefer for adjacent questions (e.g. capability vs QC specs), so it earns a 4 rather than a 5.

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

get_industry_requirementsCInspect

Use when the user asks industry-specific requirements (e.g. 'what materials are used in aerospace?', 'what certifications does the medical device industry require?', 'typical tolerances for automotive parts?').

NameRequiredDescriptionDefault
industry_idYes

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 of behavioral disclosure but provides none: it does not say what is returned, whether data is static or sourced, permission/auth needs, or any limits. Only the examples loosely imply the content types covered.

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 front-loaded sentence with the trigger first and examples embedded, no filler. It is efficient, though the brevity comes at the cost of substance rather than being tight and 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?

No annotations and no output schema, so the description should explain behavior, parameter format, and return content, but it covers only the usage trigger. An agent knows when to call it but not what industry_id to pass or what it gets back.

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 single parameter industry_id has 0% schema description coverage, and the description never explains its expected format or valid values. The examples (aerospace, medical device, automotive) are the only hint that it takes industry names, which is weak compensation for the coverage 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 essentially restates the name ('industry-specific requirements') and leads with a usage trigger rather than a statement of what the tool does or returns. The three examples do hint at the resource scope (materials, certifications, tolerances), but the core purpose is vague and it does not distinguish itself from siblings like match_industry_materials or get_material_compliance.

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 gives explicit triggering conditions ('Use when the user asks industry-specific requirements') with three concrete example questions that map real user phrasings to this tool. It lacks any when-not guidance or named alternatives, 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.

get_iso2768_tolerancesAInspect

Use when the user asks about ISO 2768 tolerances (e.g. 'what is ISO 2768-m tolerance for 50mm?', 'ISO 2768 fine grade flatness?', 'general tolerance for machined parts'). Returns the ±tolerance value, range string, and applicable dimension range.

NameRequiredDescriptionDefault
gradeYesf=Fine, m=Medium, c=Coarse, v=Very Coarse
tolerance_typeYes
nominal_dimension_mmYes

TDQS

A3.9/5.0
Behavior4/5

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

No annotations exist, so the description carries the full burden, and it does disclose the return content (±tolerance value, range string, applicable dimension range), which is valuable given there is no output schema. It does not note the tool is a side-effect-free calculation, but for a stateless lookup there is little additional behavior to expose.

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?

Front-loads the trigger phrase and follows with compact illustrative examples and a returns clause. Slightly redundant examples, but every sentence contributes and nothing is buried.

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?

With no output schema, the description usefully enumerates return fields, and it covers the trigger context and required inputs via examples. The main gap is the undocumented 'tolerance_type' parameter, but overall an agent has enough to invoke 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 coverage is only 33% (only 'grade' is documented); 'tolerance_type' and 'nominal_dimension_mm' rely on enum names and the schema's name/min/max. The examples ('ISO 2768-m tolerance for 50mm', 'fine grade flatness') implicitly map to the parameters, adding some meaning, but explicit per-parameter semantics are still missing.

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 specific verb+resource ('get ISO 2768 tolerances') and reinforces it with three concrete query examples. It is unambiguously a lookup tool for general tolerancing data, though it makes no explicit reference to any sibling (none of which overlap, so differentiation is not really needed).

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 leading 'Use when the user asks about...' clause plus worked examples give a clear triggering context. It does not state any exclusion or alternative path, but there is no overlapping sibling that would require one.

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

get_material_complianceAInspect

Use when the user needs to know if a material meets regulatory requirements (e.g. 'is this plastic RoHS compliant?', 'does this aluminum meet FDA requirements?'). Returns compliance status for RoHS, REACH, FDA, ISO, ASTM, CE.

NameRequiredDescriptionDefault
standardsNoOptional: check specific standards only. Omit to return all known compliance data.
material_idYes

TDQS

A3.8/5.0
Behavior3/5

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

With no annotations, the description carries full behavioral burden. It does disclose the return payload (compliance status across RoHS, REACH, FDA, ISO, ASTM, CE), which is valuable since no output schema exists, but it says nothing about lookup failures, unknown/unsupported material behavior, permissions, or latency. Adequate but leaving meaningful 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?

Two sentences, front-loaded with the trigger condition, and the parenthetical examples are short and directly usable for query matching. No filler.

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 2-parameter read tool with no output schema and no annotations, the description covers the core contract (what it answers, and what the response contains). Missing only edge details: material_id resolution/format and behavior for invalid or unsupported standards.

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 coverage is 50%: the 'standards' parameter is self-documenting, while material_id has no description in either place. The description adds no semantics for material_id (format, source, whether it must already exist) and its enumeration of the standards only restates the schema enum.

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+resource (check a material's regulatory compliance) and backs it with two concrete user-phrasing examples ('is this plastic RoHS compliant?'). It never names a sibling tool, so the agent must infer the boundary against near-neighbors like check_material_environment_compatibility or filter_materials_by_constraint, which keeps it below 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 Guidelines4/5

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

"Use when the user needs to know if a material meets regulatory requirements" is an explicit trigger condition, reinforced by the example queries. There is no guidance on when NOT to use it or which sibling to reach for instead (e.g. environment compatibility vs. regulatory compliance).

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

get_material_process_compatibilityAInspect

Use when the user asks which processes can be used with a material (e.g. 'can titanium be FDM printed?', 'what processes work with PEEK?'). Returns compatible and incompatible process lists.

NameRequiredDescriptionDefault
material_idYes
process_idsNoOptional: check specific processes only. Omit to return all.

TDQS

A3.8/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, and it does disclose the return shape (compatible and incompatible lists). However, it says nothing about permissions, ID format expectations, or whether results are cached/authoritative. Adequate for a benign read lookup, but thin for a zero-annotation 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?

Two sentences, front-loaded with the trigger condition and backed by two short examples, followed immediately by the return description. No filler and nothing to trim.

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 simple two-parameter lookup with no output schema, the description covers the trigger, the output, and a filter option well enough to call it correctly. The main gap is the undocumented material_id expectation, which an agent would have to infer from sibling search tools.

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 coverage is 50%: process_ids is documented in-schema as an optional filter ('Omit to return all'), while material_id is undocumented anywhere. The description adds no meaning beyond the schema — it does not explain what a material_id is or how process_ids interacts with the result lists.

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 and resource: it returns compatible and incompatible process lists for a given material, reinforced by concrete user-query examples ('can titanium be FDM printed?'). This is clear enough to distinguish it from environment-compatibility siblings, though it never names an alternative tool 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?

'Use when the user asks which processes can be used with a material' gives a clear triggering context with two worked examples. It stops short of stating when NOT to use it or naming the sibling (e.g. check_material_environment_compatibility) as the preferred alternative.

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

get_process_specsAInspect

Use when the user asks about process specs, capabilities, or constraints (e.g. 'what is the tolerance of SLS?', 'what is the build volume of FDM?', 'what lead time for CNC machining?'). Returns category, build size, tolerance, compatible materials, lead time, and surface finish.

NameRequiredDescriptionDefault
process_idYes

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 must carry the full behavioral burden. 'Returns ...' discloses that this is a read-only lookup, which is useful, but it says nothing about what happens with an unknown or invalid process_id, whether results are cached/static, or any auth or rate constraints. Adequate but thin for a zero-annotation 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?

Two sentences: the first front-loads the usage trigger with examples, the second enumerates return fields. No filler or repetition, though the field list is somewhat list-like and could be trimmed to reference the output structure.

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?

Since no output schema exists, enumerating the returned fields is genuinely necessary and done well. The remaining gap is the process_id input semantics, which is the one thing an agent must get right to invoke the tool successfully.

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 the description never mentions process_id at all — it doesn't say what identifier format is expected, whether it is a slug or enum-like value, or how to discover valid values. The only parameter that gates a correct call is completely undocumented in both schema and prose.

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 retrieval action and enumerates the exact fields returned (category, build size, tolerance, compatible materials, lead time, surface finish), which distinguishes it from siblings like get_equipment_qc_specs or get_material_compliance. It lacks a crisp opening verb+resource phrase, but the intent is unambiguous.

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 gives explicit trigger conditions with three concrete user-question examples ('what is the tolerance of SLS?', 'build volume of FDM?', 'lead time for CNC machining?'), which is strong context. However, it never names an alternative tool (e.g., compare_processes or find_alternative_processes) or states when NOT to use it, so routing among siblings remains partly inferential.

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

match_industry_materialsBInspect

Use when the user asks 'what materials are approved for medical devices?', 'best lightweight materials for aerospace?', 'food-safe materials for injection molding?'. Cross-references industries and materials dictionaries.

NameRequiredDescriptionDefault
process_idNoOptional: filter by process compatibility.
industry_idYes
requirementsNo

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 behavioral burden. 'Cross-references ... dictionaries' hints it is a lookup/join, but the description never states that it is read-only/non-destructive, what the result set looks like, whether results are paginated or ranked, or any limits. For a query tool with zero annotation coverage this is a significant gap.

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

Conciseness4/5

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

Two sentences that are front-loaded with the failure-mode examples an agent would pattern-match against, then a short statement of what it does. No filler, though the example list is on the heavy side.

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 1 required and 2 optional parameters at 33% schema coverage, no annotations, and no output schema, the description leaves too much unspecified: the required industry_id is never described, requirement semantics are unstated, and return behavior is absent. It is not sufficient 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 33%: only process_id carries a description, while the required industry_id and the requirements array are undocumented. The description adds no meaning about industry_id values or how requirements interact with industry_id, so it fails to compensate for the low 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 conveys a specific resource and operation through concrete example queries (medical device materials, aerospace lightweight materials, food-safe injection molding materials) plus 'cross-references industries and materials dictionaries.' This makes the matching-to-industry purpose clear. It does not explicitly differentiate from close siblings like get_industry_requirements, get_material_compliance, or filter_materials_by_constraint, which keeps it from 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 Guidelines4/5

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

The 'Use when the user asks...' framing with three concrete query phrasings gives clear contextual guidance on when the tool applies. However, it names no alternatives or exclusion conditions (e.g., when to prefer search_materials or filter_materials_by_constraint instead), 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.

quote_calcAInspect

Use this tool to CALCULATE a 3D printing price. Provide material_name, color, lead_time (must match the 3dp-pricing dictionary), quantity, and either weight_g or volume_cm3 — or an uploaded file_key (obtained from /v1/uploads/presign + /v1/uploads/complete) which is parsed to get volume. This tool does NOT create an order; it returns part_price / total / order_url. Output is desensitized (no unit prices).

NameRequiredDescriptionDefault
notesNoOrder-level notes (applies to all parts).
partsYesOne or more part lines. Each line is priced independently.

TDQS

A4.3/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 burden and does well: it discloses that the operation is non-mutating, lists the return shape (part_price / total / order_url), and warns the output is desensitized (no unit prices) — a non-obvious behavioral trait. It omits auth/permission requirements, which keeps it from a 5.

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?

Front-loads the core action before enumerating inputs, and each clause adds information (inputs, precedence, exclusion, return shape). Dense but largely waste-free; the uppercase emphasis and dashes make it slightly busy.

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?

No output schema exists, but the description compensates by naming the returned fields and the desensitized nature of the response, plus the required inputs. An agent has enough to call it correctly; only auth/error behavior is unaddressed.

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

Parameters4/5

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

Schema coverage is 100%, so 3 is the baseline, but the description adds the weight_g/volume_cm3/file_key precedence and the provenance of file_key (uploaded via /v1/uploads/presign + /v1/uploads/complete, parsed for volume) — workflow detail not present in the 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?

States a specific verb (CALCULATE) and resource (3D printing price), and immediately rules out the adjacent action with 'This tool does NOT create an order.' The pricing focus clearly separates it from the material/equipment/process comparison siblings.

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?

Gives clear context for invocation (the required part fields and the weight_g vs volume_cm3 vs file_key choice) and an explicit exclusion ('does NOT create an order'). It never names an alternative sibling or states when a different tool is preferable, 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.

search_materialsAInspect

Use to resolve a user's material description (industry grade name like 'PA12', a colloquial term like 'nylon', a Chinese term, or a vague description) into concrete materials.csv entries. Unlike compare_materials/find_equivalent_materials (which need an exact known ID), this tool accepts messy input and returns a ranked list of candidates — use it as the first step when you don't already know the exact material_id. If multiple candidates come back, ask the user to pick one rather than guessing. Optionally narrow by category_hint (Plastic/Metal/Rubber/Resin/Powder Metals/Powder Polymers) or process_filter (e.g. 'Selective Laser Sintering', 'SLS', 'Injection Molding') when the context already implies a manufacturing process.

NameRequiredDescriptionDefault
limitNoMax candidates to return. Defaults to 10.
queryYesUser's material description, ideally already normalized to English (e.g. 'PA12', 'nylon', '316 stainless steel').
category_hintNoOptional coarse category filter matched against Material_Category(L1)/Material_Sub-Category(L2).
process_filterNoOptional manufacturing process substring filter matched against Compatible_Processes, e.g. 'SLS', 'Selective Laser Sintering', 'Injection Molding'.

TDQS

A4.6/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 burden and does well: it discloses that the tool tolerates messy input and returns a ranked candidate list, and it warns against guessing. It omits auth/rate-limit or data-source constraints, but for a read/search tool those are minor gaps.

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?

Front-loaded with purpose, then routing guidance, then the optional-filter note; each sentence contributes. It is dense and slightly long, but no sentence is redundant or filler.

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 4-param search tool with no output schema, the description covers purpose, routing, edge-case handling (multiple candidates), and optional filters — everything an agent needs to call it correctly. Return-shape explanation is not required given no output schema, yet it still describes the ranked-list return.

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

Parameters4/5

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

Schema coverage is already 100%, so the schema documents each parameter. The description still adds value by listing the category_hint enum values in-context and giving concrete process_filter substrings ('SLS', 'Selective Laser Sintering', 'Injection Molding') with the condition under which to apply them.

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 verb+resource: resolving a user's material description (industry grade, colloquial, Chinese, or vague) into concrete materials.csv entries. It explicitly contrasts itself against compare_materials/find_equivalent_materials, so the agent can distinguish it 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 Guidelines5/5

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

Gives explicit when-to-use (first step when the exact material_id is unknown, contrasted with siblings that need an exact ID) and when to use the optional filters (when context implies a manufacturing process). It also prescribes a workflow: ask the user to pick if multiple candidates come back rather than guessing.

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. 20 tool updates
    • First observedcalculate_part_mass
    • First observedcheck_equipment_capability
    • First observedcheck_material_environment_compatibility
    • First observedcheck_service_temperature
    • First observedcompare_equipment
    • First observedcompare_materials
    • First observedcompare_processes
    • First observedfilter_materials_by_constraint
    • First observedfind_alternative_processes
    • First observedfind_equipment_by_process
    • First observedfind_equivalent_materials
    • First observedget_equipment_qc_specs
    • First observedget_industry_requirements
    • First observedget_iso2768_tolerances
    • First observedget_material_compliance
    • First observedget_material_process_compatibility
    • First observedget_process_specs
    • First observedmatch_industry_materials
    • First observedquote_calc
    • First observedsearch_materials

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Perplexity for social: ask what competitors are running across social and get answers grounded in real ad and creative data, not guesses.
    2
    Apache 2.0
  • A
    license
    A
    quality
    C
    maintenance
    Enables brand visibility monitoring across major AI platforms like ChatGPT, Claude, Gemini, and Perplexity. It allows users to track visibility scores, analyze competitor data, and receive actionable insights to improve AI-generated brand recommendations.
    16
    4 npm
    1
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Browse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources