A practical guide for your first setup and everyday use. Personal planning runs on your device. An OpenRouter account is needed only if you want Personal AI; a MakeCargoFit account or team server is not required.
01Start here
Start at https://makecargofit.com/ and choose “Open free planner”, or open https://makecargofit.com/app/?lang=en directly. Use a regular browser window rather than private/incognito mode. Choose English in the language selector. On a small screen, the top-bar controls may show only a disk icon for My Space and a Wi-Fi icon for App.
The “Language / 语言” field stays visible in the top bar. Choose English, Русский, 简体中文, Español, Deutsch, Polski, Українська, Română or Lietuvių. For an English or Chinese share link, use the app address with ?lang=en or ?lang=zh-CN. When reopening the app, the language in the link takes priority; otherwise your latest choice is kept. Opening a complete workspace file restores the language saved in that file. You can change it again at any time.
For a handout to the loading crew, choose “Export → Loading instructions · PDF”. It provides stage diagrams, an ordered checklist and paper checkboxes. “Loading Plan · PDF” remains available as the detailed technical report. Paper checkmarks do not update loading status in the application.
In Export, choose Document language independently of the interface: English, Русский, Español, 简体中文, Deutsch, Polski, Українська, Română or Lietuvių. “Same as interface” is the default for older projects. The project remembers your choice in JSON and workspace files. Both the technical PDF and loading instructions use this language; cargo names and notes keep the text you entered. Choosing a language is free and does not recalculate or change the accepted layout.
| Task | Connection needed |
|---|---|
| Calculate a load, use 3D, import CSV/Excel, export PDF/JSON | Works offline after the app is prepared. |
| Create, open and save a personal workspace | Local files; no team server needed. |
| Use Personal AI | Internet and your OpenRouter key. |
| Use team projects, staff accounts or approvals | A separately configured team server. |
02Measurement units
Choose Measurement units in the planner top bar: centimeters/kilograms or inches/pounds. This is a project preference, independent of the interface and document languages. Inputs, 2D/3D measurements, warehouse views and PDFs follow this choice. Inches use decimal numbers. Volume is shown in ft³, support area in in², floor area in ft² and floor loading in lb/ft² (mass per area). Safety checks and calculation data remain in centimeters and kilograms. Switching units does not recalculate or move cargo.
Project JSON, complete workspace files and shared snapshots remember the selected units. Older files default to metric. CSV/XLSX columns without explicit units remain centimeters/kilograms. For imperial tables, use length_in, width_in, height_in, weight_lb, max_top_load_lb, cog_x_in, cog_y_in, cog_z_in and bearing_area_in2. Do not include both metric and imperial columns for the same field. CSV templates and CSV exports keep explicitly labeled metric columns for reliable exchange.
03Transport catalog
Open the Transport tab to browse sea containers and road vehicles. Search by name or code, such as 45HC, or use the category buttons. The catalog includes 20′/45′ High Cube, 20′/40′/45′ reefers, mega and curtain trailers, and 7.5/12/18 t rigid trucks. “Custom transport” keeps the current dimensions for manual configuration. Choosing a preset changes only the form draft: click Apply parameters or Apply and recalculate loading to save it. Choose one fleet member to change only that unit.
Each new preset links to its source and states whether it is a specification example or a typical reference. Vehicle class denotes gross weight, not cargo payload. Verify the actual internal dimensions, rear door opening and payload. Reefer height follows the usable load line; temperature and airflow requirements are checked separately. Mega and curtain trailer presets check rear access; side/top access, open tops, flat racks and aircraft contours are not modeled by these rectangular presets.
The picker follows the project measurement units and works offline; opening an external source needs a connection. Saved custom dimensions and names are retained. The existing server scenario comparison still uses its bounded legacy candidate list; this catalog does not automatically choose the cheapest or smallest fleet.
04Find transport
After entering cargo, choose Find transport. Select up to four catalog types and a maximum number of vehicles for new alternatives. The comparison runs locally in a Worker, checks real packing and can be stopped. It compares repeated units of one type with the current fleet; it does not search every possible mixed combination. Pins and loading policies remain in force. The current fleet may appear as a reference above your selected limit, but cannot be recommended or applied above that limit.
Choose fewer vehicles, or enter your own unit rates, currency and rate date to compare transport cost. Empty rates mean unknown cost, not zero. Changing currency clears the rates; the app does not convert exchange rates or fetch market prices. Additional services and taxes are excluded. “Best among tested” is a bounded heuristic result, not a proven global minimum. The report states when the search budget was reached; a single packing attempt may take longer than the target time, and Stop terminates it.
Review each candidate’s placed/unplaced cargo, vehicle count, fill, price and layout checks. Partial candidates are preview-only. Applying a complete eligible candidate creates a history version with both fleet and layout; Undo restores the previous plan. Applied rates and settings remain in project JSON and complete workspace files. They are omitted from public warehouse snapshots. New vehicle types require their own measured axle and floor-load settings; these are not copied from another vehicle. Advanced mixed-fleet search and managed tariffs remain future work.
A catalogue type's rate is stored under its code; for your own transport it is stored per body profile (internal dimensions, door opening and payload): different bodies get different rates, identical bodies share one, and renaming or reordering vehicles does not change the rate. A previous shared “Your transport” rate from older files is kept but never applied to every body automatically — you can insert it for a specific body. If saved comparison settings do not fit the current limits (a removed type, more types or vehicles, a rate above the limit, another currency), the comparison window shows what needs review; the project, transport and accepted plan stay unchanged, and a rate above the limit is not used and not clipped.
05Prepare MakeCargoFit for offline work
- While online, open App (Wi-Fi icon) in the top bar.
- Wait for Ready to work offline. If needed, choose Save app for offline use and wait for completion.
- Save a workspace file through My Space before moving devices or clearing browser data.
- Turn off your connection and reopen MakeCargoFit in the same browser or installed app. Open a project, calculate a load and try Export → Loading Plan · PDF.
- Reconnect when you need AI or updates. If a resource is missing, reconnect and use Save app for offline use to repair the app copy.
In My Space, choose “Protect local storage” to ask the browser to protect this site’s local data from automatic eviction. Check the displayed result: the browser can grant, decline or not support the request. This does not replace your workspace JSON backup; manually clearing site data still removes local copies.
Reference: developer.mozilla.org
06Install on a computer
Chrome: open MakeCargoFit, choose its address-bar install icon or the install command in the browser menu, and confirm.
Reference: Chrome: install a web app
Microsoft Edge: open the browser menu, find More tools → Apps, and choose the command to install this site as an app. Confirm the app name, then launch MakeCargoFit from your applications.
Reference: Microsoft Edge: install and manage apps
Safari on macOS Sonoma 14 or later: open MakeCargoFit, use File or Share → Add to Dock, then confirm. Open the resulting app from the Dock.
Reference: Safari on Mac: web apps in the Dock
If your browser has no installation command, keep using the website. The offline feature depends on browser support and available device storage; installation is not required to calculate loads.
07Install on Android, iPhone or iPad
Android / Chrome: open MakeCargoFit, use the browser’s Install or Add to Home screen command, and confirm.
Reference: Chrome for Android: install a web app
iPhone or iPad with Safari: open the site in Safari, open Share (possibly inside the page menu), choose Add to Home Screen, enable Open as Web App if offered, and tap Add.
Reference: Safari on iPhone: open a website as an app
08Create your OpenRouter key
- Open https://openrouter.ai and sign in or create your own account. MakeCargoFit does not create this account for you.
- If your chosen model requires paid credit, add credit through OpenRouter’s account billing controls. Check the current terms and prices there.
- Open https://openrouter.ai/settings/keys and create an ordinary API key for model requests, not an administrative/management key.
- Give it a recognizable name, such as MakeCargoFit, and set a provider-side credit limit appropriate for your own usage.
- Copy the key into a private location or directly into MakeCargoFit’s key field. Never put it in a cargo note, shared project, screenshot or public message.
Reference: OpenRouter: API keys and credit limits
09Connect Personal AI
- In the planner, open Personal AI. Choose this button rather than AI dialog, which belongs to the team-server workflow.
- Expand Settings if needed. Paste your key into Personal OpenRouter key and choose Connect key.
- Wait for Your key is connected. This connection check validates the key and does not invoke a model.
- Choose an OpenRouter model. Only models compatible with this feature appear; availability and prices can change. Use Refresh models and prices when prompted.
- Review Limit per request, USD and Maximum response tokens. Start with the defaults and choose a model whose estimate fits your limit.
| Setting | Initial value / meaning |
|---|---|
| Limit per request, USD | 0.05. Requests with a higher estimate are blocked. |
| Maximum response tokens | 2048. This is a token limit, not a word count. |
| Displayed model prices | Input / output price per million tokens, in USD. |
| OpenRouter key credit limit | Set in OpenRouter; limits provider-side key spending. |
10Ask questions and review proposed changes
- Enter or import cargo and choose Calculate loading so that the plan is current.
- Select the cargo unit on the drawing, or select a cargo row when discussing the whole row. Check the selected context in the Personal AI panel.
- Write one clear question or change, with actual dimensions or coordinates if relevant. For example: “Why is this cargo here?” or “Find a layout with a lower centre of gravity.”
- Read the estimate and data notice. Sending discloses relevant project data, the selection and recent conversation to OpenRouter and the selected model provider.
- Choose Send with your key once. One send starts one model request; proposals are checked locally.
- For a proposal, choose Compare. Inspect its positions, quantities and conditions. Choose Apply changes only when you accept it; otherwise use Cancel proposal or continue the conversation.
- Save your workspace after accepted changes or useful conversation. Applied changes become a new history version; undo changes the plan but does not refund a provider request.
11Save your projects, settings and optional key
- Open My Space (disk icon) → Save workspace, or Save as for a separate copy.
- Choose a name ending in .json, such as my-workspace.makecargofit.json. This file contains all personal projects, the cargo catalogue, layout history, interface and AI settings, and saved personal conversations.
- To include the API key, enable Encrypt file with a password, then explicitly select Include my OpenRouter key.
- Enter Workspace password and Repeat password. Keep the password separately from the file; forgotten passwords cannot be reset.
- Choose Save file. Depending on browser support, select a destination or complete the downloaded file save. Find the file on your computer or phone.
- Watch the status: an up-to-date local recovery copy does not mean your portable file includes the latest changes. Save the file again before moving it elsewhere.
Ctrl+S saves; Ctrl+Shift+S opens Save as. Use Command instead of Ctrl on macOS. Where direct file access is supported and permission is granted, later saves can update the selected file. Other browsers download a new copy; use the newest completed file.
12Reopen, move, lock and recover
- On the target device, open MakeCargoFit → My Space → Open workspace and choose the complete workspace file.
- If protected, enter its password. Projects keep their identities; reopening the same workspace continues the existing work instead of importing duplicate projects.
- For a protected workspace, choose Lock workspace when finished on the current device. The app saves an encrypted recovery copy and reloads to the password prompt.
- If the browser finds an encrypted recovery copy after restart, enter its password to resume. Ordinary local recovery is restored automatically.
- If a recovery copy cannot be opened, keep the original using Download original recovery copy when available, then open a known-good file. Start a new local session replaces that recovery only after your confirmation.
13Apply app updates
- Reconnect to the internet. In App, choose Check for updates.
- When Update app appears, save the latest workspace file first.
- Close other MakeCargoFit tabs and windows, then choose Update app in the remaining window. The app reloads only after the update is ready and your workspace is saved.
- After reopening, check your project and offline readiness before disconnecting.
14If something does not work
| Symptom | What to do |
|---|---|
| No install button | Use the full supported browser and check its menu. You can continue in a prepared browser tab. |
| Offline version is not ready | Reconnect, open App and prepare the offline copy. Check free storage; private mode or clearing site data can remove local copies. |
| Installed app shows different data | Open the saved workspace in that app window and prepare it for offline use there. |
| Key rejected / 401 or 403 | Check that the key was copied correctly, is an ordinary active key and has access to the model. Reconnect with the correct key. |
| Insufficient credit / 402 | Check the OpenRouter balance and the key’s credit limit. MakeCargoFit cannot add credit for you. |
| Too many requests / 429 | Wait, check OpenRouter activity and retry manually only when appropriate. |
| Estimate exceeds your limit | Choose a cheaper compatible model or a smaller output limit; review costs before deciding to raise your limit. |
| Send is disabled | Connect a key, load current model prices, choose a model, calculate a current plan and enter a message. |
| Timeout, cancelled request or invalid answer | Your accepted plan is preserved. Check provider activity/costs before a manual retry. |
| Wrong workspace password | Use the password for that particular file. Existing data is preserved; the password cannot be recovered by MakeCargoFit. |
| Another tab or failed recovery write | Save your current work as a separate file, close other tabs and reopen the intended workspace. Do not assume the recovery copy is current. |
| File opens as the wrong kind of JSON | Open complete workspaces through My Space. Use My Projects → Import JSON for a single Project · JSON export. |
15Before you finish
- The app says Ready to work offline in the actual browser/app window you will use.
- Your latest workspace file is in a folder you can find, and you have a separate backup when needed.
- If that file includes the key, it is encrypted and you know its password.
- OpenRouter has your chosen credit limit; AI works only while online.
- You checked the selected model, request estimate and any proposed plan before applying changes.
- You can reopen the workspace on the intended device. Installing the app has not replaced saving your work.
16Optional Cloud subscription, team and AI budget
All previously free local features remain free without a MakeCargoFit account or subscription: local planning, PWA, JSON/PDF files, local history and Personal AI with your own OpenRouter key. Existing file and calculation limits and optional cloud quotas still apply. Cloud is optional. If the site owner has not configured the cloud service, its panel explains this and offers no account or payment.
When Cloud is available, register with your email and a password of at least 12 characters, confirm your email and sign in. Use Forgot password to request a recovery link. Confirmation, recovery and invitation links contain one-use credentials in the URL fragment; open the intended link and do not forward confirmation or recovery links. Your account password and sign-in session are never included in a portable workspace.
The comparison shows Free, Pro, Team and Business, with EUR/USD and monthly/yearly selectors. Default catalogue prices before VAT: Pro 19 per month or 190 per year for one owner/editor and up to 3 viewers; Team 18 per editor monthly or 180 per editor yearly, with 2–100 editors and currently up to 100 free viewers. Owners occupy editor seats. Business starts at EUR 290 / USD 299 per site per month and is marked coming soon while its conditions are unresolved. API, widget and future features are not enabled by buying a plan. This release supports Stripe TEST only; do not make real payments.
Each paid editor includes a catalogue-defined monthly AI allowance, initially USD 3 of actual provider spending. It remains in USD when billing is in EUR. Annual billing grants only the current monthly slice, never the entire yearly allowance up front. Unused included budget expires at the end of its monthly slice and does not roll over. Opening Checkout, inviting a member or scheduling a future quantity does not grant paid credit.
Purchased AI budget is separate from the included allowance: unused purchased budget persists and can still be spent on cloud AI using the current local project after the subscription ends. Internet access is required. Personal OpenRouter uses your own key and provider balance separately. Before Send, review the authorized maximum; an uncertain provider result can retain that reservation. Check the request status before creating another paid request. AI replies are advice and never automatically approve or change the loading plan.
Save to cloud transfers projects, cargo templates and project layout history to the selected organization. Personal AI chats, device preferences, your OpenRouter key and account credentials stay out of the shared copy. Loading a cloud copy replaces local project data after confirmation while retaining this device's key and preferences. First download a full local workspace if you need an independent backup, including private conversations.
Automatic synchronization starts only after you explicitly enable it for the saved or loaded cloud copy. It exchanges shared project changes in the background while online and entitled to Cloud. Version checks prevent silent overwrites: if local and remote versions both changed, synchronization pauses. Save a local JSON, inspect the cloud copy and choose which version to keep; there is no automatic merge. Opening another workspace or losing the subscription pauses synchronization.
An owner can invite a confirmed email address as editor or viewer. Copy and send the invitation link to that person; they must sign in with the intended verified email and accept it. Editors use paid seats; viewers do not. Pending editor invitations reserve capacity. Owners can revoke invitations, remove members or change roles within paid capacity; the last owner cannot be removed. Each organization keeps its own shared data and permissions.
Cloud history offers the latest retained snapshots for JSON download or local restoration, with up to 50 cloud snapshots. A downloaded shared JSON excludes personal keys and chats. Restoring a snapshot replaces local project data, so save a local backup first; uploading that restored state creates a new cloud version rather than rewriting past history. After the subscription ends, existing data remains readable/exportable within Free limits; new cloud writes and automatic synchronization require a paid subscription.
On monthly plans, paid-seat increases and decreases apply at the next renewal. Annual Team can add editors after payment of a prorated charge for the remaining term: enter the quantity, calculate the charge, review its exact tax-inclusive amount and expiry, then confirm separately. A preview neither charges nor adds seats. If Stripe requires card authentication, open the invoice and complete payment. Seats appear only after the server verifies the paid invoice; a declined card or expired unpaid update adds no seats. Annual decreases still apply at renewal. An active schedule, plan transition, billing dispute or canceled renewal can block a new increase. Added seats contribute an AI slice prorated to the remainder of the current allowance month, then full future monthly slices. Adding seats does not multiply one editor’s personal monthly cap.
Public service limits: shared workspace up to 4 MiB, up to 50 retained cloud copies; viewer and sharing-link limits depend on the catalogue plan. Daily transfer allowances reset at 00:00 UTC: paid organizations receive 100 MiB writes and 300 MiB reads per paid seat; Free receives 50 MiB reads. An owner can request one bounded cloud export daily even if normal reads are exhausted. Limits do not delete local projects or budget. Continue locally or retry after reset.
Cloud hosting and real payments must be configured and checked by the site owner separately. Stripe test payments do not purchase production budget, and paid server AI/key provisioning is disabled in test mode. This manual does not mean that a particular public site already has cloud accounts, paid plans or provider billing connected.
Local planning, PDF and crew-language export remain free offline. A configured cloud service can additionally issue a signed offline entitlement token, initially valid for at most 14 days and never beyond its paid access boundary. Reconnect to refresh it. Expired or modified tokens cannot enable paid rights. Offline rights do not create cloud connectivity and cannot enable features marked coming soon.
Checkout collects the billing address and, where applicable, a business tax/VAT ID; Stripe Tax adds applicable taxes to the price excluding VAT. Review the total and TEST label. Changing plans is an explicit end-of-period process: schedule the transition, retain paid access, then confirm a new Checkout after the old period ends. There is no automatic second purchase. Adding annual Team seats is a separate explicitly confirmed charge. Business terms remain unresolved.
To leave an active transition, choose Cancel plan change, read the consequences and confirm. The service checks Stripe and can expire only an open unpaid Checkout; this action cannot cancel a completed or processing payment. If another operation is still running, wait for the displayed interval and check again. The paid subscription, projects and purchased AI budget remain. If renewal was already canceled, abandoning the transition does not resume it: open Stripe Portal and choose renewal when needed. After a failed first payment for the new subscription, check its expiry, retry confirmation or abandon the transition. If a response is lost or the page reloads, repeat the existing action; no new purchase starts automatically.
17Documents, plan links and AI import
In Export, choose Document language and, optionally, Second instruction language. The primary language is independent of the interface; the second adds labels beneath key headings and terms in the loading instructions. Full explanatory text remains in the primary language. The choice is saved in the project and travels through JSON or workspace files without changing the accepted layout. Bilingual instructions and the standard PDF are free. Once the app is prepared, documents can be generated offline; Chinese labels use embedded fonts.
With Pro, open Export → Logo and company details · Pro and save the company profile: name, address, tax number, contact, color and PDF footer. The logo must be PNG, JPEG or WebP, up to 256 KB and 2048 × 2048 pixels; SVG is rejected. The image is checked and converted to PNG. The profile is stored in your workspace, included in its plain or encrypted file and in an explicitly saved cloud copy. Branding is added with a valid Pro entitlement, including a suitable offline token. Free PDFs and instructions retain their standard appearance; safety warnings are never hidden.
Share an immutable accepted plan from Free, Pro or Team. A verified Free account includes up to 3 active warehouse links across its organizations, for up to 30 days each. Pro and Team retain their included limits. Notes and branding are included only if explicitly selected; safety rules and warnings are always included. Published snapshots exclude personal AI chats, keys, other projects, workspace history and the shared catalog. Editing your project never changes a published snapshot.
Copy the new URL immediately: the database stores only the capability token hash, so a lost URL cannot be recovered from the list. The recipient needs no account and can rotate the default 3D view, choose a transport and loading step, switch to 2D and download the instruction PDF. An optional link password is separate from a local file password; send it separately. Opening a link needs internet. Revocation or expiry blocks new access but cannot remove downloaded PDFs or copies.
Recognize a PDF or photo first reads the document on your device. Supported inputs include text PDFs, scanned PDFs, PNG/JPEG/WebP, TXT, CSV and XLSX, including spreadsheets with unusual headings. Text is extracted locally; scanned pages and photos are prepared as images for a vision model. For PDFs with tables embedded in images alongside text, enable Recognize PDF pages as scans before choosing the file. Select the file again after changing this checkbox; the 6-image limit applies in this mode. The checkbox itself does not send an AI request. Current limits are a 10 MB file, 20 PDF pages, 6 images and 100,000 text characters per import; split larger documents. Choose your own OpenRouter or the Pro cloud AI allowance. The personal path has no app fee, but your provider account pays the cost; the cloud path uses the existing allowance and is disabled in Stripe TEST. AI requires internet. Review the estimate first, then separately confirm sending; there are no automatic paid retries.
The import result is a draft for review. Check every field, dimensions, quantity, weight per unit, orientation and stackability; unknown weight stays unknown (null), rather than becoming zero. Sources include page and quotation: text quotations are checked automatically, while scan quotations need checking against the image. Once confirmed, applying the result creates one undoable history entry. You may save quotations in cargo notes. If a cloud request is unconfirmed, use Check import status: it does not send the request again. Our service does not store the original file, but extracted fields and quotations may remain in the cloud job result and in selected cargo notes. Canceling does not guarantee that the provider stops charging; check its activity before sending again.
18Warehouse links from your local JSON · v0.20.2
Use a configured cloud service and a verified Free account. You do not have to save your full workspace to the cloud. Choose Share by link, or open the cloud panel and publish a local plan. Three links means three simultaneously active Free snapshots per account, not three lifetime publications. Revoke an old link or let it expire to free a slot.
- Calculate and save the accepted layout in your offline app first.
- In the sharing dialog, choose Open local JSON for link and select a project JSON or portable workspace file.
- If the file is encrypted, enter its file password. Decryption happens on this device; the password is not sent to the server or reused as a link password.
- Review the active project, document language, expiry and optional notes/branding. Only that current validated snapshot will be published; the local planner is not replaced.
- Optionally set an 8–128 character link password, create the link, then copy the URL and send its password separately.
The viewer contains only the loading visualization, steps, safety information and instruction export. It has no cargo editor, account controls, AI, catalog or payment tools. The public snapshot is not added to the recipient’s workspace and is not stored for offline viewing.
19Versioned Team plans, catalog and approval · v0.20
- Sign in, select your organization and open Cloud team and warehouse. Owners/editors need the appropriate paid rights for new shared changes; viewers can read saved work.
- In Shared catalog, create a box/cylinder template or save a local cargo item. Add selected quantities to your local project. Ready pallet composites are not catalog templates.
- Calculate the local layout and Publish shared version. Publication saves a sanitized immutable snapshot rather than the full workspace or personal chats/keys.
- Select a revision, inspect its views and every safety warning, then explicitly acknowledge and approve that exact version. New edits require a new approval.
- Add a comment to the selected version or an actual placed unit. Open a saved version locally only after reviewing the confirmation; changes are not silently sent back to the team.
Catalog edits create versions and never rewrite old plans. A changed name/dimensions/shape creates a distinct variant. The project remembers its source entry/version, including boxes placed into pallets; later local edits do not claim to match the template exactly. Conflicting publication or catalog edits stop with a refresh request instead of silently merging. Revisions and comments load in bounded pages; use the earlier-record controls to reach older history. Comments always belong to the selected revision.
20Business warehouse execution and confirmation · v0.20.2
- An owner/editor approves the exact plan and starts its loading run. Only one run may be active per project.
- On the tablet, open Warehouse loading, select the approved run and unit, or scan its QR label. Scanning selects a unit; confirm the action separately. Choose 3D to rotate the plan if helpful.
- Follow the sequence and support rules. Record Loaded, Problem or Skipped, with a reason for a discrepancy. A photo is re-encoded to JPEG without EXIF/geolocation and bounded to 2 MiB.
- When offline, check the separately labelled pending-device counter. Events remain durably queued for this account, organization, run and approved version and send in order after reconnecting. A conflict stays queued; save a queue backup before clearing site data.
- Before closing, ensure all devices have sent their queues. An owner/editor enters the responsible name, a discrepancy/cancellation reason where required, and explicitly acknowledges the outcome. This is an application confirmation, not a qualified electronic signature.
- Choose the document language independently of the interface and download Loading confirmation PDF while online. It contains the server journal at its stated sequence, actual loaded/total counts, problems, available photos and acknowledgment; unsent device marks are not included.
The owner sets private photo storage and retention, initially 180 days. Shortening retention affects saved photos; increasing it cannot restore deleted ones. Confirmed erasure removes a sole-member organization’s nonfinancial records and queues photo deletion. Evidence in an organization with remaining members, including typed names and notes, remains its records after the account reference is anonymized. Downloaded PDF copies cannot be remotely erased. Approved snapshots and pending events/photos are cached in this browser for offline work and may remain after sign-out. Use a trusted device/browser profile; this cache is not an encrypted portable backup.
Business owners can filter and export visible organization audit entries as CSV. The log contains action metadata and actors, without passwords, private AI chats, card data or provider credentials.
Long notes and photo metadata load in separate pages. Wait for a complete refresh before making new marks or exporting a PDF. If the server confirmed a start or closure but the following read failed, the app keeps the confirmed outcome and asks you to refresh; it does not send the action again. New marks and PDF export wait for the complete refresh. Do not clear the queue or site data to repair this error.
An otherwise valid event is accepted with a warning if its device time is over five minutes ahead of the server now or over five minutes before the run started. This is the initial configurable tolerance; a delayed offline upload alone does not mean its clock was wrong. The original device time and server receipt time remain separate; the server event sequence defines order. Check the device clock, but do not delete the pending queue or manually rewrite recorded history.
The confirmation PDF distinguishes full loading, completion with discrepancies, and cancellation. Units not loaded are explicitly counted with the reason. Authors use a generic warehouse-member or deleted-member label instead of an Auth UUID; the deliberately typed responsible name remains on that confirmation. An owner can explicitly cancel an old active run with a reason and acknowledgment even after Business access expires. This does not permit a new run or further paid operations.
A loader receives only approved loading contexts, without subscription, editor-seat, AI-budget or payment information. All approved-run history in its own organization remains accessible. Viewers and loaders share the plan’s existing free-member limit; current invitations reserve places. Switching between viewer and loader does not consume an extra place. Existing members over the limit are retained, but additional places are unavailable until capacity is freed. Business purchases and additional publication-credit packs remain disabled.
21Axles and vehicle measurements · v0.19
Axle and axle-group figures, reserve against entered limits and every warning are free. Pro adds a search for a better axle-load layout; ordinary packing, the existing centering tool and safety information remain free. Local paid tools can use a valid verified offline entitlement token. The site owner must separately configure and test the cloud service and Stripe TEST.
- In the vehicle tab, open the axle and empty-vehicle model and enable axle calculations for the chosen vehicle. Select a semitrailer, rigid truck or trailer with two supports.
- Enter the actual support positions, empty-vehicle mass and its longitudinal center of gravity. X starts at the closed end of the cargo space; enter a negative coordinate for a position in front of it. Initial support positions illustrate geometry only.
- Enter support and gross-mass limits from your vehicle documents. The app does not automatically assign country-specific legal limits or an empty-vehicle mass. An empty field means unknown.
- For a semitrailer, optionally add the tractor: wheelbase, fifth-wheel position from the front axle, measured unladen axle loads and separate limits. Do not count the semitrailer mass again as unladen tractor mass.
- Save the settings. Changing only axle measurements keeps accepted coordinates and pins; changing dimensions, doors or other packing inputs may require recalculation. Calculate a current layout and open the load checks for the selected vehicle.
- With Pro, request an axle-layout search and compare current and proposed figures. A preview changes nothing. Apply a chosen candidate separately or close it; an improvement may not be found. Applying creates an undoable history entry. Pins, height, orientations and supports are preserved.
The technical PDF and loading instructions include configured axle models, entered measurements and limits, calculated loads and warnings. Export → Document language controls these pages independently of the interface. Axle settings travel through project JSON and complete workspace files; older projects without an axle model keep it absent.
When you increase the number of vehicles on the transport tab or through an AI proposal, new vehicles repeat the body of the last vehicle but do not receive its axle model or container balance data: those measurements belong to one specific vehicle. Enter them for each new vehicle; until then the axle and balance checks are not performed for it. Saved data of existing vehicles does not change.
22Build pallets and hand the diagrams to the warehouse · v0.20.1
Single-SKU pallets and standard pallet diagrams/label PDFs are free. Mixed-SKU pallets require Pro. Calculation checks declared rotations, support, stacking, top-load limits, gap, height and mass, with no overhang. A pallet cannot contain another pallet.
In v0.20.1, new pallets prefer the available deck and then lower layers; heavier boxes take priority among allowed placement choices. The contents of one pallet move together in X/Y toward the center as far as the bounds allow: known masses use their moments, otherwise the occupied footprint is centered. With known masses, the app can also swap equal-size boxes within the same layer to move the center of gravity closer to the center; each candidate is rechecked for geometry, support and top-load limits. Orientations, heights and original instances are preserved.
- Enter or import ordinary rectangular boxes, then open Pallets above the scene. Select the source rows. Cylinders, existing pallets and unselected cargo stay unchanged. Unpin selected cargo before palletizing it.
- Choose EUR 120 × 80, 120 × 100, US 48 × 40 or custom dimensions. Check deck height, actual empty-pallet mass, maximum overall height, gross-mass limit and gap. A declared tare is required for calculation. EUR dimensions and approximately 25 kg are an editable EPAL 1 reference, not a measurement or strength certificate for your pallet; the other limits are editable planning inputs.
- In Free, each SKU is palletized separately. With Pro, enable mixed pallets: heavier boxes are considered first subject to bottom-layer rules, and different unloading groups remain on separate pallets.
- Calculate the pallets. Review source-unit, pallet and unplaced counts, top/side views, contents and mass of each pallet. Floor-only means the bottom layer on its deck. A partially fitting list cannot be applied; change the settings and calculate again.
- Apply pallets separately. Only this action replaces selected boxes with composite physical pallets, creating one undoable history entry. Each pallet has quantity 1. Return to the version before palletizing to build a different composition. A project supports up to 2500 original packages, including boxes inside pallets.
- Calculate loading to place the pallets in the container or vehicle. Finished pallets stay on the transport floor, turn horizontally only and are not stacked on one another. Verify deck, feet, packaging and restraint strength separately; the app does not invent the feet contact area.
- Choose the document language and Export → Pallet labels · PDF. Top/side diagrams, pallet number, full contents and mass map each original box ID and instance to its pallet, vehicle and loading step. Before vehicle placement, the location is explicitly unassigned. Composition pages are also appended to the technical PDF and loading instructions; long names and notes continue on later pages.
Reference: EPAL: Euro pallet dimensions and approximate tare
Once the app is prepared, these calculations and PDFs run locally without AI. Pro branding requires its own valid entitlement; standard documents and safety warnings remain available to everyone. Diagrams describe checked geometry, not a forklift trajectory or pallet certification.
To check floor pressure, open Pallet contents and enter the measured Actual support area in cm²: the total floor contact of the feet or runners, greater than zero and no greater than the rectangular pallet footprint. The deck area is not substituted for contact. Empty means unknown support area. Entry is available in Free and survives project JSON, workspace files and shared snapshots. This field does not edit the pallet composition or geometry.
Imported saved pallets are not rebuilt: their contents, coordinates and previous numbering are preserved. Review an older diagram before use. The new heuristic applies when calculating new pallets from source cargo, not by silently changing an old file.
23Large loads: up to 2500 units
The project limit is 2500 original units, including pallet contents, and 500 cargo rows. Enter repeated boxes as one row with the required quantity. CSV/XLSX row limits and file-size limits remain separate. Automatic planning above 500 units currently requires a complete layout of one identical box type in Compact mode; unsupported constraints or insufficient transport produce an explicit error without replacing your accepted plan. Large manually placed plans currently support boxes without pallets.
Large 3D views use batched drawing while retaining each individual box and its selection. Labels are limited to a readable sample and the selected unit. Playback advances in groups; the slider and previous/next controls still reach individual units.
For more than 500 placed units, loading instructions use compact stages and rows. A row lists an inclusive range of steps and instances, per-unit dimensions and mass, and the first and last coordinates. Load every unit in step order and tick the row only after all its units are loaded. Full notes and all unplaced units remain in the document. Save a complete workspace file after changes; public sharing still requires the configured cloud and its existing byte/traffic quotas.
24Two-factor protection for your cloud account · free
You can enable a TOTP second factor for your cloud account free of charge, using codes from an authenticator app. No subscription is required. Setup and cloud sign-in need a connection; local projects, JSON and a prepared PWA continue to work separately from cloud sign-in.
- Sign in to your cloud account and open the two-factor protection section.
- Start adding an authenticator and give the device a recognizable name so you can distinguish the primary factor from a backup.
- Scan the QR code with your authenticator app. If scanning is unavailable, enter the displayed setup secret manually in that app.
- Enter the current six-digit code and confirm setup. The new factor is not active until verification succeeds.
- At your next sign-in, enter your email and password first, then select a configured factor and enter its current code. Cloud data and actions remain unavailable until the second factor is verified.
While your primary authenticator is available, add a second independent factor on a backup device and verify it with its own code. Keep the backup device separately. If you lose the primary device, you can select another verified factor on the sign-in screen.
A password recovery link and access to email do not disable the second factor. If all verified authenticators are lost, the app has no automatic MFA recovery. The service operator would need to verify your identity separately under its own procedure; access restoration is not promised. This release does not issue one-time recovery codes.
- To remove an authenticator, open the two-factor settings and select the factor.
- Confirm the action with a fresh code from an available verified authenticator. Signing in with a password alone is insufficient.
- Check which factors will remain. Removing the last verified factor requires separate explicit confirmation and disables two-factor protection for the account.
This section applies to the cloud account on this website. MFA for a separate self-hosted team server and corporate SSO/SAML sign-in require their own setup and are not enabled by this setting.
25Container balance and center of gravity
Cargo balance indicators are free. Configure a profile for the selected transport unit; the profile does not rearrange cargo or replace the other loading checks.
- In Transport settings, open Container balance profile and enable checking. Cargo CoG values remain available without a profile.
- For a sea container from the catalog, explicitly choose CTU 2014 or custom limits. Other transport uses custom limits. Record the operator’s document or internal source.
- For the combined CoG, enter the measured empty-container mass and all three tare CoG coordinates. Leave unknown values blank.
- Review a current calculated layout. Export the loading instructions or technical PDF to include the configured balance appendix.
Reference: wwwcdn.imo.org
- Coordinates: X from the closed end, Y from the side wall, Z from the floor. Y and Z limits are not assigned automatically.
- Unknown unit mass prevents confirmation of the full cargo CoG. The known mass portion is shown separately.
- The combined CoG requires measured tare data; road axle settings are not reused as container tare.
- A unit crossing the midpoint produces mass intervals for the halves. Its internal mass distribution is not assumed. Half-mass shares are not equivalent to CoG offset.
Four-corner lifting reactions are not calculated. A value within the selected reference is not handling approval; check operator conditions, securing and equipment separately.
The settings and results use the project’s display units, including in/lb. Stored values remain cm/kg, and the document language stays independent of the interface.
26Securing reference worksheet
The securing reference worksheet is free. It compares a top-over lashing alternative for one stable, rigid box resting directly on the floor. It does not certify EN 12195 compliance or confirm that restraints have been fitted.
- Open Checks in the project, then expand “Securing reference calculation”. Add a case and select the cargo unit and the IRU 2014 road reference profile explicitly.
- Enter the documented friction, strap, measured pretension, angle and anchor data. Confirm only physical conditions that you have actually checked; a tick is your statement, not an inspection by the app.
- Calculate the case. Read the directional results and any missing-data or out-of-model messages. Alternative cases are independent; do not add their strap counts or capacities together.
| Input | What to check |
|---|---|
| Mass and center of gravity | Use the accepted physical plan. Unknown values are not replaced with zero. |
| Friction and surfaces | Record the source and actual contact conditions. Selecting a mat does not invent a friction coefficient. |
| LC, STF and actual pretension | Use the label and manufacturer data; record measurements and their source for both strap legs. LC is not STF or breaking force. |
| Angles and anchors | Confirm the actual geometry, separate anchor points and documented capacities. Unsupported arrangements remain unassessed. |
| Operational minimum | Enter a strap minimum and its source. Zero sliding demand does not mean that no restraints are needed. |
The sliding estimate takes the greatest directional requirement, rounds upwards and respects the entered operational minimum. Credited pretension is capped by the lowest of labelled STF and the two measured leg tensions. Forces use daN or lbf, not kg or lb of mass; saved force values remain in daN and dimensions/masses remain metric.
Save the case with the project JSON or full workspace. A change to the physical plan makes the measurements stale. Inspect the changed plan and explicitly recheck the binding before recalculating; a saved case must not silently authorize a different arrangement.
This worksheet refers to public IRU 2014 road guidance. The full paid standard is not bundled, and the worksheet is not a complete implementation of EN 12195-1:2010 plus its corrigenda. Obtain an independent engineer’s review of the applicable rules, equipment and actual arrangement before production use.
Reference: www.hsa.ie
27External codes and SSCC in the warehouse
An external code is assigned to a specific physical unit, not a product name or SKU. This free part of the local project preserves the internal unit ID. Each unit can have one code, with limits of 2,500 assignments and 256 characters per code. A code does not grant access to the project.
- Calculate the plan. Open “Verification → External unit codes” and choose “Assign an external code”. Select the placed unit and check its vehicle and instance number.
- Choose SSCC or an external code, then paste the text or read it with a USB/Bluetooth scanner. Enter only validates the input; click “Assign code” separately to save it.
- Save the project JSON or full workspace. For a cloud team, publish and approve a new revision: a run already in progress continues using the assignments from its own revision.
- In the warehouse, open the correct run and “Scan a code”. Paste the code, use a scanner that sends Enter, or turn on the camera on request. Check the selected unit against its label, then confirm loading separately.
| Format | Supported input |
|---|---|
| SSCC | 18 digits including the check digit; leading zeros remain part of the string. |
| AI (00) | One standalone SSCC: (00) + 18 digits, or 00 + 18 digits without parentheses. |
| Symbology identifier | For one AI 00 element, the prefixes ]C1, ]d2 and ]Q3 are recognized with exact case. |
| Other external codes | EAN, Code 128 and QR text use exact matching: case and significant spaces are preserved. General scanner prefixes are not removed automatically. |
Assignments belong to the saved project revision and survive changes to an existing unit’s size, mass or position. Removing a physical unit, including by reducing quantity, removes its assignment; Undo or re-adding the same ID does not revive it. Assign the code again explicitly. An explicit initial JSON import can restore saved assignments.
The camera starts only when requested and needs browser permission, a suitable device and lighting. If unavailable, use pasted text or a USB/Bluetooth scanner. Offline use relies only on a previously saved context for the correct run; syncing warehouse marks requires a connection.
Existing MakeCargoFit QR codes continue to work with loading-context checks. A QR code with loading parameters cannot be assigned as an external code, and scanned URLs are not opened. The PDF lists exact codes from the saved plan and warns about duplicates; the app does not invent SSCCs or generate barcode images. Select the PDF language independently of the interface.
28Organization loading analytics
An owner or editor can open “Loading analytics” in the cloud team. It compares each run’s exact plan revision with marks accepted by the server. This first read-only mode introduces no new price or paid entitlement; existing local-plan metrics and available run journals remain accessible.
- Open the intended organization and “Loading analytics”. Retrieving the report requires a connection. Reopen it after switching account or organization.
- Choose the last 7, 30 or 90 days, or the “From” and “To” dates. Both dates in the interface are inclusive and use UTC. Runs are selected by their start date; the report’s exclusive upper bound is midnight after the “To” date.
- Check the cutoff time and coverage message. “Retrieve more runs” adds pages from the same query. Until all pages have been read, cards, the table and CSV cover only runs retrieved so far.
- Read the main totals under “Completed runs”. Active and cancelled runs are separate. Distinguish units with a current problem from units that had a problem earlier in the run.
- Before the final export, send warehouse device queues, wait for server acceptance, then select “Refresh cutoff”. Download “CSV of retrieved runs”; coverage and cutoff are included explicitly in the file.
| Metric | How to read it |
|---|---|
| Planned → confirmed | Placed units and units whose latest server state is loaded. Unplaced units from the original plan are shown separately. |
| Calculated volume utilization | Volume from declared dimensions and cargo shape divided by the capacity of all allocated transport. Confirmed volume uses the same declared data for marked units; it is not measured occupied space. |
| Known mass | The sum of known masses, including the known part of pallet contents. If any full unit masses are unknown, the known subtotal is not a complete mass. A loading mark does not replace weighing. |
| Problems / skipped / pending | Latest unit states by server sequence. Retrying the same event does not add units. Historical problems are counted separately from current states. |
Device time and clock diagnostics describe time-data quality, but do not determine the calendar interval. Events use server acceptance time through the cutoff, including after the selected period ends. Delayed offline marks appear after acceptance and a report refresh.
The report and CSV exclude employee names, event authors, notes and photographs. Cargo contents are not sent to GA/Ads. Warehouse viewing and existing journals remain separate from organization analytics. The report does not prove physical loading or transport safety.
29Test API and organization keys
The API is a separate preview interface for server integrations. It is off by default: the operator must enable TEST mode and explicitly grant limited test access to the organization. Registration, local Free use and creating a cloud account do not automatically grant an API quota. Sales, real payments and LIVE access are not enabled in this version.
- Prepare a cloud account and organization. The operator configures the server, pilot expiry and quotas; ordinary users cannot change these through a project.
- The owner opens “API keys” in the cloud team. Management requires the current owner session and the applicable two-factor check. Editors, viewers, warehouse roles and API keys cannot create other keys.
- Choose a clear name, minimum permissions and a UTC expiry date. Start with plans:read. Calculations require plans:write together with plans:read; expiry must be in the future and within the server lifetime limit.
- Click “Create API key” once. Copy the secret or explicitly download its file in the one-time issuance window. Closing the window removes it from this interface; the list retains only the prefix and metadata.
- Use the key only on your own server in the Authorization: Bearer header. Do not put it in a URL, public JavaScript, project JSON or a chat. Browser requests with Origin are unsupported; cookies do not replace a Bearer key.
- Read approved plans or submit a separate private calculation with schemaVersion and a stable Idempotency-Key. Save the returned job identifier and poll its state with GET instead of creating another calculation on every poll.
- Revoke the key when the integration ends or the secret is lost. The owner can list and revoke existing keys even when test access is disabled or expired.
| Route | Purpose | Permission |
|---|---|---|
| GET /api/v1/approved-plans | Pages of the organization’s approved plans | plans:read |
| GET /api/v1/approved-plans/{revisionId} | Read an exact approved plan | plans:read |
| POST /api/v1/pack-jobs | Create a private calculation job; does not publish or approve | plans:write + plans:read; Idempotency-Key |
| GET /api/v1/pack-jobs/{id} | Stored job status and result after completion | plans:read; the same key that created the job |
Jobs and results are stored on the server, so a broken HTTP connection does not mean a new calculation. Check status at the returned job URL. Background recovery runs every 5 minutes, with at most 3 execution attempts. No exact completion time is promised. Calculations use the same packing core and its checks, not an AI request. Server policy limits job and result retention; save any result you need separately.
The database stores a hash, prefix, permissions and expiry, not the full key secret. The interface holds the secret only in memory while its window is open; it is not included in the project, workspace JSON or browser settings. An explicitly downloaded file contains the secret and must be stored like a password. This key does not replace your personal OpenRouter key.
API reads do not expose other organizations or unapproved working versions. A private calculation result does not itself create a shared link, approval or loading marks. API PDF and explicit viewing-link publication are described in section 30. TEST calculation-completion notifications are described in section 31. Ready-made ERP/TMS connectors, the widget and MCP remain outside this stage. The existing core’s safety checks and warnings remain visible; a calculation is not approval for physical transport. The list shows current approvals. If approval changes, retrieve the list again: the former revisionId may no longer be returned. Revoking a key also stops its unfinished jobs and deletes its private inputs and results.
30API PDF and protected 3D viewing links
| Route | Purpose | Permission |
|---|---|---|
| GET /api/v1/pack-jobs/{jobId}/pdf?lang=en | Download loading instructions from a completed private job | plans:read |
| GET /api/v1/approved-plans/{revisionId}/pdf?lang=en | Download the currently approved revision as loading instructions | plans:read |
| POST /api/v1/pack-jobs/{jobId}/shares | Publish a completed private job as a read-only viewing link | shares:write + plans:read; Idempotency-Key |
| DELETE /api/v1/shares/{shareId} | Revoke a link created by this API key | shares:write + plans:read |
- The owner grants plans:read for PDF downloads. Publication additionally needs shares:write, which requires plans:read. A job and its PDF/link belong to the same API key; a different key in the organization cannot take them over.
- For PDF, choose ?lang=en, ru, es, zh-CN, de, pl, uk, ro or lt. This is independent of the interface. Without lang, the project document language is used, otherwise English. Units follow the saved project. Coordinates, unknown mass, unplaced units and safety appendices remain visible; the PDF is not transport approval.
- Wait for a succeeded job before publication. Generate a random 32-byte token encoded as 43 unpadded base64url characters and a UUID Idempotency-Key. Before POST, save the job ID, API-key identity, complete request, token and UUID in a private file. Retry with that same key, UUID and identical body. A lost reply must not generate a new token or publication.
- For password protection, derive the password proof on your server: PBKDF2-SHA256, 600000 iterations, random 16-byte salt and 32-byte proof, with a fresh UUID version. Encode salt/proof as unpadded base64url and send the proof object, not a plaintext password. Use 8–128 characters and pass the password to the recipient separately. The Node.js example on the developer page saves the retry state before sending.
The returned /view/#… URL is a secret capability: give it only to the crew. It opens 3D visualization and loading information without editing. API DELETE can revoke only a link created by the same key; the owner can manage it in the existing sharing screen. Revoking the API key closes its links. Private job/result expiry does not by itself promise that an already published link disappears; check the link expiry and revoke explicitly.
API-created viewing links omit cargo/project notes, organization catalog metadata and logos. includeNotes accepts only false in this pilot. Safety warnings generated from the plan remain visible.
31Webhooks: ERP/TMS notifications
The closed TEST pilot can notify an ERP/TMS server about pack-job.succeeded and pack-job.failed events. These report calculation completion, not transport safety or actual loading. The widget, MCP and ready-made ERP connectors remain separate features.
- The owner opens “Organization API keys” → “Organization webhooks”. The list loads only after this section opens. Changes require an active session and fresh authenticator verification when two-factor protection is enabled.
- The operator first configures an approved receiver for the organization and its signing secret on the server. The interface offers configured destinations with a public HTTPS origin; it accepts no arbitrary URL or secret. The operator must confirm receiver consent before enabling deliveries.
- Select an active API key with plans:read, choose a destination and connect the webhook. The subscription belongs to that exact key and subsequent completion events for its jobs. Old events are not sent automatically; the interface performs no test delivery.
- After a lost reply, refresh the list and retry the same request. The interface retains the UUID and parameters until confirmation, preventing a second subscription. Closing the section or switching accounts clears the unfinished request; inspect the list as the correct owner first.
- The receiver checks the HMAC signature of the raw body and the sending timestamp, durably stores the event and only then replies 2xx. Deliveries can repeat or arrive out of order. Deduplicate by stable event ID; retrieve results with the existing API key and ordinary access checks.
Notifications contain only identifiers, status and expiry metadata. They exclude cargo, notes, PDFs, viewing links, API keys and payment data. Retry and retention are bounded by pilot policy; the screen counts pending, delivered, failed and cancelled deliveries.
32Embed a calculator on a website
The closed TEST pilot adds a calculator and a rotatable 3D plan to a forwarder website. It is a geometric estimate with warnings, not confirmation of transport safety or actual loading.
- The operator separately grants the organization a widget pilot and enables WIDGET_TEST_ENABLED and the private widget policy. The owner opens “Organization API keys” → “Embedded widgets”. A widget grant does not require an API pilot; visitors need no API key.
- Enter the public title and company, accent color and language. List exact allowed HTTPS origins, without paths, trailing slashes or wildcards. Do not paste keys or personal data. An optional logo is converted to PNG; defaults are 32 KB and 512 × 512 px. Confirm publication of the branding.
- Create the widget and explicitly copy its iframe code to an allowed site. Preview opens only on request. After a lost reply, refresh the list and retry the same request; its UUID and parameters stay in the open form. Profiles are immutable: revoke, recreate and replace the code to make changes.
- Visitors enter their own cargo and cm/kg or in/lb units. Calculation runs locally in a separate worker and the plan can be rotated. Visitor cargo, your workspace projects, personal AI settings and API keys are not sent to the server.
Pilot defaults are at most 3 active widgets (or fewer under the grant) and 100 retained profiles, including revoked ones. Old UUIDs are not purged automatically, preventing an old request from creating a new publication. These are technical limits, not a new price; configuration controls access and caps.
33Connect an AI assistant through MCP
This is a local stdio TEST pilot for developers, using a separately enabled organization API key. It is not a public MCP service. Plans and notes returned to an assistant become visible to that assistant and its provider.
- After a local build, configure the client to run node dist-server/mcp.mjs directly, with MAKECARGOFIT_MCP_TEST_ENABLED=true, an exact HTTPS MAKECARGOFIT_MCP_ORIGIN without a trailing slash, and a TEST MAKECARGOFIT_MCP_API_KEY stored only in a protected local secret setting. Do not use npm as the stdio command or put the key in Git, a browser or chat.
- Read-only by default: approved plans, private job summaries and instruction PDFs in a separately selected language. Only explicit MAKECARGOFIT_MCP_ALLOW_PACK=true adds private job creation. Existing API scopes and quotas apply; this adapter cannot buy credits, publish links or call AI.
- For packing, retain the same caller-generated idempotency UUID and unchanged project for every retry, including after a timeout. Query the returned job explicitly. A valid geometric plan does not confirm transport safety. Setup and limits: docs/MCP-PILOT.md.
34Agent journal
On the “Agents” tab of the cloud team, owners and editors see what agents (for example an MCP client) did through the organization's API keys: runs, their status, the key by name and prefix without the secret, events and the agent's summary. Viewers and loaders do not see this tab.
- The owner creates a key for the agent in “API keys” with the “Agent” preset: reading approved plans and private load calculations, valid for up to 30 days, without link publishing. The secret is shown once; authenticator confirmation works as for any key.
- Connect the MCP client using the hint below the preset and paste the secret yourself. The agent imports cargo, calculates the layout, checks the plan and prepares the PDF; actions are written to the journal.
- Open “Agents”, choose a run and read its events and summary. The agent's text is shown as is; links in it are not active.
- Decisions — approving a revision, issuing a link, payment — are made on the usual screens with their checks. The journal has no buttons that perform actions.
- To stop an agent, revoke its key in “API keys”: new calls are refused, open runs are closed, and history is kept until the retention period ends.
35MakeCargoFit Connect: free container transport network · TEST
Connect is free for shippers and forwarders: company profile, private and published requests, clarifications, quotes, comparison, PDFs, 3D viewing, the forwarder cabinet and the website request form. No subscription, Team seats or AI credits are needed; freight is paid to the forwarder directly. Open it from the “Connect · freight” menu or the “Request transport” button in the planner. Until the installation owner turns on the TEST switch, Connect shows that it is off.
- Shipper: calculate a plan, press “Request transport”, sign in with a free account and create a Connect company. The company and its roles (owner, manager, viewer) are separate from the cloud team.
- Fill in the route, service scope (port/door), cargo-ready date, commodity and DG status. The preview shows what forwarders receive: a separate snapshot of one project without the workspace, notes, internal IDs, keys or AI chats. An unknown DG status is never treated as non-dangerous; incomplete data produce a preliminary request.
- Add recipients: your partners (via a one-time link you pass on yourself) or verified forwarders from the directory. Each gets its own 3D viewing period that you can revoke without breaking documents or history.
- The comparison only ranks current, complete and valid quotes for the same scope and containers in one currency; different currencies are never added up and an unknown amount is not zero. “Continue arrangements with the forwarder” creates no booking, contract, payment or delivery.
- Forwarder: create a company with the forwarder role and, if you wish, submit it for operator verification. The public card and service listings appear in the directory only after verification and your explicit opt-in.
- In “Incoming”, open a request, ask a question and send a structured quote: charges (included/excluded/unknown), currency, unit and quantity, validity, the rate event, ETD/ETA, equipment, vessel space and free time. A new request version needs a new quote version.
- The request form for your website is free: enter the exact HTTPS addresses of allowed sites and your brand. A visitor's request reaches only you as a private request; MakeCargoFit does not email the visitor or pass the request to other forwarders.
The network operator is appointed by the installation owner on the server and confirms actions with a fresh authenticator code. The “Verified” badge states the specific checked details, date, reviewer and validity; it cannot be bought. Reports, rejections, suspension and the action log are stored on the server; a suspended company cannot publish, answer or read other parties' requests.
Official references
- Chrome: install a web apphttps://support.google.com/chrome/answer/9658361?co=GENIE.Platform%3DDesktop&hl=en
- Chrome for Android: install a web apphttps://support.google.com/chrome/answer/9658361?co=GENIE.Platform%3DAndroid&hl=en
- Microsoft Edge: install and manage appshttps://support.microsoft.com/en-US/edge/install-manage-or-uninstall-apps-in-microsoft-edge
- Safari on Mac: web apps in the Dockhttps://support.apple.com/en-us/104996
- Safari on iPhone: open a website as an apphttps://support.apple.com/guide/iphone/open-as-web-app-iphea86e5236/ios
- OpenRouter: API keys and credit limitshttps://openrouter.ai/docs/api/reference/authentication
- OpenRouter: quickstarthttps://openrouter.ai/docs/quickstart
- EPAL: Euro pallet dimensions and approximate tarehttps://www.epal-pallets.org/eu-en/load-carriers/epal-euro-pallet
MakeCargoFit · v0.22.0-dev.18 · Product guide updated 31 October 2026
Open MakeCargoFit →