TDE

io.github.danha2048/tde · v1.0.0 · ecommerce

TDE is healthy: it completed an MCP handshake in 1782 ms and exposes 17 tools.

Prices a trade deal month by month: what an order does to your cash, and what to ask for instead.

Endpoint: https://app.tdehq.com/mcp/ (streamable-http)

No repository listed · Website · JSON · Add to my inventory

Facts

Users (last 30 days)0
HandshakeHealthy
Auth neededNone
Tool count17
Latency1782 ms
Last checked (UTC)2026-10-20T10:06:05.565Z

Health history

Checked (UTC)StatusLatencyError
2026-10-20T10:06:05.565ZHealthy1782

Tools (17)

test_orderWhether the caller's next order can be placed this month, and how large, checked month by month against their own cash, budget and stock limits. `profile` is `{"business": {...}, "navigator": {...}}`. Needs `navigator.monthly_demand_units`, `business.monthly_spend_gbp` (GBP a month), `business.cash
margin_cushionHow much of a gross margin survives the cost move TDE has MEASURED for the goods. A v1 heuristic. Pass either `profile` (`{"business": {...}}`, with `margin_pct` and the goods' code or category) or `margin_pct` (percent) and `hs6` (six-digit commodity code) together; both reach the same calculation
landed_costCIF value, duty and import VAT, in GBP. Send the goods value as `goods_gbp`, or as `goods` with `currency`; amounts in another currency are converted at the Bank of England rate TDE holds, stated under `fx_rate` with its date. Give `duty_rate_pct`, or a `commodity_code` and `origin` for goods enter
lane_stateA trade lane's current state (how freely ships are passing the chokepoints on its route) and the date the data covers. `corridor_id` names the lane (for example `uk_india`; `capabilities` lists them); default is the deployment's live lane. READ from the daily pipeline: `as_of` is the data date, not
plan_ledgerEvery pound the `test_order` plan moves, month by month. Takes the same `profile`, `regime_state` and `corridor_id` as `test_order` and builds the same plan without re-solving it, so cash lines and cost lines agree with that plan. `months` is monthly, the grain the plan is solved at. `ledgered: fal
plan_productsA joint plan for up to 30 products sharing one cash floor, monthly budget, credit facility and supplier capacity. `profile["navigator"]["products"]` is the list of product rows (each with `id`, `label`, `monthly_demand_units`, `monthly_spend_gbp` and optional `unit_sell_price_gbp`, `starting_invent
risk_registerWhat could go wrong on the caller's own figures, priced by stage: Source, Terms, Order, Pay, Ship, Clear, Cash. Takes the same inputs as `test_order` and prices against the same plan. Each row has an `exposure` (the cost if it happens), `covers` (what would cover it) and a `lever` (that cover's cos
cost_scenarioWhat the goods could cost over the coming months: a `low`/`mid`/`high` band ESTIMATED from what this lane's past disruption episodes did to goods prices. A band from measured history, not a forecast. Freight is held at the caller's own figure. `horizon_months` is optional. `events_behind_it` counts
cash_runwayHow long the caller's cash lasts if costs move as the lane's price scenario says. Needs cash on hand, revenue, margin and fixed costs in `profile.business`; each one absent is named in `missing` (`projected: false`). Returns `runway_months_low`/`mid`/`high` and `worst_drawdown_gbp` over `horizon_mo
duty_at_stakeDuty on a year of the caller's goods at their stated rate, and what a preference claim under the UK-India trade agreement could be worth. COMPUTED from `profile` alone (spend, duty rate, preference status), with no network call. Whether goods qualify depends on their code and the rules of origin; t
quote_checkWhere a supplier's quote sits in the MEASURED customs-value band (HMRC unit values, last twelve months) for one six-digit code and origin. `hs6` and `origin` (country) are required. `quote` is GBP per unit; `unit_mass_kg` converts it to GBP per kilogram, the band's unit. Only GBP quotes are placed
compare_lanesOne of the caller's saved products on the deployment's live lane and on a second lane, against one cash position. `second_origin` names the second lane's origin; `product_id` picks the product (default: the first in `navigator.products`). `second_quote_gbp_per_unit` and `second_lead_time_months` de
compare_quotesOne to five supplier quotes, each run as a whole-order plan against the caller's `profile` through the same engine as `test_order`, and ranked: feasible first, then total cost, then lead time. Each quote: `label` and `unit_price` required; `currency` one of GBP, USD, INR, CNY, EUR, THB (default GBP
forecaster_backtestThe forecaster's backtest for one past disruption event, DERIVED: how many tracked series moved after the event's detected start, out of how many could be tested. `event_id` is optional (default: the first event; an unknown id is refused by name). `measurable: false` means the event sits too close
learned_inputsWhat the record has taught the engine: each model, its standing, its published backtest, and whether it may change a figure a reader sees (false for every model today). `proposals` is empty, with a `reason`, until a learned proposal is published with its backtest. `profile` is optional and does not
veteran_notesWhat usually goes wrong for these goods on this lane, and what to check before committing: sourced practitioner notes. `hs6_codes` (six-digit codes) and `corridor_id` are optional; without them only the notes that apply to any goods or any lane are returned. `lane_covered` and `chapter_specific` sa
capabilitiesWhat this server answers: its endpoints, the lanes and whether each is live, the provenance labels, and the payment presets and splits a profile can use. Takes no input. Figures carry a `provenance` stamp (READ, MEASURED, DERIVED, COMPUTED, PROXY or ESTIMATED; defined in the server instructions) an