The neutral freight reference layer

No freight to sell. No carrier to push. Primary-source freight data your team — and your agents — can call and cite.

Reference data and deterministic calculations only — not booking, filing, tracking, carrier rating, or legal determination.

REST API · MCP server · GPT · n8n · Zapier · Make

2,939
ADR entries
UNECE ADR 2025 (ECE/TRANS/352), via EU Directive 2008/68/EC · verified 2026-05-13
6,940
HS codes
WCO HS 2022 — UN Comtrade (PDDL) · verified 2026-05-15
6,357
airlines
IATA / ICAO airline code registries · verified 2026-05-13
116,129
UN/LOCODE
UNECE UN/LOCODE 2024-2 (PDDL) · verified 2026-05-15
85,555
airports
OurAirports (public domain, ourairports.com/data), cross-checked vs OpenFlights + Wikidata · verified 2026-06-24
24
MCP tools
derived from the tool registry
One consignment, end to end

Every step is a live tool

Pack it, weigh it, classify it, declare it, land it — the same functions your agents call are the tools you use.

The full reference layer

Real outputs, not promises

Every example below is generated at build time by the live tool it belongs to — never hand-typed.

Freight operations
10 × 120×80 cm, non-stack4 LDM
Computed — freightutils.com
GET /api/ldm?length=1200&width=800&qty=10&stackable=falseJSON ↗
10 × 120×80×100 cm9.6 m³
Computed — freightutils.com
GET /api/cbm?l=120&w=80&h=100&pcs=10JSON ↗
2 × 100×80×80 cm @ 60 kg213.3 kg chargeable
Computed — freightutils.com
GET /api/chargeable-weight?l=100&w=80&h=80&gw=60&pcs=2JSON ↗
40×30×25 cm boxes on a euro pallet48 boxes
Computed — freightutils.com
GET /api/pallet?pl=120&pw=80&pmh=180&bl=40&bw=30&bh=25JSON ↗
40ft High Cube75.7 m³ internal · 26,540 kg payload
ISO 668 / ISO 1496 + carrier specifications · verified 2026-05-15
GET /api/containers?type=40ft-high-cubeJSON ↗
1,000 kg → lbs2,204.62 lbs
Computed — freightutils.com
GET /api/convert?value=1000&from=kg&to=lbsJSON ↗
10 pallets · 2,500 kg · non-stack9.6 m³ · 4 LDM · 2,500 kg air-chargeable
Computed — freightutils.com
POST /api/consignment
10 pallets · road · non-stack, one call9.6 m³ · 4 LDM · 7,000 kg road-chargeable
Computed — freightutils.com
POST /api/shipment/summary
1 t · 500 km · road63.6 kg CO₂e (UK DEFRA / DESNZ — Greenhouse gas reporting: conversion factors)
ISO 14083 / GLEC v3.2 — DEFRA 2026 + EPA 2024 + ADEME Base Carbone (open factors) · verified 2026-06-23
GET /api/emissions?mass=1000&distance_km=500&mode=roadJSON ↗
Dangerous goods
UN 1203MOTOR SPIRIT or GASOLINE or PETROL · Class 3 · PG II
UNECE ADR 2025 (ECE/TRANS/352), via EU Directive 2008/68/EC · verified 2026-05-13
GET /api/adr?un=1203JSON ↗
UN 1203transport category 2 (1.1.3.6)
UNECE ADR 2025 (ECE/TRANS/352), via EU Directive 2008/68/EC · verified 2026-05-13
GET /api/adr-calculator?un=1203&qty=200JSON ↗
UN 1203 · 5 L (LQ)exceeds limit · limit 1 L
UNECE ADR 2025 (ECE/TRANS/352), via EU Directive 2008/68/EC · verified 2026-05-13
POST /api/adr/lq-check
Customs & trade
“coffee”09.01 · Coffee
WCO HS 2022 — UN Comtrade (PDDL) · verified 2026-05-15
GET /api/hs?q=coffeeJSON ↗
FOBFree on Board
International Chamber of Commerce (Incoterms 2020) · provenance pending verification
GET /api/incoterms?code=FOBJSON ↗
methodologyGOV.UK Trade Tariff — live rates at request time
UK Trade Tariff (HMRC), Open Government Licence v3 — live · verified 2026-05-16
GET /api/duty?methodology=trueJSON ↗
“gifts”flags “Gifts” — too vague to file
Computed — freightutils.com
GET /api/ics2-check?description=giftsJSON ↗
Reference data
AWB prefix 176Emirates (EK/UAE)
IATA / ICAO airline code registries · verified 2026-05-13
GET /api/airlines?prefix=176JSON ↗
NLRTMRotterdam · NL
UNECE UN/LOCODE 2024-2 (PDDL) · verified 2026-05-15
GET /api/unlocode?code=NLRTMJSON ↗
AKELD3 · max 1,506 kg
IATA ULD Technical Manual + carrier-published specifications · verified 2026-05-13
GET /api/uld?type=AKEJSON ↗
Standard Curtainsider 13.6m33 euro pallets · 24,000 kg payload
EU Directive 96/53/EC, UK DVSA, 49 CFR (regulatory limits) · provenance pending verification
GET /api/vehicles?slug=standard-curtainsiderJSON ↗
MSKU1234565valid — ISO 6346 check digit 5
ISO 6346 + IATA AWB (mod 7) + IMO number scheme · verified 2026-06-23
GET /api/validate?value=MSKU1234565&type=containerJSON ↗
LHRLondon Heathrow Airport (EGLL)
OurAirports (public domain, ourairports.com/data), cross-checked vs OpenFlights + Wikidata · verified 2026-06-24
GET /api/airports?iata=LHRJSON ↗
51.47, −0.46London Heathrow Airport · 0.1 km
OurAirports (public domain, ourairports.com/data), cross-checked vs OpenFlights + Wikidata · verified 2026-06-24
GET /api/nearest-airport?lat=51.4706&lon=-0.4619&max_results=1&type=large_airportJSON ↗
MCP-only meta-toolPro · 50,000 req/mo
freightutils.com
For AI agents

Ground truth your agent can cite

Every response carries a _source envelope — the authority, the dataset edition, and where it came from.

> tools/call adr_lookup { "un_number": "1203" } { "count": 1, "results": [ { "un_number": "1203", "proper_shipping_name": "MOTOR SPIRIT or GASOLINE or PETROL", "class": "3", "classification_code": "F1", "packing_group": "II", "labels": "3", "special_provisions": "243 534 664", "limited_quantity": "1 L", "excepted_quantity": "E2", "transport_category": "2", "tunnel_restriction_code": "(D/E)", "hazard_identification_number": "33", "variant_index": 0, "variant_count": 1 } ], "meta": { "source": "ADR 2025 (UNECE, ECE/TRANS/352, applicable 1 Jan 2025); given legal effect by EU Directive 2008/68/EC (consolidated). Factual compilation, best-effort — not legal advice, not a regulatory authority.", "edition": "ADR 2025", "entries": 2939 }, "_source": { "type": "reference", "authority": "UNECE", "dataset": "ADR 2025", "source_url": "https://unece.org/adr-2025-files", "data_vintage": "ADR 2025", "licence": "factual compilation, no named open licence", "retrieved_via": "freightutils.com" } }
npx freightutils-mcp
Claude DesktopCursorChatGPTn8nZapierMake
Sources you can audit

Primary sources, verified dates

Every dataset names its issuing authority and the date it was last audited against it — the same provenance backbone that stamps _source on every API response.

DatasetAuthorityEditionLast auditedStatus
ADR dangerous goodsUNECEADR 20252026-05-13verified
HS codesWorld Customs OrganizationHS 20222026-05-15verified
Airline codes & AWB prefixesIATA / ICAO airline code registries2026-05-13pending-verification
UN/LOCODE locationsUNECEUN/LOCODE 2024-22026-05-15verified
AirportsOurAirports (community-maintained open data)OurAirports 2026-06-242026-06-24verified
ISO containersISO 668 / ISO 14962026-05-15pending-verification
ULD typesIATA ULD Technical Manual + carrier-published specifications2026-05-13pending-verification
Vehicles & trailersEU Directive 96/53/EC, UK DVSA, 49 CFR (regulatory limits)pending verificationpending-verification
Incoterms 2020International Chamber of Commerce (Incoterms 2020)pending verificationpending-verification
UK duty & VATHM Revenue & Customs (GOV.UK Trade Tariff)2026-05-16live
Emission factorsISO 14083:2023 / GLEC Framework v3.2 methodology; factors from UK DEFRA/DESNZ 2026 (OGL v3.0), US EPA GHG Emission Factors Hub 2024 (US-Gov public domain), and ADEME Base Carbone V23.6 (Licence Ouverte / Etalab). GLEC = methodology citation only.v1 (DEFRA 2026 + EPA 2024 + ADEME Base Carbone V23.6)2026-06-23verified
Identifier check digitsISO 6346 (containers) / IATA Air Waybill modulus-7 (air waybills) / IMO Ship Identification Number Scheme — public check-digit algorithms, implemented not reproducedISO 6346 + IATA AWB mod-7 + IMO number scheme2026-06-23computed

verified multi-source audit complete · pending-verification audit in progress, provenance not yet asserted · computed deterministic method, not a dataset · live fetched from the authority at request time

Pricing

Free to start, honest ceilings

25
requests/day · anonymous
no signup, no key
100
requests/day · free API key
email only, no card
50,000
requests/month · Pro, £19/mo
no contracts

Need SLA, higher limits, or audit export? contact@freightutils.com

Distribution

Wherever your stack lives

The same reference layer behind one REST API — packaged for agents, workflows and humans. freightutils-mcp v2.11.2 on npm.

Build an agent

Point your MCP client at the server and every tool is callable, with _source on each response.

{
  "mcpServers": {
    "freightutils": {
      "command": "npx",
      "args": ["-y", "freightutils-mcp"]
    }
  }
}
Integrate a system

One REST API, snake_case JSON, OpenAPI-described. Import the spec or the Postman collection and go.

Get IT approval

Processing posture, retention windows, sub-processors and a signable DPA — written for the person who has to say yes.