Skip to content

What ships today

Each surface the API, SDK, CLI and MCP pages describe, its status today and the exact line that works now, checked against npm and the live hosts.

The API, SDK, CLI and MCP pages describe the designed product, and each surface ships on its own. live works as the pages describe, beta runs with less or differently, and planned is documented and not shipped.

Surfaces

SurfaceStatusToday
API, https://api.sbbetaapi.sb answers: its root, /openapi.json, /llms.txt and the Studio’s 242 Startups at /startups read with no key. A Startup’s own records and every write need an id.org.ai bearer token, which startup-builder login stores and SB_TOKEN holds in CI; the scoped sk_ keys these pages describe are not issued. Every Verb POST outside try carries an Idempotency-Key. Its responses differ from these pages: api is an object, a response carries links, nav, verbs and user in place of an actions map, and an error is {"error":{"status","code","message"}} as application/json, with no type, title, fix or next. Branch on the HTTP status and error.code.
SDK, import { $ } from 'startup-builder'plannednpm install startup-builder installs 0.3.0, the CLI’s own library (Api, Session, work). It exports no $, and startup-builder/test, /ui, /react and /globals do not resolve.
CLI, npx startup-builderbetastartup-builder 0.3.0 runs login, whoami, show, do, versions, revert and the work loop (queue, claim, close, release, work) against api.sb. Its do takes --data for JSON input and previews in try unless --do or --send; it has no schema, search, dev, listen, trigger, keys or logs. It sends SB_TOKEN when set, and otherwise the token login stored. It also lacks next, done, pending, clock, eval and connect, and the --fields, --env, --try and --json input flags.
MCP, https://api.sb/mcpbetaThe hosted server signs the client in over OAuth and serves search, fetch and do, where do runs TypeScript against $. Its $ declares 73 Nouns, fewer than the reference lists. A call resolves to its Action, whose status is Pending, Done, Refused, Failed or Canceled. A call without { mode: 'do' } runs in try: it returns the Action it would record and stores nothing. A program’s writes commit when it returns, so it does not read its own writes.
Create, npm create startupsplannedOn npm, create-startups is 0.2.0, an unrelated idea generator: it takes none of these flags and writes no startup.ts, startups.lock or .mcp.json. Do not run npm create startups from these pages.
Startup Interfaces, api.<your domain>plannedThe Products pages describe each Startup’s own API host, SDK package, CLI, MCP server, App, Tenants, sign-in and webhooks (for the worked example: api.leaseline.app, the leaseline package, LEASELINE_API_KEY and Leaseline-Signature). None is published: leaseline is not on npm, api.leaseline.app does not resolve, and api.sb’s $ has no App, Interface or Tenant Noun.
SOC 2, https://startupbuilder.dev/systems/trust-and-governanceplannedThe Trust pages document the platform’s Controls and map each to SOC 2 criteria. They name no SOC 2 report, auditor, report type or period, so no report can be sent to a buyer from them today.
Docs MCP, https://startupbuilder.dev/mcplivePOST only, read-only and keyless: search, fetch and guides. plan and preview are planned and not served.
startups.new, https://startups.newbetastartups.new is open: describe the business in plain words, and its agent turns it into Business-as-Code, previews it and publishes it to startups.studio. These pages do not list which later steps (claiming, connecting Stripe, publishing) complete there today; its chat says what it can do for your business.

What works on each surface now.

  • API, beta. Sign in with npx startup-builder@0.3.0 login, then read records and preview Verbs through the CLI or the hosted MCP server.

    Terminal
    curl https://api.sb/startups
  • SDK, planned. The hosted MCP server’s do tool runs a different $, typed by https://api.sb/$.d.ts: only the Verbs it declares run there (see Verbs on api.sb), each call resolves to its Action (status Done, Pending, Refused, Failed or Canceled), not to the record this SDK returns, and a call without { mode: 'do' } runs in try and stores nothing.

    Terminal
    claude mcp add --transport http sb https://api.sb/mcp
  • CLI, beta. The do lines on these pages use 0.3.0’s own flags (--data, --do, --idempotency-key); the commands 0.3.0 lacks are marked on the CLI reference. Check a command’s flags with its --help.

    Terminal
    npx startup-builder@0.3.0 login
  • MCP, beta. Fetch https://api.sb/$.d.ts before a do program and call only what it declares. Preview in try, then pass { mode: 'do' }; run a write and a read of its result as two do calls.

    Terminal
    claude mcp add --transport http sb https://api.sb/mcp
  • Create, planned. Until it ships, describe the Startup on startups.new, or sign in with npx startup-builder@0.3.0 login and read it on api.sb. Open startups.new.

  • Startup Interfaces, planned. A Startup’s records and Verbs are on api.sb, at its namespace, for the Verbs api.sb declares.

    Terminal
    curl https://api.sb/startups
  • SOC 2, planned. Share the Control and framework map pages; a buyer who needs an audited report asks the Startups.Studio team on startups.studio. Open startupbuilder.dev/systems/trust-and-governance/frameworks.

  • Docs MCP, live.

    Terminal
    claude mcp add --transport http startupbuilder-docs https://startupbuilder.dev/mcp
  • startups.new, beta. Open startups.new.

Works today

Works today. These lines run against api.sb now. The outputs shown were captured from it; the CLI and MCP lines follow the startup-builder 0.3.0 README.

  1. Read the Studio’s Startups, with no sign-in:

    Terminal
    curl -s "https://api.sb/startups?limit=1" | jq '.startups[0] | {"$id", name, status}'
    Text
    {
      "$id": "https://api.sb/adjusters.directory",
      "name": "adjusters.directory",
      "status": "Designed"
    }
  2. Read what the hosted $ declares: curl -s 'https://api.sb/$.d.ts' returns the index of 73 Nouns and their Verbs. What ships today lists them.

  3. Sign in: npx startup-builder@0.3.0 login opens id.org.ai in your browser (login --device in a terminal with none), and npx startup-builder@0.3.0 whoami prints who api.sb sees.

  4. Read a Startup: npx startup-builder@0.3.0 show /headless.ly --json.

  5. Preview a Verb: npx startup-builder@0.3.0 do <Noun.verb> <$id> --data '<json>' runs it in try and stores nothing; add --do to run it. npx startup-builder@0.3.0 help do lists every flag.

  6. Connect an agent: claude mcp add --transport http sb https://api.sb/mcp, sign in from /mcp, then call do with return await $.search('headless.ly'). A call runs in try unless it passes { mode: 'do' }, and resolves to its Action.

Verbs on api.sb

api.sb serves 164 of the 1109 Verbs these pages document. Each Noun below also reads with get, list, find. A Verb outside this table is planned on every surface: its page says so, /verbs.json gives it "apiSb": false, and a guide that calls it is planned.

NounVerbs api.sb serves
Thingrevert, create, update
Nounrevert, create, update, preview, convert
Verbrevert, create, update
Fieldrevert, create, update
Changerevert, create, update, open, merge, rebase, close
Decisionrevert, create, update
Claimrevert, create, update
Coderevert, create, update
Collectionrevert, create, update, invite, message
ContactPointrevert, create, update, findEmail, verifyEmail
Datasetrevert, create, update
Deckrevert, create, update
DeckPartrevert, create, update
Domainrevert, create, update, reserve, launch, park
Facetrevert, create, update
Goalrevert, create, update, plan
HeadlessSaasCrudSurfacerevert, create, update
HeadlessSaasDataModelrevert, create, update
HeadlessSaasErdrevert, create, update
HeadlessSaasProfilerevert, create, update
HeadlessSaasRepresentativeOfferrevert, create, update
HostClaimrevert, create, update
Hypothesisrevert, create, update, test, support, refute, reopen
KeyResultrevert, create, update
Mappingrevert, create, update
Meterrevert, create, update
Metricrevert, create, update
Offerrevert, create, update, publish, invite, verify, reprice, retire
Offeringrevert, create, update
OutcomeContractrevert, create, update
Overviewrevert, create, update
Pagerevert, create, update
Problemrevert, create, update
Productrevert, create, update, search, publish, evaluate, rollback
Projectrevert, create, update
Prospectrevert, create, update, search, enroll, suppress
Recordrevert, create, update
Referralrevert, create, update
ReferralRewardrevert, create, update
Relationshiprevert, create, update
Retrorevert, create, update
Servicerevert, create, update
Sessionrevert, create, update
Softwarerevert, create, update, search, publish, evaluate, rollback
SoftwarePrimitiveCardrevert, create, update
SolutionOverviewrevert, create, update
Startuprevert, create, update, launch, pause, resume, extend, graduate, sell, shutDown
Storyrevert, create, update
Suppressionrevert, create, update
Taskrevert, create, update, assign, unassign, claim, renew, release, block, unblock, escalate, complete, cancel, approve, refuse, requestChange, file
Templaterevert, create, update
Themerevert, create, update
Variantrevert, create, update
Versionrevert, create, update
Watchrevert, create, update
WatchChannelrevert, create, update
Capabilityrevert, create, update
Floorrevert, create, update
Playrevert, create, update
Processrevert, create, update
Publisherrevert, create, update, get
RateCardrevert, create, update, get
Strategyrevert, create, update
Workflowrevert, create, update
Rolerevert, create, update, fill, grant
AgentSessionrevert, create, update
Limitrevert, create, update
ModelCallrevert, create, update, generate, embed, classify, transcribe
Webhookrevert, create, update
ApiDefinitionrevert, create, update
ApiFunctionCascaderevert, create, update
Breakdownrevert, create, update
Diagramsrevert, create, update

Package entry points

Each path a page imports or runs, and what resolves at it on npm.

Entry pointStatusToday
startup-builderplanned0.3.0 exports the CLI’s library (Api, Session, work), not $.
startup-builder/testplannedNot in 0.3.0’s exports.
startup-builder/uiplannedNot in 0.3.0’s exports.
startup-builder/reactplannedNot in 0.3.0’s exports.
startup-builder/globalsplannedNot in 0.3.0’s exports.
npx startup-builderbetaThe 0.3.0 command line, the package’s bin.
create-startupsplannedThe name holds the unrelated 0.2.0.

The worked example

Leaseline is the worked example. leaseline.app and api.leaseline.app do not resolve and api.sb/leaseline.app returns 404, so its ids show the shape of a record, and a copied call returns 404 today.

Every example keeps its Leaseline ids, labelled as the worked example, so pages agree with each other and with the types this site hosts.