Skip to main content
Glama

Moltline Dropship Economics

Price Ladder

price_ladder
Read-onlyIdempotent

Work backwards from the margin you want to the price you must charge. FREE.

Solves for price including the percentage fee, which is why it is not simply cost divided by one minus margin. Typical input {"supplier_cost": 12.4, "target_margins_pct": [30, 40, 50], "shipping_cost": 4.2} returns {"rows": [{"target_margin_pct": 30, "price": 25.99, "total_cost": 17.65, "profit": 8.34, "actual_margin_pct": 32.07}, ...]}.

Use when setting a price list. Not for checking one price you already have: that is margin_check. Errors: on invalid, missing, or malformed input this tool never raises a protocol error; it returns {"error": ""} (for example {"error": "target_margins_pct must contain at least one margin"}). Every call is read-only and idempotent, so after correcting the input it is always safe to retry.

Input Schema

NameRequiredDescriptionDefault
charm_endingNoForce prices to end in these cents, e.g. ".99". Pass an empty string for exact prices. Default ".99"..99
shipping_costNoShipping you absorb per order. Default 0.
supplier_costYesPer-unit cost from the supplier. Must be above 0.
payment_fee_pctNoProcessor percentage fee. Default 2.9.
payment_fee_fixedNoProcessor fixed fee. Default 0.30.
target_margins_pctYesMargins to solve for, e.g. [30, 40, 50]. Each must be above 0 and below 100.

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, but the description adds useful behavioral context: it never raises a protocol error, returns an error object instead, and is safe to retry after correcting input. It also clarifies that the calculation includes percentage fees, which explains why the result is not simply cost divided by one minus margin.

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 front-loaded with the core purpose and then adds only relevant details: an example, sibling routing, error behavior, and retry safety. It is somewhat dense, but most sentences earn their place for a calculation tool with fee and margin semantics.

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 that an output schema exists and all parameters are fully documented, the description is complete enough to call the tool correctly. It also covers the important non-schema behavior around errors and retry safety.

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 all six parameters are already documented in the schema. The description provides a typical input and output example, but it does not add meaning beyond the schema for parameters such as charm_ending, payment_fee_pct, or payment_fee_fixed.

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

Purpose5/5

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

The description states a specific action and outcome: working backwards from desired margin to the price to charge, including processor fees. It explicitly distinguishes itself from margin_check, so an agent can select 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?

It gives explicit usage guidance: use when setting a price list, and not for checking an existing single price because that is margin_check. This is a clear when-to-use and when-not-to-use instruction with a named alternative.

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.