Engineering access preview
Available in hosted CLI 0.6.14 / MCP 0.2.14. Install from the connect guide; older npm registry versions do not include these commands. The engineering API is deployed, with explicit owner grants and separate selected-file authorization.
Your existing agent can read a founder-reviewed package and request a supplier-rule price preview. It keeps its own model and tools. Maglev checks the current engineering evidence, owner grant and supplier-rule authorization before returning a result.
Selected-file transfer provides explicit local selection, owner-approved uploads and receipt recovery.
1. Connect the reviewed package
Section titled “1. Connect the reviewed package”An organization owner opens the founder project’s Engineering review page in the deployed app:
- Review the retained technical files, BOM, current request and inspection specification.
- Select the organization’s existing live API key and agent project under Connect your agent. Portal projects and API projects are distinct; a matching name does not link them.
- Review the displayed agent request. Confirm copying the reviewed manufacturing intent and current quantity to that project. Unrelated intake stays unchanged.
- Choose an expiry, optionally enable nonbinding previews, then grant access.
A grant covers that exact key, API project and reviewed engineering version. Another key needs its own grant. Keys cannot create their own grants. A grant never shares original files with a supplier or permits an order.
Use your existing local login or MAGLEV_API_KEY; credentials do not belong in prompts or JSON input. Setup accepts live keys without --demo. Project, directory, action and receipt tools also support live keys; the sample capability catalog and optional example remain sandbox-only.
2. Read the current package
Section titled “2. Read the current package”From a checkout containing this client preview, after npm ci --ignore-scripts:
maglev engineering get PROJECT_ID --jsonFor a locally installed candidate, the command is maglev engineering get PROJECT_ID --json. PROJECT_ID is the agent project’s UUID selected by the owner. MAGLEV_API_URL must point to the service with engineering access.
The result includes:
binding.id,binding.expiresAt, andbinding.allowPreview.engineering.quantity, specification, reviewed intent, snapshot ID/hash, and aggregate file counts.rules.choices: scoped supplier identities, rule versions and commercial terms; inspectrules.truncatedbefore assuming the list is complete.originalFilesAccessible: falseandproductionAuthorized: false.
The evidence verifies retained bytes plus founder review. semanticVerification: false means Maglev has not validated the CAD geometry or proved manufacturability. An empty rule list is an empty result, not permission to invent a price.
3. Select terms and calculate
Section titled “3. Select terms and calculate”Review a returned choice against the user’s requirements. Create terms.json with only these fields, using the current returned IDs and the full selected commercial terms:
{ "bindingId": "22222222-2222-4222-8222-222222222222", "ruleVersionId": "33333333-3333-4333-8333-333333333333", "commercial": { "currency": "USD", "incoterm": "EXW", "namedPlace": "Synthetic factory", "paymentTermsId": "fixture-payment", "leadTimeDays": 10, "dayBasis": "working", "leadTimeStartsOn": "accepted order", "scopeId": "fixture-scope" }}These are synthetic placeholders, not defaults or usable supplier terms. Do not infer EXW, payment conditions, destination or timing. Changing a returned term can make the rule inapplicable; preserve the user’s intent and request review instead of silently substituting.
maglev engineering preview PROJECT_ID --input terms.json --jsonQuantity and specification come from the reviewed package. They cannot be overridden in this request. Two samples remain two samples even if the intent includes a later 10,000-unit forecast.
4. Interpret the result
Section titled “4. Interpret the result”| Field | Meaning |
|---|---|
result.status: eligible_preview |
Current checks permit a nonbinding calculation within this rule’s scope |
result.status: review_required |
Read reasons; no price is available |
result.price.totalMinor: null |
The full total is unknown; knownTotalMinor is only the known portion |
charges, unknownCharges, exclusions |
Keep factory costs, Maglev fee and excluded or unknown charges visible |
minorUnitScale: 2 |
Money strings are integer hundredths of the returned currency; preserve exact values |
binding: false, canPlaceOrder: false, capacityReserved: false |
This result is not a firm offer, purchasing authority or a production reservation |
The API saves a previewId and returns a requestId. Record them with the work. This operation is not idempotent: a dropped response may leave a saved receipt, and retrying creates a fresh preview. Clients do not retry automatically. There is no client receipt-recovery/listing endpoint in this increment.
MCP tools
Section titled “MCP tools”The candidate adds get_engineering({ projectId }) and preview_engineering({ projectId, bindingId, ruleVersionId, commercial }). They require a live key and current owner grant. They do not accept a credential, API URL, local path, arbitrary tenant, quantity override or file-upload request.
From source, run npm run build:mcp and configure your host to launch Node with the absolute path to packages/mcp/bin/maglev-mcp.mjs. Use the same private local login or environment as the CLI. Standard progress notifications report actual account checks, package reads and preview completion; they never claim supplier acceptance or production.
Use maglev auth check --json or MCP get_identity to inspect either a live or sandbox connection. See the MCP tool table for each tool’s mode and effects.
Changes and errors
Section titled “Changes and errors”- 404: the route, project or owner grant may be unavailable. Verify the deployed service version and exact owner-selected key/project. Do not treat this as an empty successful package.
- 403: check live mode, membership, scopes and separate preview permission.
- 409: reload engineering and review the changed, expired, revoked or superseded grant. Never fall back to an older binding.
- 429/503 or interrupted response: retain request evidence and inspect the cause before a bounded retry. An interruption does not prove nothing was saved.
Changes to retained engineering, current request, key or owner access can invalidate a grant. Supplier authority, rules and capacity are checked again for each preview. Local folder reports are still local: this increment does not upload them, parse native CAD, negotiate, sign an NDA, reserve capacity or start production.