Two on-ramps. One credit wallet.
Ounie accounts hit the REST endpoints with a bearer token. AI assistants — including the Ounie AI Team — connect over MCP and get a native tool surface. Both run the same generation pipeline and draw your shared Ounie credits (1 credit = 1¢), never overdrawing. Every generated kit is grounded in — and cited to — your own Ounie brains.
Authorization: Bearer <key> on any REST route or the MCP endpoint — or append ?api_key=<key> to the URL when your client can’t set headers.wkk_live_…— this app’s keyMint it on Dashboard → API keys (shown once, up to 5 active). Lists, reads, and exports your kits. It has no ounie.com credential, so it can’t generate — generation needs your brains.
ounie_live_… — your Ounie master keyYour ounie.com developer key. Enable fleet access in ounie.com settings and use it here — it’s forwarded upstream to ground generation in your private brains, and the Ounie AI Team drives the app with it. Draws the same shared wallet.
/api/mcp (legacy SSE at /api/sse).Endpoint https://workshop.ounie.com/api/mcp Header Authorization: Bearer wkk_live_… (or ounie_live_… to generate) # If your MCP client can't set headers, append the key as a query param: https://workshop.ounie.com/api/mcp?api_key=ounie_live_…
Connecting the Ounie AI Team (TabTab): add an HTTP MCP server with the URL above, putting your ounie_live_… master key in the ?api_key=query param (its manual MCP entries can’t set an Authorization header). The team can then list and build workshop kits from your brains.
| Tool | What it does | Cost |
|---|---|---|
| list_brains | Your Ounie brains (master key only) — pick brain_ids. | free |
| generate_kit | Generate a full cited facilitator kit from your brain(s). | 12 credits |
| regenerate_kit | Rebuild an existing kit from fresh retrieval. | 12 credits |
| list_kits | List your generated kits (newest first). | free |
| get_kit | Full kit content: objectives, agenda + scripts, exercises, handout, email, citations. | free |
| export_kit | Render a kit as facilitator or handout Markdown. | free |
| list_exercise_bank | Your reusable Exercise Bank. | free |
| get_credit_balance | Spendable Ounie credits + monthly included. | free |
| get_pricing | Per-action pricing. No auth required. | public |
| whoami | The authenticated key's owner + whether it's the master key. | free |
Authorization: Bearer … (or ?api_key=) on any of these. Cookie sessions work too — it’s the same route./api/brains— Your Ounie brainsMaster key or session. Returns { brains: [{ id, name, sourceCount }] } — pick brain ids for a kit.
/api/kits— Generate a kit{ "brain_ids": ["…"], "topic": "Onboarding",
"audience": "new hires", "duration": "90" }Bills 12 credits. duration = 60 | 90 | 120 | half-day. Grounded + cited from your brains — needs a session or the ounie_live_ master key; a wkk_live_ key gets 403 grounding_unavailable. A too-thin brain 422s and refunds in full.
/api/kits— List your kitsFree.
/api/kits/{id}— Kit + its exercisesFree. Full content + citations.
/api/kits/{id}/regenerate— Rebuild from fresh retrievalBills 12 credits. Keeps the same brains/topic/duration.
/api/kits/{id}— Edit narrative fields{ "name": "…", "objectives": ["…"] }Free. name / objectives / handout / follow_up_email / agenda.
/api/kits/{id}/export?doc=facilitator— Download DOCXFree. doc = facilitator | handout. Add &api_key=… when calling as an agent.
/api/bank— Your Exercise BankFree. The reusable library new kits pull free matches from.
{
"ok": true,
"kit_id": "…",
"objectives": 4,
"agenda_blocks": 6, // block durations sum EXACTLY to the length
"exercises": 3,
"exercises_from_bank": 1, // reused free from your Exercise Bank
"credits_spent": 12
}
# GET /api/kits/{id} returns the full agenda, scripts, handout,
# follow-up email, and citations: [{ brainId, slug, title }]