Show HN: Agent First Shopify Competitor? Mercemur launched a Shopify competitor built around agent-first commerce, offering 571 API operations across catalogue, orders, customers, pricing, and money, plus an MCP endpoint at https://mcp.mercemur.com/mcp and a CLI that pulls a storefront to disk for local editing. The REST API at https://api.mercemur.com/api/v1 enforces 136 scopes across 66 families, requires an Idempotency-Key on every write, and represents all money as integers in the currency's minor unit. The company positions the MCP endpoint so AI clients such as Claude Desktop, IDEs, and other agents can read and write a live storefront directly. Start here API 571 operations across catalogue, orders, customers, pricing, and money. Call it from any platform that can send an HTTP request. MCP Point an AI client, Claude Desktop, an IDE, another agent, at one endpoint and it can read and write your live storefront. CLI Pull your storefront to disk, edit it in your own editor with live preview, and publish when you’re ready. REST API base URL for every request: https://api.mercemur.com/api/v1 · MCP endpoint: https://mcp.mercemur.com/mcp The REST API in detail Quickstart Create a key and make your first call in under five minutes. API reference Every endpoint, with a playground you can fire against your own store. Rate limits Understand throttling and how to back off correctly. Authentication and security API keys Secret keys, how to create them, and how to rotate one safely. Scopes Read, write and delete are separate grants. 136 scopes across 66 families. Error handling One envelope for every refusal, at every status. Making requests Idempotency Every write takes an Idempotency-Key . Retry safely. Pagination Cursor paging, forward only, signed and bound to the route that issued it. Money Every amount is an integer in the currency’s minor unit. The four things that are not guessable from one endpoint If you read nothing else, read these. They are the conventions that a single example request will not teach you, and each one has bitten an integration. Money is an integer in minor units, never a decimal 1999 in a usd field is 19.99 USD. There are no fractional amounts anywhere in this API, and no field accepts a decimal. Currencies with no minor unit, such as JPY, take the whole number directly. See Money /requests/money . Read and write are separate grants Read and write are separate grants write products does not let a key read your catalogue, and deleting is a third grant again: write products:delete . A key that keeps records up to date cannot destroy them unless you tick Delete as well. See Scopes /authentication/scopes . Every write requires an Idempotency-Key Every write requires an Idempotency-Key Not optional, and not only for retries. A request without the header is refused with idempotency key required . Replaying the same key returns the stored response rather than executing twice. See Idempotency /requests/idempotency . Paging is by cursor, forward only Paging is by cursor, forward only There is no page or offset parameter. You send ?after= with the page.next cursor from the previous response for that same endpoint . A cursor from a different collection is refused. See Pagination /requests/pagination . Branch on code , never on message Every refusal on this API, at every status, has the same body: code is the contract and is safe to switch on. The message is English prose for a human reading a log, and its wording is not part of this contract. See Error envelope /errors/envelope .