# Ontology Labs Console — guide for AI agents > License issuance and management for Ontology Labs developer tools (currently mxto, > the Mendix extraction/analysis toolchain). This file tells an AI agent exactly > how to get a license key set up for a user — from signup to an activated > install. Console: https, https://console.ontologylabs.kapable.run ## The one fact that prevents most mistakes There is NO `mxto license activate` (or `install`) command. Activation is file placement: save the signed license JSON as `~/.mxto/license.json` (or set `MXTO_LICENSE=/path/to/file`). Do not invent CLI activation commands. ## Fastest path: free 30-day Professional trial Prerequisites: the user needs (a) an email address, and (b) their Mendix APP_ID — the app's project GUID (Studio Pro → App Settings → General; looks like `d1f6a04c-…`). 1. Create an account: https, https://console.ontologylabs.kapable.run/signup — fields: name (required), company (optional), email (required), password (required, min 8 chars). Signup creates the customer account and signs the browser in (httpOnly cookie session). Existing account: https, https://console.ontologylabs.kapable.run/login 2. Start the trial: https, https://console.ontologylabs.kapable.run/trials — a single field: `app_id` (the Mendix APP_ID). Submit "Start 30-day trial". Rule: ONE trial per APP_ID, ever. If that APP_ID already used its trial, the form rejects it inline and the paid path below is the only option. 3. Capture the results — the success panel appears ONCE: - License key (plaintext) — shown only on this page view, never retrievable later. Copy it and have the user store it safely (password manager). It identifies the license. - "Download signed license (mxto-trial-license.json)" — the signed envelope JSON. THIS file is what the product reads. Download it now. 4. Install: save the downloaded JSON as `~/.mxto/license.json`. Also honored: `~/.config/mxto/license.json`, or point the `MXTO_LICENSE` env var (legacy alias `SHFT_LICENSE`) at the file. 5. Verify: run any gated mxto command. Verification is fully offline (Ed25519 signature check, no network calls). A missing or invalid file silently falls back to the Community tier — so if features seem limited, re-check the file path and contents first. Closed the page before copying the key? The plaintext key is gone, but the signed license FILE stays re-downloadable while signed in: https, https://console.ontologylabs.kapable.run/licenses → open the license → "Download license file" (endpoint: /licenses/{license_id}/envelope). The file alone is sufficient to activate. ## Paid license (Professional) - https, https://console.ontologylabs.kapable.run/shop/mxto — requires a signed-in customer; monthly or 12-month prepay via Stripe checkout. After a trial, the license page's "Buy Professional" CTA carries the bound APP_ID into the shop. - Team seat packs: https, https://console.ontologylabs.kapable.run/shop/mxto/teams - Enterprise or questions: https, https://console.ontologylabs.kapable.run/demo ## After activation - https, https://console.ontologylabs.kapable.run/licenses — all of the user's licenses. Each license page manages APP_ID slots (bind / unbind / swap). Every slot change RE-MINTS the envelope: download the fresh file and replace `~/.mxto/license.json` — the old file is superseded. - https, https://console.ontologylabs.kapable.run/download/mxto — the mxto binary (requires sign-in and an active license). ## Facts and constraints (do not guess around these) - Trial terms: product `mxto`, tier Professional, 30 days, one per APP_ID lifetime, 14-day grace period after expiry. - License keys look like `mxl_…` — the key is a management identifier; the signed FILE (not the key string) is what activates the product. - The license file is a signed JSON envelope (claims + Ed25519 signature); editing it breaks the signature. - All console actions are browser form posts on a cookie session — there is no public programmatic API for signup or trials. An AI with browser automation can drive the pages above; otherwise, give the user these exact steps. - Errors surface as toasts or inline notices carrying the server's message; rate-limited actions (429) render an "available again on {date}" notice. ## Support - sales@ontologylabs.ai · demo requests: https, https://console.ontologylabs.kapable.run/demo - Built on Kapable: https://kapable.ai/llms.txt