Skip to main content
Glama

Check Design Fit

check_design_fit
Read-only

Validate operating conditions against a component's absolute maximum and recommended ratings, returning PASS, WARNING, FAIL, or INSUFFICIENT_DATA per condition and overall.

Instructions

Costs 5¢ per call. Checks your operating conditions against the part's absolute maximum ratings and recommended operating conditions; returns PASS / WARNING / FAIL / INSUFFICIENT_DATA per condition and overall. Conditions by part type: converters and LDOs take input_voltage, output_voltage, output_current, ambient_temp, efficiency; MOSFETs take supply_voltage (VDS), output_current (ID), ambient_temp, power_dissipation; logic ICs take supply_voltage (VCC). Verdicts:

  • PASS: inside the recommended range, or at or below the derated limit. By default input_voltage and supply_voltage must stay at or below 80% of the absolute-maximum rating when no recommended maximum is known (inside a recommended range is a PASS), and output_current at or below 80% of its tightest rating; derating_pct changes this. Zero headroom on a rated current always warns. This is a screening policy; derating_reference cites the reliability guidance and its limits. Each check reports margin_pct against the raw limit, derating_pct and derated_limit.

  • WARNING: within the limit but above the derated limit, above the recommended maximum but below the absolute maximum, or within 10% of an absolute maximum that isn't derated.

  • FAIL: outside the range or over the limit.

  • INSUFFICIENT_DATA: not safely checkable, usually an ambient_temp that could not be turned into a junction-temperature check. It never counts as a PASS. Each check has limit_type (max / min / range / fixed); checks read from the datasheet text (source='llm') carry source_quote, the row the limit came from. A condition with no limit is listed in unmatched and holds the overall verdict at WARNING. If the ratings came from a different MPN than you asked for, resolved_as and data_quality_warning lead the response. Temperature: ambient_temp is never silently compared with a junction limit. When the part's own dissipation is known, the tool estimates Tj = Ta + Pd × RθJA (RθJA from the datasheet's thermal table) and judges Tj against the junction limits, reported as 'temperature (junction est.)'. Pd by part type: LDO (Vin - Vout) × Iout; switching converter Vout × Iout × (1/η - 1), which needs efficiency; anything else, pass power_dissipation (for a MOSFET, ID² × RDS(on)). Without these the check is INSUFFICIENT_DATA and its note says what to pass. Current ratings are read at ambient_temp (a MOSFET's 25 °C drain current is derated towards its maximum junction temperature). temperature_basis says which basis was used. Stored parameters answer instantly; anything else is read from the datasheet's ratings tables (validation_method says which). A part not yet extracted starts extraction and returns status='extracting' (not charged). A datasheet nobody has read before usually takes 1-3 minutes, 5 or more for a large one or a busy queue. These are estimates, not deadlines. Not for: transient or full thermal analysis (the junction estimate is a steady-state screen), MOSFET SOA curves (analyze_image the SOA graph), passives with no ratings table. Example: check_design_fit('TPS54302', input_voltage=24, output_voltage=5, output_current=2.5, ambient_temp=70, efficiency=0.92)

Input Schema

NameRequiredDescriptionDefault
efficiencyNoConverter efficiency at this operating point, as a fraction (0.92) or a percentage (92). Lets the tool estimate a switching converter's junction temperature.
part_numberYesSpecific manufacturer part number (MPN) or LCSC number (e.g. 'TPS54302DDCR', 'C2837938'). Not a value ('100nF'), description or reference designator ('R1').
ambient_tempNoAmbient temperature TA (°C).
derating_pctNoPercent below a rating a PASS must stay, for input_voltage, supply_voltage and output_current. Default 20 (run at no more than 80% of the rating). 0 turns optional derating off; no current headroom still warns.
input_voltageNoInput voltage / VIN (V). For converters.
output_currentNoOutput current / IOUT (A). For MOSFETs, this is drain current ID.
output_voltageNoOutput voltage / VOUT (V). For converters/LDOs.
supply_voltageNoSupply voltage / VCC / VDD (V). For MOSFETs, VDS; compared against VDS(max) only.
power_dissipationNoThe part's own power dissipation (W), if you have worked it out (e.g. ID² × RDS(on) for a MOSFET). Used for the junction-temperature estimate.
switching_frequencyNoSwitching frequency FSW (kHz). For converters.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed5 schema fields changedv1.4.0
    • addedInput schema / properties / derating_pct
      Added value: +{
      +  "description": "Percent below a rating a PASS must stay, for input_voltage, supply_voltage and output_current. Default 20 (run at no more than 80% of the rating). 0 turns optional derating off; no current headroom still warns.",
      +  "maximum": 50,
      +  "minimum": 0,
      +  "type": "number"
      +}
    • addedInput schema / properties / efficiency
      Added value: +{
      +  "description": "Converter efficiency at this operating point, as a fraction (0.92) or a percentage (92). Lets the tool estimate a switching converter's junction temperature.",
      +  "exclusiveMinimum": 0,
      +  "maximum": 100,
      +  "type": "number"
      +}
    • changedInput schema / properties / part_number / description
      Previous value: -"Specific manufacturer part number to validate. Not a value or description."New value: +"Specific manufacturer part number (MPN) or LCSC number (e.g. 'TPS54302DDCR', 'C2837938'). Not a value ('100nF'), description or reference designator ('R1')."
    • addedInput schema / properties / power_dissipation
      Added value: +{
      +  "description": "The part's own power dissipation (W), if you have worked it out (e.g. ID² × RDS(on) for a MOSFET). Used for the junction-temperature estimate.",
      +  "maximum": 1000,
      +  "minimum": 0,
      +  "type": "number"
      +}
    • changedInput schema / properties / supply_voltage / description
      Previous value: -"Supply voltage / VCC / VDD (V). For MOSFETs, this is VDS (drain-source voltage). NOT used for power dissipation — compared against VDS(max) only."New value: +"Supply voltage / VCC / VDD (V). For MOSFETs, VDS; compared against VDS(max) only."
  2. Changed18 schema fields changedv1.3.2
    • changedInput schema / properties / ambient_temp / description
      Previous value: -"Ambient temperature (C)"New value: +"Ambient temperature TA (°C)."
    • addedInput schema / properties / ambient_temp / maximum
      Added value: +200
    • addedInput schema / properties / ambient_temp / minimum
      Added value: +-65
    • changedInput schema / properties / input_voltage / description
      Previous value: -"Input voltage (V)"New value: +"Input voltage / VIN (V). For converters."
    • addedInput schema / properties / input_voltage / maximum
      Added value: +1500
    • addedInput schema / properties / input_voltage / minimum
      Added value: +0
    • changedInput schema / properties / output_current / description
      Previous value: -"Output current (A)"New value: +"Output current / IOUT (A). For MOSFETs, this is drain current ID."
    • addedInput schema / properties / output_current / maximum
      Added value: +500
    • addedInput schema / properties / output_current / minimum
      Added value: +0
    • changedInput schema / properties / output_voltage / description
      Previous value: -"Output voltage (V)"New value: +"Output voltage / VOUT (V). For converters/LDOs."
    • addedInput schema / properties / output_voltage / maximum
      Added value: +1500
    • addedInput schema / properties / output_voltage / minimum
      Added value: +0
    • changedInput schema / properties / supply_voltage / description
      Previous value: -"Supply voltage (V)"New value: +"Supply voltage / VCC / VDD (V). For MOSFETs, this is VDS (drain-source voltage). NOT used for power dissipation — compared against VDS(max) only."
    • addedInput schema / properties / supply_voltage / maximum
      Added value: +1500
    • addedInput schema / properties / supply_voltage / minimum
      Added value: +0
    • changedInput schema / properties / switching_frequency / description
      Previous value: -"Switching frequency (kHz)"New value: +"Switching frequency FSW (kHz). For converters."
    • addedInput schema / properties / switching_frequency / maximum
      Added value: +10000000
    • addedInput schema / properties / switching_frequency / minimum
      Added value: +0
  3. First observedv1.0.0

TDQS

A4.8/5.0
Behavior5/5

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

Adds substantial behavior beyond the annotations: a 5¢ per-call cost, extraction triggered for unread parts (uncharged), 1-3 minute latency estimates, the default 80% derating screening policy, junction-temperature estimation logic, and the rule that unmatched conditions hold the verdict at WARNING. These are exactly the operational traits annotations do not carry.

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 cost, purpose, and return values, and most sentences earn their place given the tool's genuine complexity. It is nonetheless long and sprawling, with the temperature and verdict details somewhat interleaved, so it falls short of ideal tightness.

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 10-parameter tool with no output schema, the description fully specifies the response shape (per-condition verdicts, margin_pct, derated_limit, limit_type, source_quote, unmatched, resolved_as, data_quality_warning, temperature_basis, status='extracting') and the screening policy. Nothing an agent needs to call it correctly is missing.

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, but the description adds real meaning: which parameters apply to which part type, that efficiency is required for a switching converter's Tj estimate, and the Pd formulas per part type (LDO (Vin-Vout)×Iout, MOSFET ID²×RDS(on)). It stops short of documenting derating_pct's full interaction beyond what the schema already states.

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 (checks operating conditions against a part's ratings) and the exact return vocabulary (PASS/WARNING/FAIL/INSUFFICIENT_DATA per condition and overall). It also delineates scope against siblings with an explicit 'Not for' list naming analyze_image for SOA curves and excluding transient/thermal analysis and passives.

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 guidance by mapping required conditions to part type (converters/LDOs vs MOSFETs vs logic ICs) and provides a worked example call. The 'Not for' section names alternatives (analyze_image for SOA) and exclusions, so an agent can route correctly.

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