Skip to main content
Glama

Moltline Shipping Maths

Server Details

Dimensional weight, parcel fit, landed cost and freight class. 4 of 6 tools free.

Ownership verified
Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
GarphenGate/moltline-mcp
GitHub Stars
0
Server Listing
moltline-mcp

TDQS

A4.8/5.0

Scored across 6 tools

Disambiguation5/5

Each tool serves a clearly distinct calculation: billable weight, free shipping break-even, freight class from density, landed cost, box selection, and rate card generation. The descriptions explicitly cross-reference which tool to use instead when there's potential overlap, eliminating ambiguity.

Naming Consistency4/5

Tool names follow a consistent lowercase snake_case style, but the pattern is mostly noun phrases (dim_weight, freight_class, rate_card) with one deviation (parcel_fit uses a noun+verb combo). This is minor and does not hinder readability.

Tool Count5/5

With 6 tools, the set is well-scoped for a shipping mathematics server. Each tool addresses a distinct functional need without redundancy, fitting comfortably in the ideal range.

Completeness5/5

The surface covers the core shipping calculations: dimensional weight, packaging selection, freight classification, landed cost, pricing thresholds, and rate tables. No obvious missing operations for the stated domain, especially given the read-only and idempotent nature of the tools.

Available Tools

6 tools
dim_weightDim WeightA
Read-onlyIdempotent
Inspect

Work out whether a parcel bills on its size or its weight. FREE.

Carriers charge the greater of actual weight and dimensional weight, so a light bulky box costs more than the scale suggests. Typical input {"length": 18, "width": 12, "height": 10, "actual_weight": 6} returns {"cubic": 2160.0, "dim_weight": 15.54, "actual_weight": 6.0, "billable_weight": 15.54, "billed_on": "dimensional", "overage": 9.54, "divisor_used": 139.0, "note": "..."}.

Use when deciding whether a smaller box is worth the packing effort, or why an invoice exceeded the scale weight. Not for choosing a box from a list of candidates — that is parcel_fit. Errors: on invalid, missing, or malformed input this tool never raises a protocol error — it returns {"error": ""} (for example {"error": "custom_divisor must be greater than 0 when divisor is 'custom'"}). Every call is read-only and idempotent, so after correcting the input it is always safe to retry.

ParametersJSON Schema
NameRequiredDescriptionDefault
widthYesSecond side, same unit as length. Must be greater than 0.
heightYesThird side, same unit as length. Must be greater than 0.
lengthYesLongest side of the packed parcel, in inches (or centimetres when using a metric divisor). Must be greater than 0.
divisorNoWhich published divisor to apply. "ups_daily" is 139 and "ups_retail" is 166 cubic inches per pound, as UPS states them; "usps" is 166; the metric options are cubic centimetres per kilogram. Use "custom" to supply a contracted divisor.ups_daily
actual_weightYesScale weight in pounds (or kilograms with a metric divisor). Must be greater than 0.
custom_divisorNoYour contracted divisor, used only when divisor is "custom". Must be greater than 0 in that case.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already declare read-only, idempotent, and non-destructive behavior, and the description adds valuable context beyond that: it never raises a protocol error, returns a structured error object, and is safe to retry after correcting input. The example output also clarifies what the caller can expect.

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

Conciseness5/5

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

The description is information-dense and well-structured: purpose, example, usage guidance, exclusions, and error behavior are all covered in a compact block. Every sentence contributes meaningful guidance without unnecessary padding.

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 tool with 6 parameters, rich annotations, and an output schema, the description covers all essential context: what it computes, when to use it, how it behaves on errors, and its safety profile. The output schema handles return-value details, so the description does not need to enumerate every output field.

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 adds extra meaning through a typical input/output example and a specific error example involving custom_divisor. It does not repeat every parameter definition but demonstrates how the parameters interact, which is useful 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?

The description opens with a specific verb and resource: 'Work out whether a parcel bills on its size or its weight.' It clearly distinguishes the tool from siblings by explicitly naming parcel_fit as the alternative for box selection.

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?

The description gives explicit use cases: deciding whether a smaller box is worth packing effort, or explaining why an invoice exceeded scale weight. It also states what the tool is NOT for and points to parcel_fit as the correct alternative.

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

free_shipping_thresholdFree Shipping ThresholdA
Read-onlyIdempotent
Inspect

Find the order value at which free shipping stops costing you money. PREMIUM (license).

Break-even is where the gross margin on the order covers the shipping you absorb. Typical input {"gross_margin_pct": 45, "ship_cost": 7.5, "current_aov": 38, "target_uplift_pct": 15} returns {"break_even": 16.67, "suggested_threshold": 43.7, "above_current_aov_by": 5.7, "rationale": "..."}.

Use when setting or defending a free-shipping bar. Not for what shipping should cost when it is not free — that is rate_card. Errors: on invalid, missing, or malformed input this tool never raises a protocol error — it returns {"error": ""}. Every call is read-only and idempotent, so after correcting the input it is always safe to retry.

ParametersJSON Schema
NameRequiredDescriptionDefault
ship_costYesWhat one shipment actually costs you to send.
current_aovYesYour current average order value.
gross_margin_pctYesGross margin on a typical order, e.g. 45 for 45%. Must be above 0 and at most 100.
target_uplift_pctNoHow far above current AOV you want the threshold set, to pull baskets up. Default 0, which returns break-even.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.9/5.0
Behavior5/5

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

Beyond the annotations (readOnlyHint, idempotentHint, destructiveHint), the description discloses critical runtime behavior: it never raises a protocol error and instead returns an error object with instructions on how to fix invalid input. It also reinforces that every call is read-only and idempotent, making retry safe. This meaningfully supplements the structured metadata.

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

Conciseness5/5

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

The description is efficiently structured: a one-line purpose, a one-line break-even explanation, a concrete example, an explicit usage guideline, and an error/safety note. Every sentence earns its place and the most important information is front-loaded.

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?

Given the tool has four parameters, a full output schema, annotations, and related sibling tools, the description is complete: it covers purpose, use context, exclusions, error behavior, idempotency, and a sample input/output. No significant operational gap remains for an agent to select and invoke it correctly.

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 parameter descriptions already carry the core burden. The description adds value with a fully worked example ('Typical input {"gross_margin_pct": 45, ...} returns ...') that demonstrates how the parameters combine and what output relationships look like, which is more than the schema alone provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and resource: 'Find the order value at which free shipping stops costing you money.' It clearly differentiates itself from sibling tools by explicitly naming rate_card as the alternative for non-free shipping cost, so the agent can distinguish this tool from its siblings.

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?

The description says 'Use when setting or defending a free-shipping bar' and explicitly excludes the alternative case: 'Not for what shipping should cost when it is not free — that is rate_card.' This gives clear when-to-use and when-not-to-use guidance.

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

freight_classFreight ClassA
Read-onlyIdempotent
Inspect

Derive a US LTL freight class from density. FREE.

Density in pounds per cubic foot maps to a class on the published NMFC density scale. Typical input {"length": 48, "width": 40, "height": 36, "weight": 400} returns {"cubic_feet": 40.0, "density_pcf": 10.0, "density_class": "100", "caveat": "..."}.

Use for a first estimate before a carrier quote. Not as a final classification: NMFC also weighs stowability, handling and liability, so a carrier can and does reclassify. Errors: on invalid, missing, or malformed input this tool never raises a protocol error — it returns {"error": ""} (for example {"error": "dimensions produce zero volume"}). Every call is read-only and idempotent, so after correcting the input it is always safe to retry.

ParametersJSON Schema
NameRequiredDescriptionDefault
unitsNo"in_lb" for inches and pounds, or "cm_kg" for centimetres and kilograms. Default "in_lb".in_lb
widthYesSecond side. Must be greater than 0.
heightYesThird side, including the pallet. Must be greater than 0.
lengthYesLongest side of the palletised freight. Must be greater than 0.
weightYesGross weight including the pallet. Must be greater than 0.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.7/5.0
Behavior5/5

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

The annotations already declare readOnlyHint, idempotentHint, and destructiveHint, but the description adds crucial behavioral details beyond these. It explicitly states that invalid input never raises a protocol error, instead returning a structured error object, and that the tool is read-only and idempotent, making retries safe. This discloses error-handling behavior not present in annotations and enriches the agent's understanding of runtime behavior.

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

Conciseness5/5

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

The description is concise yet information-dense. It is front-loaded with the purpose and example, followed by usage constraints and error behavior. Every sentence serves a purpose: purpose, typical mapping, example, context for use, caveat about NMFC factors, and error handling. No unnecessary fluff; it effectively communicates the essentials in a compact format.

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?

Given the tool's moderate complexity and strong schema + annotations, the description covers all critical aspects: what it computes, when to use it, limitations, error handling, and idempotency. An output schema exists (though not shown) and is not required to be explained. The description is complete enough for an agent to decide when to invoke it and what to expect on both success and failure.

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%—all parameters are described in the input schema. The description's example input/output adds concrete usage context but does not introduce meaning beyond the schema's field descriptions. Hence, the baseline of 3 applies, as the description does not compensate for any gaps nor does it deepen parameter semantics beyond the example.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool

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?

The description explicitly states when to use the tool: 'Use for a first estimate before a carrier quote.' It also clearly excludes its use as a final classification: 'Not as a final classification: NMFC also weighs stowability, handling and liability, so a carrier can and does reclassify.' This gives clear guidance on appropriate usage and when to resort to alternatives (carrier quotes).

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

landed_costLanded CostA
Read-onlyIdempotent
Inspect

Total what a unit really costs once freight, duty and fees are in. FREE.

Duty is applied to goods value, tax to goods plus duty plus freight — the common import treatment — and the order is spelled out in the response so you can check it against your own broker's method. Typical input {"unit_cost": 8.5, "quantity": 200, "freight_total": 640, "duty_pct": 6.5, "tax_pct": 0} returns {"goods": 1700.0, "duty": 110.5, "freight": 640.0, "tax": 0.0, "total_landed": 2450.5, "landed_unit_cost": 12.25, ...}.

Use before setting a price on imported stock. Not for the margin that price leaves you — that is the dropship server's margin_check. Errors: on invalid, missing, or malformed input this tool never raises a protocol error — it returns {"error": ""}. Every call is read-only and idempotent, so after correcting the input it is always safe to retry.

ParametersJSON Schema
NameRequiredDescriptionDefault
tax_pctNoImport VAT or GST as a percentage of goods plus duty plus freight, e.g. 20. Default 0.
duty_pctNoImport duty as a percentage of goods value, e.g. 6.5. Default 0.
quantityNoUnits in the shipment. Must be at least 1. Default 1.
unit_costYesEx-works cost of one unit in your currency. Must be greater than 0.
other_feesNoBrokerage, port and handling charges for the shipment. Default 0.
freight_totalNoTotal freight and insurance for the whole shipment, not per unit. Default 0.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A5/5.0
Behavior5/5

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

Matches annotations (read-only, idempotent, non-destructive) and adds details about error handling (returns error object instead of raising protocol errors) and retry safety. Provides extra transparency beyond the annotations.

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?

Despite being detailed, the description is well-structured: purpose, formula, example, usage instructions, and error handling. Each sentence adds value without redundancy, fitting the complexity of the tool.

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?

Covers all necessary aspects: calculation logic, input parameters, example output, usage guidance, and error behavior. The presence of an output schema and complete parameter descriptions means no critical information is missing.

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

Parameters5/5

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

Schema coverage is 100% and parameter descriptions are detailed (e.g., freight_total is specified as 'for the whole shipment, not per unit'). The description further clarifies the roles of duty and tax parameters in the calculation.

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?

Clearly states the tool computes landed cost including freight, duty, and taxes, with an example. It distinguishes from sibling tools by explicitly noting it is not for margin calculation (margin_check) and is for pricing imported stock.

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?

Explicitly instructs to use before setting a price on imported stock and warns not to use for margin calculations, directing to a sibling tool. Also explains the calculation order and provides an example, giving clear usage context.

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

parcel_fitParcel FitA
Read-onlyIdempotent
Inspect

Pick the smallest box an item actually fits in, allowing for padding. FREE.

Tries every rotation of the item against every box, so an item that only fits diagonally-oriented is still found. Typical input {"item_length": 10, "item_width": 6, "item_height": 4, "box_options": [[12, 9, 4], [14, 10, 6]]} returns {"fits": [{"box": [14, 10, 6], "cubic": 840.0, "slack": [2, 2, 0]}], "best": [14, 10, 6], "rejected": [...]}.

Use when choosing packaging from stock. Not for what the carrier will bill once a box is chosen — that is dim_weight. Errors: on invalid, missing, or malformed input this tool never raises a protocol error — it returns {"error": ""} (for example {"error": "box_options must contain at least one [l, w, h] box"}). Every call is read-only and idempotent, so after correcting the input it is always safe to retry.

ParametersJSON Schema
NameRequiredDescriptionDefault
paddingNoCushioning allowance added to every item side before the comparison, in the same unit. Default 1.0; use 0 for a bare fit.
item_widthYesItem's second side, same unit. Must be greater than 0.
box_optionsYesCandidate inner box dimensions, each a list of exactly three positive numbers, e.g. [[12, 9, 4], [14, 10, 6]].
item_heightYesItem's third side, same unit. Must be greater than 0.
item_lengthYesItem's longest side, in inches. Must be greater than 0.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.8/5.0
Behavior5/5

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

The description adds significant behavioral context beyond the annotations. It mentions that the tool is 'FREE' (no cost implications), which is not in the annotations. It explains the algorithm behavior ('Tries every rotation'), the return format (including 'rejected' field), and error behavior (never raises protocol errors, returns error objects). It also confirms read-only and idempotent nature, which aligns with the annotations, adding detail about retry safety.

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

Conciseness4/5

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

The description is well-structured with a clear opening statement, an example, usage guidance, and error handling. It is somewhat lengthy but each sentence serves a purpose. The first sentence is front-loaded and grabs attention. It could be slightly more concise, but the detail is justified for clarity, earning a 4.

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?

The tool is moderately complex with 5 parameters and an output schema, but the description provides comprehensive guidance: it explains the input format, gives a concrete example with expected output, clarifies the algorithm's behavior, and covers error cases. Since the output schema exists, the description does not need to explain return values in depth, but it does highlight the 'rejected' field, which is helpful. The description is complete for the tool's complexity.

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

Parameters4/5

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

The input schema covers all parameters with descriptions, and the description adds examples of typical input. However, the description provides additional context for the 'padding' parameter by explaining it as 'Cushioning allowance added to every item side' and mentions the default is 1.0, but it could go further in explaining units or implications. Since schema_coverage is 100%, the baseline is 3, and the description adds some extra value, so a 4 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Pick the smallest box an item actually fits in, allowing for padding.' It specifies the verb (pick), resource (box), and the key qualification (smallest, with padding). It distinguishes itself from siblings by explicitly noting it is not for carrier billing, which is 'dim_weight'. The example input/output further clarifies the function.

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?

The description provides explicit guidance: 'Use when choosing packaging from stock. Not for what the carrier will bill once a box is chosen — that is dim_weight.' This clearly states when to use the tool and explicitly names an alternative tool (dim_weight) for a different scenario. It also mentions error handling and retry safety, which guides usage in failure cases.

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

rate_cardRate CardA
Read-onlyIdempotent
Inspect

Turn a cost model into a customer-facing weight-banded price table. PREMIUM (license).

Prices each band at its upper bound so you never under-charge inside a band, then rounds up to a tidy increment. Typical input {"base_cost": 4.2, "cost_per_lb": 0.65, "bands_lb": [1, 2, 5, 10], "margin_pct": 25} returns {"bands": [{"up_to_lb": 1, "cost": 4.85, "price": 6.5}, ...], "over_top_band": "quote individually"}.

Use when publishing shipping prices customers pay. Not for the cut-off at which shipping becomes free — that is free_shipping_threshold. Errors: on invalid, missing, or malformed input this tool never raises a protocol error — it returns {"error": ""} (for example {"error": "bands_lb must contain at least one upper bound"}). Every call is read-only and idempotent, so after correcting the input it is always safe to retry.

ParametersJSON Schema
NameRequiredDescriptionDefault
bands_lbYesUpper weight bound of each band in ascending order, e.g. [1, 2, 5, 10]. At least one band, each greater than 0.
round_toNoIncrement to round each published price up to, e.g. 0.5 or 1. Default 0.5.
base_costYesFixed cost per shipment before weight, e.g. pick, pack and label. Must be greater than 0.
margin_pctNoMargin added on top of cost, e.g. 25 for 25%. Default 0.
cost_per_lbYesMarginal cost per pound. Use 0 for a flat rate card.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already cover read-only, idempotent, and non-destructive behavior, so the bar is lower. The description adds valuable non-obvious behavior: pricing at the upper bound, rounding up to a tidy increment, and returning an error object instead of raising a protocol error. This goes beyond the annotation metadata and gives the agent important expectations for error handling and retry safety.

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

Conciseness5/5

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

The description is long but every sentence earns its place: purpose, pricing behavior, example, usage guideline, sibling contrast, error behavior, and retry safety. It is well-structured with clear breaks between these concerns and contains no 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?

Given the tool's complexity, the description covers purpose, usage, pricing algorithm, error behavior, idempotency, and a concrete example. An output schema exists, so return-value details need not be repeated. The contrast with free_shipping_threshold addresses the most likely sibling ambiguity. This is complete for an agent selecting and invoking the tool correctly.

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

Parameters4/5

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

The input schema already provides 100% parameter descriptions, so the baseline is 3. The description adds a concrete input/output example that clarifies how base_cost, cost_per_lb, bands_lb, and margin_pct interact, and it explains the rounding behavior. This enriches the schema without duplicating it.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb+resource statement: 'Turn a cost model into a customer-facing weight-banded price table.' It clearly distinguishes itself from the sibling free_shipping_threshold by explicitly saying it is not for that cutoff, and the example input/output makes the tool's function concrete.

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?

The description gives explicit usage guidance: 'Use when publishing shipping prices customers pay' and directly contrasts with free_shipping_threshold as the alternative tool. This is exactly the kind of when-to-use vs. when-not-to-use guidance that helps an agent select the correct tool.

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. Dates show when Glama detected each change.

  1. 6 tool updates
    • First observeddim_weight
    • First observedfree_shipping_threshold
    • First observedfreight_class
    • First observedlanded_cost
    • First observedparcel_fit
    • First observedrate_card

Frequently Asked Questions

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    Live USPS, UPS, FedEx and DHL Express parcel rates from a US origin, domestic or to Canada, the UK, Germany and Australia, from a plain-words item description: no scale, no account, no API key. Also creates checkout links, reports checkout status, tracks parcels bought on smklog.com and serves a monthly US parcel price index.
    4
    5
    1
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Plan optimal container & truck loads: 3D layouts, right-size the container mix, and check utilization, centre of gravity, crush protection and securing across 200+ equipment types.
    16
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    AI agent access to 11 freight calculation and reference tools — LDM, CBM, chargeable weight, pallet fitting, ADR dangerous goods (2,939 entries), airline codes (6,352), HS codes (6,940), INCOTERMS, container specs, unit converter, and ADR 1.1.3.6 exemption calculator.
    25
    442
    4
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Ocean and multimodal freight intelligence suite providing cross-validated rates, total landed cost, transit reliability, customs, risk, emissions, and unified ship decisions through 47 tools.
    47
    15
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.