For agents and developers
API, MCP and agent access
The calculator is a browser form, which means an automated caller cannot use it. Everything the form does is also available as a plain HTTP API, as an MCP server, and as markdown — free, anonymous, and with no account, key or token anywhere.
Every response carries the fee table it used and the date those rates were verified against Etsy's published pages. If you repeat a figure from here, repeat the date with it.
Calculate one order
One endpoint, two verbs. POST a JSON object, or send the same fields as a query string. Every money value in and out is US dollars; omitted fields default to zero, except quantity (1), targetHourlyPay (20) and targetMarginRate (0.2).
curl -s https://makernumbers.com/api/calculate \
-H 'content-type: application/json' \
-d '{"itemPrice":40,"shippingCharged":5,"shippingPaid":6,
"materialsPerItem":8,"packagingPerItem":1.5,
"laborMinutesPerItem":30,"targetHourlyPay":20}'
curl -s 'https://makernumbers.com/api/calculate?itemPrice=40&shippingCharged=5'- The response has the revenue breakdown, every fee line with the base it was charged on, costs, labour, the four headline figures, a signed line-by-line breakdown and any warnings.
- Batch production and fee overrides are nested objects; on a query string they are dotted keys — batch.unitsProduced=12, fees.transactionRate=0.065.
- Validation failures come back as 400 with a list of { field, code, message }. Nothing is ever half-calculated.
- The full OpenAPI 3.1 description is at https://makernumbers.com/openapi.json.
MCP server
A Model Context Protocol server over Streamable HTTP, at the address below. It is stateless and unauthenticated: no session header, no registration, no token. POST only — there is no server-initiated stream to open.
https://makernumbers.com/mcp- calculate_etsy_profit — the full calculation for one order.
- suggest_etsy_price — the item price that reaches a target profit margin.
- get_etsy_fee_rates — the current US rates, the base each is charged on, and when they were last verified.
Markdown instead of HTML
Any page here returns markdown when the request asks for it. HTML stays the default for browsers, so nothing changes for a reader.
curl -H 'accept: text/markdown' https://makernumbers.com/etsy-profit-calculator- The same documents are directly addressable under https://makernumbers.com/markdown/ if you would rather not negotiate.
- Responses carry x-markdown-tokens, an estimate of what the document will cost you in context.
- https://makernumbers.com/llms.txt lists every page with a line on what is on it.
Discovery documents
Every page carries a Link header pointing at the first four of these, so nothing below has to be guessed.
| Document | What it is |
|---|---|
| /.well-known/api-catalog | RFC 9727 API catalog: every API here, with its description, documentation and health endpoint. |
| /openapi.json | OpenAPI 3.1 description of the HTTP API. |
| /.well-known/mcp/server-card.json | MCP server card: transport, endpoint, protocol versions, capabilities. |
| /.well-known/ai-catalog.json | Domain-level catalog of the AI artifacts published here. |
| /.well-known/agent-skills/index.json | Agent Skills index, with a SHA-256 digest for each skill. |
| /auth.md | How to authenticate. The answer is that you do not. |
| /.well-known/oauth-protected-resource | RFC 9728 metadata, with an empty authorization_servers array. |
| /llms.txt | Plain-text summary of the site for language models. |
| /robots.txt | Crawl rules and Content Signals: search, AI input and AI training are all allowed. |
Limits and fair use
There is no key to rate limit against, so the limit is per IP address: 120 requests a minute across the calculation and MCP endpoints. A 429 carries Retry-After, and honouring it is the only thing asked of a caller.
The endpoints are pure arithmetic. Nothing is stored, no request field is logged, and there is no third-party call behind them — which is also why they can be free.
- /api/leads and /api/feedback belong to the site's own forms. They are not part of the public API and are disallowed in robots.txt.
- A User-Agent that identifies your agent is appreciated but not required.
What the numbers are not
These are planning estimates, not a reproduction of Etsy's ledger. Etsy's rates change and differ by country, the calculator has no access to any Etsy shop, order or payment account, and none of it is tax, accounting or legal advice.
Not affiliated with Etsy, Inc.
- Every formula, written out with its source: https://makernumbers.com/methodology
- How the rates are verified and dated: https://makernumbers.com/about
- Terms of use: https://makernumbers.com/terms