Skip to main content
Glama
PravinrajV

ShopTrueProfit Fee & Profit MCP

by PravinrajV

Etsy break-even and target-margin price

etsy_target_price
Read-onlyIdempotent

Calculate the pre-discount Etsy unit price that breaks even and the price needed to hit a target profit margin, factoring shipping, costs, and ads; shows fees, profit, or margin if target is unmet.

Instructions

Find the lowest Etsy item price (per unit, before discount) that breaks even and the lowest that reaches target_margin_pct, given shipping, costs and ads. Also shows fees and profit at the target price, or the highest reachable margin if the target is impossible. Percent arguments (*_pct) are percents: 8.25 means 8.25%. Money is in whole cents. Uses the same fee engine as the free calculators on shoptrueprofit.com. Returns an itemized fee breakdown, the assumptions used, the fee table version and date, official source URLs and a link to the matching free calculator. Inputs are validated strictly: invalid or unknown arguments are rejected with a message naming the field, never silently adjusted.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
regionNoSeller's Etsy Payments region, which sets the payment processing rate and currency. Default "us". See list_etsy_regions.us
ad_spendNoAd spend you attribute to this order (e.g. Etsy Ads cost-per-click budget per sale). Not an Etsy fee; counted as a cost. Default 0.
discountNoTotal discount on the order (coupon or sale), in currency, not percent. Default 0.
quantityNoUnits in the order (same item). Default 1.
gift_wrapNoGift wrap charge paid by the buyer. Default 0.
item_costNoYour cost per unit (materials, product, packaging per item). Default 0.
sales_tax_pctNoSales tax / VAT rate the buyer pays on items + shipping (Etsy collects it; it is not seller income, but payment processing is charged on it). Default 0.
offsite_ads_pctNoEtsy Offsite Ads fee if this order came from an Offsite Ad: 15 (shops under $10k/yr sales), 12 (over $10k/yr), or 0 (not an Offsite Ads sale). Default 0. Capped at 100 per order.
shipping_chargedNoShipping the buyer pays for the whole order. Default 0.
target_margin_pctYesDesired profit as a percent of seller revenue (0 = break-even, 30 = 30% margin). 0 to 90.
shipping_label_costNoWhat you pay for the shipping label and packaging for the whole order. Default 0.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
feesNo
toolYes
costsNo
inputsYes
profitNo
detailsNo
pricingNo
revenueNo
sourcesYes
summaryYes
currencyYes
warningsYes
fee_tableYes
comparisonNo
disclaimerYes
assumptionsYes
marketplaceYes
calculator_urlYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnlyHint=true, idempotentHint=true, destructiveHint=false, openWorldHint=false), so the description's job is to add context — and it does: strict input validation that rejects and names the offending field rather than silently adjusting, plus disclosure of the fee-engine provenance and version/date stamping of the fee table. It does not mention rate limits or latency, but that is minor for a local calculator.

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 core purpose is front-loaded in sentence one and the remaining sentences carry real information (margin semantics, unit conventions, validation behavior). Minor waste in mentioning the free calculator twice and the shoptrueprofit.com branding, which does not help tool selection.

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 an 11-parameter tool with 100% schema coverage and an output schema, the description is close to sufficient: it explains the solve semantics, the fallback when the target margin is unreachable, the unit conventions, and the validation contract. The only real hole is the unresolved money-unit ambiguity, which an agent would need to resolve before calling 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?

With 100% schema coverage the baseline is 3, and the description genuinely adds the percent-vs-ratio convention ('8.25 means 8.25%'), which is easy to get wrong. However, its claim that 'Money is in whole cents' sits awkwardly against the schema's money parameters, which are typed as numbers with multipleOf 0.01 and described as 'in currency' — an agent following the description could scale dollar amounts by 100 and get a wrong result, so the added guidance is not unambiguously safe.

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 precise verb and resource: find the lowest Etsy item price per unit that breaks even and the lowest that reaches target_margin_pct. It distinguishes itself from siblings both by marketplace (Etsy, not amazon_/ebay_target_price) and by intent (it solves for price, whereas etsy_profit evaluates profit at a known price).

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

Usage Guidelines3/5

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

Usage is implied rather than stated: 'target_margin_pct' with '0 = break-even' tells the agent this is the pricing-decision tool, but no sibling is named and no when-not condition is given (e.g., use etsy_profit when you already know the price). The agent must infer the split from the name alone.

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