Create app
create_appApp authoring — create a BRAND-NEW app (mints the app + its version 1). Start here when building a page or an API bundle: choose the app's slug (its folder prefix, e.g. 'storefront'), then author each member resource under that prefix (storefront/page, storefront/products, storefront/checkout, …) so the app's prefix rule captures them automatically — you never hand-add members. The definition holds the membership selector (prefix rules + includes/excludes) and display; fetch its JSON Schema with get_app_definition_schema and author against it. An empty definition is a valid draft, but publishing requires a membership that selects something. Pass publish=true to publish v1 immediately. (To add a version to an existing app, use create_app_version.)
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | Unique per-tenant slug; this is the app's folder prefix (hierarchical segments allowed, e.g. storefront or marketing/campaigns). | |
| publish | No | If true, immediately publish the version this call creates (the common create-then-publish in one step). Defaults to false; omit to leave the version as an unpublished draft. | |
| definition | Yes | The app definition, as a JSON object. Fetch the exact JSON Schema it must satisfy with get_app_definition_schema and author against it (or copy an existing one with the get_*_version tool). The owning service validates it on submit. | |
| description | No | What this app is (human + LLM-facing prose). | |
| display_name | No | Human-readable name. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | ||
| app_id | Yes | ||
| version | Yes | ||
| published | Yes |