Skip to main content
Glama

Which products use a material

products_using_material
Read-onlyIdempotent

Every product that uses a material, with the parts, the form, finish, standard and part number, the quote and the source for each: "which products use aluminium 6061 and for which part", "what flew with Kapton and with what finish or standard". The material is an id (find it with search_materials, or from get_product.materials). part_function narrows to parts with one function. Works for materials with a page (material_state profile) and for reserved ids (state reserved: the id is known from products but has no page yet). Products also listed the material in their flat materials list appear under listed. Orbit and size tags tell you what kind of mission it flew on. An empty answer means no catalogued product names that material.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "material": "<material>"
    },
    "name": "products_using_material"
  }
}

Input Schema

NameRequiredDescriptionDefault
limitNoMaximum products, 1 to 100 (default 30)
materialYesMaterial id, for example aluminium-6061 or pi-kapton-hn
part_functionNoOnly parts with this function

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.3/5.0
Behavior4/5

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

The annotations already cover safety (readOnly, idempotent, non-destructive, closed-world), so the description's job is to add operational context — and it does: it explains reserved-id materials (id known from products, no page yet), what the 'listed' bucket means, that orbit/size tags describe mission type, and that an empty result means no catalogued product names that material.

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?

Purpose is front-loaded in the opening clause and the trailing sentences each add distinct information (id sourcing, reserved ids, listed bucket, empty-result semantics). The first sentence is long and packs examples into an already dense enumeration, which slightly hurts scanability.

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 must carry return-shape information, and it does: per-part fields, quote and source attribution, the 'listed' grouping, and mission tags. Remaining gaps are minor (pagination interaction with limit, exact structure of the response) and are partly covered by the schema's limit parameter.

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 the baseline is 3; the description goes beyond the schema by stating that material is an id with two concrete ways to obtain it (search_materials, get_product.materials) and by clarifying that part_function restricts to parts having that function rather than filtering products.

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 pairing ('every product that uses a material') and immediately enumerates the returned fields (parts, form, finish, standard, part number, quote, source), which distinguishes it from siblings like materials_used_by_function (the inverse direction) and find_materials.

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 concrete query examples ('which products use aluminium 6061 and for which part') and explains how to obtain the required material id via search_materials or get_product.materials, plus when to narrow with part_function. It stops short of explicitly naming an alternative sibling and the condition that would select it, so it is clear context rather than full when/when-not routing.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.