Quote Price Optimization (Win Probability) — Saifs AI
quote_pricingRecommend the quote price that maximises expected margin, from your own won / lost quote history. Inputs: quote_history (quote_ref, date, segment, customer_type, product, qty, cost, list_price, quoted_price or amount, outcome won / lost / open, competitor_count; CRM / CPQ headers as exported), deal or deals (same fields, optional quoted_price to judge), quote_model_snapshot (from an earlier run), tender + tender_history (public bid results) for sealed bids, job (fit_win_model, price_recommendation, explain_price, tender_bid, discount_leakage, win_loss_report). Returns decision cards first, a price range with P(win) and expected margin at each price, explanation, Friedman / Gates tender bid, discount waterfall and leakage, win/loss report and an updated snapshot. Uses penalised logistic regression and Friedman bidding. Under 200 closed quotes gives rules of thumb only. Never uses protected attributes or competitors' private prices. Not for list price setting across a whole catalogue, demand forecasting or loan / interest pricing. Bigger exports: quote_pricing_get_engine.
Tool call template
This tool declares no required parameters. Add optional parameters from the input schema as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {},
"name": "quote_pricing"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| job | No | Omit to run everything the inputs allow. | |
| deal | No | The deal to price: segment, customer_type, product, qty, cost, list_price, competitor_count; quoted_price to judge a proposed price. | |
| seed | No | ||
| as_of | No | ||
| deals | No | Several deals to price. | |
| forget | No | ||
| tender | No | Sealed tender: engineers_estimate (or reference), our_cost, competitors (names) or competitor_count, date. | |
| mapping | No | Header -> standard field overrides. | |
| our_name | No | Our company's name as it appears in tender_history. | |
| date_order | No | ||
| expired_as | No | lost | |
| max_listed | No | ||
| min_margin | No | ||
| min_quotes | No | ||
| margin_band | No | ||
| price_basis | No | auto | |
| min_win_odds | No | ||
| quote_history | No | Past quotes, won AND lost (open ones are ignored for fitting): quote_ref, date, segment, customer_type, product, region, rep, qty, cost, list_price, quoted_price or amount, discount, outcome, competitor_count; off-invoice rebate / freight / promo / cash_discount for the waterfall. | |
| segment_field | No | segment | |
| tender_history | No | Public bid results of earlier tenders: tender id, bidder, bid amount, engineer's estimate, date (one row per bidder per tender). | |
| currency_symbol | No | Symbol on the cards, e.g. '₹' (lakh / crore grouping) or '$'. Default: the currency the data is written in. | |
| allow_above_list | No | ||
| protected_fields | No | ||
| min_segment_quotes | No | ||
| quote_model_snapshot | No | quote_model_snapshot from an earlier run (the model). | |
| recency_half_life_days | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| model | No | ||
| alerts | No | ||
| status | Yes | 1 = processed, 0 = refused (see decisions) | |
| tender | No | ||
| message | No | ||
| metadata | Yes | ||
| decisions | Yes | Plain-language cards, priority order. Relay these first. | |
| assumptions | No | ||
| recommendations | No | ||
| win_loss_report | No | ||
| discount_leakage | No | ||
| data_quality_report | No | ||
| quote_model_snapshot | No |