Sign up from an AI agent
An AI assistant that reaches the store server athttps://api.launchmystore.io/mcp
without credentials gets a 401 and an OAuth login. That is right for an
existing merchant, but a person who does not have a store yet has nothing to
log in with. The onboarding server closes that gap: a small, public MCP
endpoint the assistant can use to create the store in the conversation, then
hand itself the token for the full server.
POST). Four tools.
The person stays in control. Every step needs something only they have: the
email address they choose, the 6-digit code from their inbox, the store name
and country. No password is ever typed into the chat. The assistant is told to
show the terms and privacy policy and get an explicit yes before the account is
created.
The conversation
- Person: “Set up an online store for my candle business.”
- Assistant calls
get_started, explains LaunchMyStore, the free trial, and asks for the store name, country and email, linking the terms. - Person gives them and says yes.
- Assistant calls
start_signupwith the email. A 6-digit code is emailed. - Person reads the code back from their inbox.
- Assistant calls
complete_signupwith the code, store name and country. The result contains the store URL and an MCP token. - Assistant saves the token as
Authorization: Bearer <token>forhttps://api.launchmystore.io/mcpand carries on there: adding products, choosing a theme, setting up shipping.
Tools
get_started
No arguments. Returns what LaunchMyStore is, the pricing summary, what signup
needs, the terms and privacy links, and what an existing merchant should do
instead (connect to the store server with OAuth or a token). Read-only.
start_signup
Creates the account with a free trial and emails the verification code. If the
email already has a verified store nothing is created and the result says
already_registered with the store server’s address. Sends an email every time
it is called; the assistant is told to call it once.
complete_signup
Verifies the code, names the store through the same endpoint the admin wizard
uses, then mints the account’s long-lived MCP token. Response:
resend_signup_code
Emails a fresh code. Earlier codes stop working.
Limits
Past a ceiling the tool returns an error with
retry_after_seconds and points
the person to finish signup in a browser at launchmystore.io.
Why a separate endpoint
The store server must keep answering401 with OAuth discovery to anonymous
clients. That 401 is what makes OAuth-capable hosts (Claude on the web, Meta
Muse’s directory connector) start the login flow. If the store server accepted
anonymous calls those hosts would connect with no account and only ever see
onboarding tools. Keeping onboarding at its own address keeps both behaviours
correct.