Sign Up for Corebee (agent-native, zero-UI)
Create a brand-new Corebee account for a user who does not have one yet, entirely from the terminal. The only human step is approving one email. Do not send a no-account user to a browser login — run this flow.
If the user already has a Corebee account, this flow returns a dashboard link instead of a key (see step 7); for ongoing use they connect the MCP normally.
Process
Collect — ask the user for their email, company name, and website URL (a full
https://…URL). Do not guess these.Start signup —
POST https://corebee.ai/api/auth/agent-signupwith JSON:{ "email": "<email>", "company_name": "<company>", "website_url": "<https url>", "attribution": { "utm_source": "claude-code-plugin", "utm_medium": "agent", "utm_campaign": "plugin-signup" } }Example:
curl -s -X POST https://corebee.ai/api/auth/agent-signup \ -H "Content-Type: application/json" \ -d '{"email":"...","company_name":"...","website_url":"https://...","attribution":{"utm_source":"claude-code-plugin","utm_medium":"agent","utm_campaign":"plugin-signup"}}'The response contains
pairing_phrase,poll_url,poll_token, andpoll_interval_s.Human checkpoint (anti-phishing) — show the user the
pairing_phraseand tell them:Check your inbox for "Approve your Corebee terminal signup" and approve it only if the email shows the pairing phrase
<pairing_phrase>. That phrase proves the email belongs to this request.Keep
poll_tokensecret — never print or reveal it to anyone.Poll —
GETthepoll_urleverypoll_interval_sseconds (default 5) untilstatusisapprovedorexisting_account. The signup expires in ~15 minutes; if it lapses, start over.On
approved(delivered exactly once) you receive:api_key— a scoped key (prefixek_live_, valid 24h). Use it asAuthorization: Bearer <api_key>for both the Corebee MCP tools and the REST v1 API.org_id,org_nameembed_snippet— the chat-widget install<script>website_token,knowledge_source_id,mcp_endpoint,scopes,next_steps
Immediately show the user the
embed_snippetand tell them to paste it into their site's HTML just before</body>. Don't wait for the docs crawl.Finish setup (recommended) — follow
next_steps. Typically: the docs crawl already started, so poll the MCP toolget_knowledge_source(with the new key) untilstatus=completed; then brand the widget withconfigure_widget_appearance. Every Corebee MCP tool and REST endpoint accepts theapi_keyas a Bearer token, so the rest of this plugin's skills work immediately.If
statusisexisting_account— the email already has a Corebee account, so no key is issued (by design). Give the user the returneddashboard_urland tell them to sign in and create a long-lived API key from Settings → MCP.
Notes
- The signup key is short-lived (24h) — it is an onboarding key. For ongoing use the user creates a long-lived key in the dashboard (Settings → MCP) or connects the MCP via OAuth.
- Never ask the user to paste the email's token, and never tell them to approve before the pairing phrases match.
- This uses only the public signup endpoint — no existing account or credentials are required to run it.