Most commodity tools show a price going up or down. This one looks at what sits behind the price: where the supply is grown, what's happening there now, and which shipping routes it has to pass through. The aim is to warn before a shock reaches the price. A simplified model with made-up regions, shares and prices, built to test whether that warning is real.
Loading the model…
Price swings are becoming larger and more frequent, for two different reasons. This model builds both in, and makes them more frequent over the 30 years it simulates.
Prices first, as most tools show them. Each commodity has a made-up price history, a handful of growing regions and the shipping routes it uses. They're chosen for contrast: one region dominant (cocoa), two regions dominant (palm oil), spread out (wheat), and spread out but dependent on one chokepoint (sugar).
Shocks are shaded with hindsight: a rise of 8% or more within 16 weeks. Each shows in the price only once it has started.
The next step adds what the price chart leaves out: how risky the growing regions and the shipping routes are right now.
Add the supply riskTwo kinds of risk, kept apart. Growing regions affect how much of a commodity exists. Shipping routes affect how, how fast and at what cost it reaches buyers. Both add up to the price pressure expected over the next 12 weeks.
| Region | Share of world supply | Weather | Politics | Price pressure |
|---|
| Route | Share of traded volume | State | Price pressure |
|---|
Share of each commodity's traded volume passing each chokepoint (a cargo can pass two). One disruption hits every commodity that depends on that route, in proportion.
Readings from noisy signals, as forecasts and news are. The true state of each region and route drives the simulated shocks and is hidden from every approach, and from the agent.
Next: three ways to raise an alert, run on the same history.
Compare the approachesThe same history, read three ways. Price-only is the usual status quo. The middle one uses where supply is grown and the usual risky season, but no live news, to show how much the live signals add.
Today's usual tool. Alerts when the price has risen fast over the last four weeks, on a threshold set in calmer years.
Alerts on the most concentrated commodities ahead of their risky season, with no live news.
Alerts when expected price pressure from growing regions and shipping routes passes a threshold.
Bars show when each approach was on alert. Shaded: shocks, with hindsight. These settings also change the backtest and results tabs.
One history can be lucky. The backtest replays hundreds.
See the backtestThese stored results were made with an earlier version of the model; re-run the backtest.
Average over every run. Both supply rates drift upward: production shocks with the climate, route shocks with more frequent chokepoint disruption.
Share of each approach's caught shocks by weeks of warning. Negative weeks: the alert came after the price had started to move. Route shocks give less warning: they're sudden, and the lead comes from congestion beforehand and the weeks before delayed cargoes reach the price.
Next: what the runs add up to.
See the resultsNext: the same intelligence, asked for by an AI agent instead of read off a dashboard.
Ask the agentThe model's price, production and route data is offered as tools an AI agent can call (an MCP server), so a buyer can ask in their own AI assistant and get an answer built from the same numbers, with the tool calls shown and every figure checked against them.
Example conversations haven't been recorded yet.
list_commodities()The four commodities with today's price, status and price pressure.
get_price_history(commodity, weeks)Weekly prices.
get_supply_concentration(commodity)Growing regions, their shares and current risk, and the concentration index.
get_route_exposure(commodity)The shipping routes it depends on, how heavily, and their state.
get_route_status(route)A route's state, for how long, and every commodity that depends on it.
get_exposure(commodity)Price pressure over the next 12 weeks, split into production and transit, with the drivers ranked.
assess_sourcing(commodity, mix)Your own exposure, given where you buy from, against the world average.
get_track_record(commodity)How the alerts did in the backtest, so the agent can say how far to trust one.
Any MCP client (Claude Desktop, Claude Code, an in-house agent) can connect with an access token.
The token is separate from your invite link; ask for one.