Server definition
- Hash
- sha256:ab93f20bc27917a955af32a8d5628084a5d50b4e16a20e609bbba8a79d5a15dc
- What it is
- What a remote MCP server returned when asked what it offers: 6 tools
The blob, as servednamed by its sha256
{
"instructions": null,
"tools": [
{
"description": "Draft the dangerous-goods paperwork for a load from its cargo lines: an IMDG 5.4.1 transport-document description per DG line (UN, proper shipping name, class, PG, marine pollutant), the 5.3 placards + marks required, and the 5.4.2 container/vehicle packing-certificate statements. Input is a \"loadingmcp.packing-list\" document. This is a DRAFT from the curated DGL — it lists the fields a DG-competent person must still complete (flash point, net explosive mass, unverified PSN) and is never signed.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"packingList": {
"additionalProperties": {},
"description": "A loadingmcp.packing-list document with DG-bearing lines (unNumber/hazmatClass/packingGroup/marinePollutant). See docs/INTEGRATION.md.",
"propertyNames": {
"type": "string"
},
"type": "object"
}
},
"required": [
"packingList"
],
"type": "object"
},
"name": "export_dg_paperwork",
"outputSchema": null
},
{
"description": "Export a load as a machine-readable LOADING WORK ORDER: a numbered stuffing sequence (which SKU, where, in what order and orientation), the securing/bracing action list, the key declarable figures (VGM, axle load, centre of gravity), and an optional per-retailer inbound-packaging check (Amazon FBA / Walmart). Feed it to a WES/TMS, a robotic palletiser, or a printable worker sheet. This is decision support to MEET published retailer/carrier specs — verify in your own portal; it is not a retailer certification.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"equipmentCode": {
"description": "Equipment code, e.g. 40HC (see list_equipment). Omit to auto right-size.",
"type": "string"
},
"items": {
"description": "Cargo lines to load",
"items": {
"properties": {
"hazmatClass": {
"description": "IMDG class (e.g. \"3\", \"5.1\"); omit if none",
"type": "string"
},
"height": {
"description": "mm",
"type": "number"
},
"id": {
"description": "Your reference for this cargo line",
"type": "string"
},
"length": {
"description": "mm",
"type": "number"
},
"maxStackWeightKg": {
"minimum": 0,
"type": "number"
},
"quantity": {
"default": 1,
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"type": "integer"
},
"stackable": {
"default": true,
"type": "boolean"
},
"type": {
"default": "box",
"enum": [
"box",
"pallet",
"drum",
"cylinder",
"bigbag",
"roll",
"sack"
],
"type": "string"
},
"unNumber": {
"description": "UN number (e.g. \"UN1263\") — derives the IMDG class/PG/segregation/stowage/EmS from the DGL.",
"type": "string"
},
"weight": {
"description": "kg per unit",
"type": "number"
},
"width": {
"description": "mm",
"type": "number"
}
},
"required": [
"id",
"length",
"width",
"height",
"weight"
],
"type": "object"
},
"type": "array"
},
"mode": {
"default": "sea",
"description": "Transport mode for auto right-size (ignored when equipmentCode is given).",
"enum": [
"sea",
"road",
"air"
],
"type": "string"
},
"retailers": {
"description": "Retailer inbound-packaging profiles to check the load against.",
"items": {
"enum": [
"AMAZON_FBA",
"WALMART_STORES",
"WALMART_WFS",
"GENERIC_GMA"
],
"type": "string"
},
"type": "array"
}
},
"required": [
"items"
],
"type": "object"
},
"name": "export_plan",
"outputSchema": null
},
{
"description": "ERP/TMS on-ramp: take a versioned \"loadingmcp.packing-list\" document (a WMS/ERP export — cargo lines + equipmentCode) and return a load plan + a container manifest. Parsing is fail-explicit: an invalid document returns the exact per-line issues, never a silently-dropped row. Pairs with plan_load's output for a full round-trip.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"packingList": {
"additionalProperties": {},
"description": "A loadingmcp.packing-list document: { format: \"loadingmcp.packing-list\", formatVersion, equipmentCode, jurisdiction?, lines: [...] }. See docs/INTEGRATION.md.",
"propertyNames": {
"type": "string"
},
"type": "object"
}
},
"required": [
"packingList"
],
"type": "object"
},
"name": "import_packing_list",
"outputSchema": null
},
{
"description": "List the standard container, truck, ULD and pallet types LoadingMCP can plan loads into, with internal dimensions (mm) and max payload (kg).",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"category": {
"description": "Optional category filter",
"enum": [
"container",
"truck",
"uld",
"pallet"
],
"type": "string"
}
},
"type": "object"
},
"name": "list_equipment",
"outputSchema": null
},
{
"description": "Compute a 3D load plan for cargo into a container or truck: containers used, utilization (volume & payload %), centre of gravity, crush-protection violations, and a securing checklist (round cargo that rolls, soft cargo that slumps). Cargo `type` drives realism — drums/pipes hex-nest, big bags/sacks load on top and are never crushed. Omit `equipmentCode` to auto right-size to the cheapest container that fits. A real API key runs the production PackingSolver optimizer; the public demo key uses the offline preview packer.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"equipmentCode": {
"description": "Equipment code, e.g. 40HC (see list_equipment). Omit to auto right-size.",
"type": "string"
},
"items": {
"description": "Cargo lines to load",
"items": {
"properties": {
"boardCaliperMm": {
"description": "Corrugated board thickness (mm)",
"exclusiveMinimum": 0,
"type": "number"
},
"boardEctLbIn": {
"description": "Corrugated edge-crush test (lb/in) → physical McKee crush limit for cartons",
"exclusiveMinimum": 0,
"type": "number"
},
"bulky": {
"default": false,
"description": "Bulky/awkward — never takes a load on top and needs handling clearance",
"type": "boolean"
},
"compatibilityGroup": {
"description": "Class-1 explosives compatibility group (A–S).",
"type": "string"
},
"deliveryStop": {
"description": "Multi-drop delivery-stop order (1 = first delivered, loaded last at the doors). ≥2 distinct stops + sequenceStops zones the load nose→doors.",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"type": "integer"
},
"doubleWall": {
"description": "Double-wall corrugated (vs single)",
"type": "boolean"
},
"hazmatClass": {
"description": "IMDG dangerous-goods class (e.g. \"3\", \"5.1\") — drives 7.2.4 segregation. Omit for non-hazardous.",
"type": "string"
},
"height": {
"description": "mm",
"type": "number"
},
"id": {
"description": "Your reference for this cargo line",
"type": "string"
},
"length": {
"description": "mm",
"type": "number"
},
"limitedQuantity": {
"description": "Shipped as a limited quantity (IMDG 3.4) — exempt from most segregation except vs class 1/7.",
"type": "boolean"
},
"marinePollutant": {
"description": "Marine pollutant (IMDG 2.10 / MARPOL Annex III). Derived from the DGL.",
"type": "boolean"
},
"maxStackWeightKg": {
"description": "Your crush limit: max kg allowed on top of one unit. Omit for a generous default; 0 = nothing may stack on it.",
"minimum": 0,
"type": "number"
},
"packingGroup": {
"description": "IMDG packing group. Derived from the UN number when unNumber is set.",
"enum": [
"I",
"II",
"III"
],
"type": "string"
},
"quantity": {
"default": 1,
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"type": "integer"
},
"refrigerated": {
"default": false,
"description": "Needs the cold chain (reefer only)",
"type": "boolean"
},
"segregateFromGroups": {
"description": "IMDG segregation groups to keep this substance away from (its DGL column-16b provisions).",
"items": {
"type": "string"
},
"type": "array"
},
"segregationGroups": {
"description": "IMDG 2.7.2.5 segregation groups this substance belongs to.",
"items": {
"type": "string"
},
"type": "array"
},
"stackable": {
"default": true,
"description": "Whether anything may be stacked on top",
"type": "boolean"
},
"subsidiaryHazards": {
"description": "IMDG subsidiary hazard classes, e.g. [\"6.1\", \"8\"].",
"items": {
"type": "string"
},
"type": "array"
},
"thisSideUp": {
"default": false,
"description": "Must stay upright — restricts the packer to upright orientations",
"type": "boolean"
},
"type": {
"default": "box",
"description": "Cargo shape: drum/cylinder/roll hex-nest; bigbag/sack load on top, never crushed",
"enum": [
"box",
"pallet",
"drum",
"cylinder",
"bigbag",
"roll",
"sack"
],
"type": "string"
},
"unNumber": {
"description": "UN number, e.g. \"UN1263\" or \"1263\". When set, the engine DERIVES the IMDG class, packing group, subsidiary risks, marine-pollutant status, segregation groups, stowage category and EmS from the curated Dangerous Goods List — no need to hand-enter each. Explicit DG fields override the derived ones.",
"type": "string"
},
"weight": {
"description": "kg per unit",
"type": "number"
},
"width": {
"description": "mm",
"type": "number"
}
},
"required": [
"id",
"length",
"width",
"height",
"weight"
],
"type": "object"
},
"type": "array"
},
"jurisdiction": {
"description": "Road jurisdiction for the axle / gross-weight compliance check (default EU). Set CN for China GB 1589 drayage limits.",
"enum": [
"EU",
"US",
"CN"
],
"type": "string"
},
"mode": {
"default": "sea",
"description": "Transport mode — scopes auto right-size to usable equipment (sea→containers, road→trucks, air→ULDs). Ignored when equipmentCode is given.",
"enum": [
"sea",
"road",
"air"
],
"type": "string"
},
"sequenceStops": {
"default": false,
"description": "Delivery-stop sequencing: with ≥2 distinct deliveryStop values, zone the load nose→doors in reverse delivery order.",
"type": "boolean"
},
"vesselMotion": {
"description": "IMO CSS Annex 13 vessel motion + stowage position. When set, the sea leg uses the position-dependent DYNAMIC acceleration field (a container on deck forward sees a far harsher case than one low amidships) instead of the flat sea-area coefficient.",
"properties": {
"bGmFactor": {
"description": "Explicit IMO CSS Annex 13 B/GM correction factor (fallback when bOverGm absent).",
"exclusiveMinimum": 0,
"type": "number"
},
"bOverGm": {
"description": "Beam / metacentric-height ratio B/GM; derives the Annex 13 transverse B/GM correction.",
"exclusiveMinimum": 0,
"type": "number"
},
"lengthFraction": {
"description": "Longitudinal stowage position as a fraction of ship length from the aft perpendicular (0=aft, 1=fore).",
"maximum": 1,
"minimum": 0,
"type": "number"
},
"lengthM": {
"description": "Ship length between perpendiculars (m); with speedKn, derives the Annex 13 length/speed correction (50–300 m).",
"exclusiveMinimum": 0,
"type": "number"
},
"lengthSpeedFactor": {
"description": "Explicit IMO CSS Annex 13 length/speed correction factor (fallback when lengthM/speedKn absent).",
"exclusiveMinimum": 0,
"type": "number"
},
"speedKn": {
"description": "Service speed (kn); pairs with lengthM.",
"exclusiveMinimum": 0,
"type": "number"
},
"stowageZone": {
"description": "Vertical stowage zone.",
"enum": [
"onDeckHigh",
"onDeckLow",
"tweendeck",
"lowerHold"
],
"type": "string"
}
},
"required": [
"lengthFraction",
"stowageZone"
],
"type": "object"
},
"vgm": {
"description": "SOLAS Verified Gross Mass declaration (else a tare+cargo estimate is reported)",
"properties": {
"declaredKg": {
"description": "Shipper-declared SOLAS VGM per container (kg), index-aligned to containers used",
"items": {
"minimum": 0,
"type": "number"
},
"type": "array"
},
"dunnageKg": {
"description": "Dunnage/securing mass (kg) to fold into the calculated VGM estimate",
"minimum": 0,
"type": "number"
},
"method": {
"description": "VGM method: M1 = weighbridge of the packed container, M2 = certified calculated sum",
"enum": [
"M1",
"M2"
],
"type": "string"
}
},
"type": "object"
}
},
"required": [
"items"
],
"type": "object"
},
"name": "plan_load",
"outputSchema": null
},
{
"description": "Given total cargo volume (m³) and weight (kg), suggest how many of which container to use — a quick volume/weight estimate. For an exact, dimension-aware plan with utilization, CoG and securing, use plan_load (which can also auto right-size).",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"volumeM3": {
"description": "Total cargo volume in cubic metres",
"type": "number"
},
"weightKg": {
"description": "Total cargo weight in kilograms",
"type": "number"
}
},
"required": [
"volumeM3",
"weightKg"
],
"type": "object"
},
"name": "suggest_containers",
"outputSchema": null
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:ab93f20bc27917a955af32a8d5628084a5d50b4e16a20e609bbba8a79d5a15dc | sha256sum