Foresee
公式Foreseeは、AIアシスタントがすべての保険会社と補償オプションにわたって住宅保険と自動車保険を比較できるようにし、即時的で正確かつ詳細な見積もりを提供します。
Foresee MCPで何ができますか?
- 自動車保険の見積もりを比較 —
quote_insuranceを使用して、車両情報と補償内容を指定し、複数の保険会社から即時の項目別見積もりをリクエストします。 - 住宅保険または賃貸保険の価格設定 — 物件の詳細や
coverage_aやcoverage_cなどの補償限度額を指定して、詳細な住宅保険または賃貸保険の見積もりを取得します。 - 補償のトレードオフを検討 — 免責金額や限度額を変更すると月々の保険料がどう変わるかを、レスポンス内の価格ラダーで確認します。
- 不足している要素を特定 —
annual_mileageや運転記録など、省略された詳細のうち、tighten_byの提案に基づいて見積もりに最も影響を与えるものを尋ねます。 - 保険会社との見積もり確認 — エージェントサーバー上の
live_carrier_quotesを使用して、保険会社と直接見積もりを照合します。
ホスト型 MCP サーバー
npx add-mcp 'https://agents.go-foresee.com/mcp'Claude Code、Codex、Cursor などにインストールできます
ドキュメント
ドキュメント
Foreseeは、AIアシスタントがすべての保険会社と補償オプションにわたって自動車保険と住宅保険を比較できるように、即時的で正確かつ詳細な見積もりを提供します。
Foreseeの利用方法
Foreseeは2つのMCPサーバーをホストしています:
個人情報(PII)を提供せずに、シンプルで手間のかからない見積もりを希望するユーザーは次を使用します:
https://mcp.go-foresee.com/mcp
見積もりを保険会社に直接確認したいユーザーは、Foreseeのコンピュータ使用エージェントを次の経由で起動できます:
https://agents.go-foresee.com/mcp
どちらのサーバーも認証は不要です。
ツール
ForeseeはMCPサーバー上で2つのツールを公開しています:
| ツール | 目的 | agents. | mcp. |
|---|---|---|---|
quote_insurance | 即時的で正確かつ詳細な見積もりを生成 | ✅ | ✅ |
live_carrier_quotes | 保険会社に見積もりを確認 | ✅ | ❌ |
ツール1: quote_insurance
目的:Foreseeがサポートする保険会社から、Foreseeが現在サービスを提供しているラインと州にわたって、1回の呼び出しで即時的で項目別の見積もりを生成します。
入力パラメータ
| パラメータ | 型 | 必須 | 詳細 |
|---|---|---|---|
profile | object | はい | プロフィールを参照 |
lines | object | はい | キーは価格設定するライン(auto、home、renters);値はそのラインの補償オプション(補償オプションを参照) |
carriers | string[] | いいえ | デフォルトは「全保険会社」 |
include_partial | boolean | いいえ | false |
include_failures | boolean | いいえ | true |
プロフィール
コアプロフィール
コア入力profileに加えて、自動車保険と住宅・賃貸者保険用の追加ブロックがあります。
必須フィールドは年齢(またはdob)、ZIPコード、および(自動車保険の場合)車両詳細のみです。
省略された任意フィールドは宣言された前提になります:保守的な代替値が選択され、assumptionsとして報告されます — 例:annual_mileage = 12000、価格に最も影響を与える前提をリストしたtighten_byエントリ付き。prior_insuranceは同じラインの保険を意味し、companion_policiesは異なるラインの保険を意味します。
| フィールド | 型 | 必須 |
|---|---|---|
zip_code | string | はい |
age | integer | はい |
dob | string、YYYY-MM-DD | ageの代替として受け入れ可能 |
city | string | いいえ |
gender | string | いいえ |
marital_status | string | いいえ |
education | string | いいえ |
employment_status | string | いいえ |
occupation | string | いいえ |
credit_range | string | いいえ |
home_ownership_status | string | いいえ |
residence_type | string | いいえ |
military_affiliation | string | いいえ |
memberships | string[] | いいえ |
effective_date | string | いいえ |
prior_insurance | object | いいえ |
companion_policies | string[] | いいえ |
自動車保険プロフィール
| フィールド | 型 | 必須 |
|---|---|---|
auto.vehicles[].year | integer | はい |
auto.vehicles[].make | string | はい |
auto.vehicles[].model | string | はい |
auto.vehicles[].ownership | string | いいえ |
auto.vehicles[].annual_mileage | integer | いいえ |
auto.vehicles[].primary_use | string | いいえ |
auto.vehicles[].garaging_zip | string | いいえ |
auto.drivers[].relation | string | いいえ(最初のものはself) |
auto.drivers[].dob | string | いいえ |
auto.drivers[].years_licensed | integer | いいえ |
auto.drivers[].accidents | object[] | いいえ |
auto.drivers[].violations | object[] | いいえ |
auto.drivers[].sr22_required | boolean | いいえ |
accidentsとviolationsは構造化オブジェクトのリストであり、空のリストはクリーンな記録です。
住宅・賃貸者保険プロフィール
| フィールド | 型 | 必須 |
|---|---|---|
property.year_built | integer | いいえ |
property.construction_type | string | いいえ |
property.roof_type | string | いいえ |
property.square_feet | integer | いいえ |
property.protection_class | string | いいえ |
property.replacement_cost | integer | いいえ |
property.devices | string[] | いいえ |
property.losses | object[] | いいえ |
補償オプション
linesの各キーは、そのラインの補償オプションを取ります。サーバーのデフォルトで価格設定されるものはありません:渡したオプションが価格設定されるものです。
自動車
| オプション | 型 | 必須 | 補償内容 |
|---|---|---|---|
bi | string | はい | 対人賠償責任:あなたが他人に負わせた傷害。1人あたり/1事故あたりの限度額(千ドル単位)、例:"100/300" |
pd | integer | はい | 対物賠償責任:あなたが他人の車や財産に与えた損害。限度額(千ドル単位)、例:100 |
coll_deductible | integer | はい | 衝突:過失の有無にかかわらず、事故による自分の車の損害。1回の請求ごとに支払う免責金額(ドル) |
comp_deductible | integer | はい | 包括的:事故以外の原因(盗難、火災、雹、破壊行為、動物との衝突)による自分の車の損害。1回の請求ごとに支払う免責金額(ドル) |
um | string | いいえ | 無保険・低額保険運転者:過失のある運転者が保険に加入していない、または保険が不十分な場合のあなたの傷害。1人あたり/1事故あたりの限度額(千ドル単位)、例:"100/300" |
medpay | integer | いいえ | 医療費補償:過失の有無にかかわらず、あなたと同乗者の医療費。限度額(ドル)、例:5000 |
住宅
| オプション | 型 | 必須 | 補償内容 |
|---|---|---|---|
coverage_a | integer | はい | 住居:家屋自体の再建。限度額(ドル)、通常は再調達価格 |
coverage_e | integer | はい | 個人賠償責任:敷地内外で法的に責任を負う傷害または損害。限度額(ドル) |
coverage_f | integer | はい | 他人への医療費支払い:敷地内での負傷後の来客の医療費(過失の有無にかかわらず)。限度額(ドル) |
aop_deductible | integer | はい | その他全危険免責金額:独自の免責金額がある危険(地震など)を除くすべてについて、1回の請求ごとに支払う金額(ドル) |
補償B(他の構造物 — 独立したガレージやフェンスなど)、C(個人財産 — あなたの持ち物)、D(使用損失 — 家に住めない間の生活費)はドルで尋ねられません — これらはselで補償Aに対する比率として返されます。
賃貸者
| オプション | 型 | 必須 | 補償内容 |
|---|---|---|---|
coverage_c | integer | はい | 個人財産:あなたの持ち物。限度額(ドル) |
coverage_e | integer | はい | 個人賠償責任:法的に責任を負う傷害または損害。限度額(ドル) |
coverage_f | integer | はい | 他人への医療費支払い:自宅での負傷後の来客の医療費(過失の有無にかかわらず)。限度額(ドル) |
deductible | integer | はい | 補償が始まる前に1回の請求ごとに支払う金額(ドル) |
coverage_d | integer | いいえ | 使用損失:修理中に退去しなければならない場合の追加生活費。限度額(ドル) |
レスポンス形式
| プレフィックス | 頻度 | 意味 |
|---|---|---|
Q | ラインごとに1回 | 価格設定された内容:州、事業ライン、補償選択 |
format: factors: | ラインごとに1回 | 以下のすべての自己説明用凡例 |
assumptions: | ラインごとに1回 | Foreseeが行った前提;high_impact: trueはこのフィールドが見積もりに実質的に影響を与えることを意味します |
tighten_by: | ラインごとに1回 | 価格に最も影響を与える前提・欠落した事実 |
not_priced: | 該当する場合 | 除外された保険会社とその理由 |
C | 保険会社ごとに1回 | 保険会社、引受会社、月額保険料(点推定値と信頼区間) |
W | 必要に応じて | 上記の保険会社に付随する警告 — 例:「州最低限の対人・対物賠償を引き受けていない」 |
L | 保険会社ごとに1回 | 補償または危険ごとの月額費用 |
F | 保険会社ごとに多数 | ラインごとに1つの料率因子。factors:の凡例で名前が付けられています。値はLコードと1対1で対応:空白 = その補償に影響しない、単一の値 = すべての補償に適用。括弧内はプロフィールが該当した行(100/300のような段、90066のような事実、またはapplied / not applied)。値の接尾辞:なし = 正確、~ = 導出、? = 推定 |
D | 保険会社ごと | 価格ラダー:各補償レバーについて、提供されるすべての段を、選択された月額に対する±$/月として表示。他のすべては選択内容に固定。+0.00は選択された段を示します;(asked X) = Xは提供されておらず、価格は最も近い提供段に位置します。Dから再価格設定してください;再呼び出しはしないでください |
例:自動車
ZIP 90066に住む41歳で、2021年型ホンダシビックを所有。
Mercuryは通常の保険会社セルを表示;Travelersは2つの可能な引受会社を通じて料率設定するため、そのセルにはciセグメント(配置スパン)が付きます。USAAは保険会社自身の理由でnot_pricedに入ります。
{
"profile": {
"zip_code": "90066",
"age": 41,
"auto": {"vehicles": [{"year": 2021, "make": "Honda", "model": "Civic"}]}
},
"lines": {"auto": {"bi": "100/300", "pd": 100, "coll_deductible": 500, "comp_deductible": 500}},
"carriers": ["mercury", "travelers", "usaa"]
}
省略されたすべてのプロフィールフィールドは宣言された前提として返されます — 以下の太字のassumptions:
ブロックは上記の簡素なリクエストによって引き起こされ、tighten_by:は価格に最も影響を与える7つの回答をリストします。Mercuryは通常の保険会社セルを表示;Travelersは2つの可能な引受会社を通じて料率設定するため、そのセルにはciセグメント(配置スパン)が付きます。USAAは保険会社自身の理由でnot_pricedに入ります。
Q CA auto sel={"bi":"100/300","coll_deductible":500,"comp_deductible":500,"pd":100}
format: Q state [line] sel=<coverage_selection priced, JSON> ; C=carrier|entity|monthly|ci lo-hi ; tighten_by=missing facts that most move the price — offer to re-quote with the user's answers ; L COV:$,.. = monthly $ per coverage ; F fid(selected)=v,v,.. = rating factor, one value per coverage in the L order, blank=not applied, single value=all coverages, suffix ?=estimated ~=derived none=exact ; D lever selected=option:±$/mo vs the carrier's monthly, others held at the selection (selected(asked X) = X is not an option; the price is at the selected rung shown) ; W = warning — e.g. an asked limit is not offered and the price covers the nearest offered rung instead
factors: f0=BI Limit f1=Good Driver f2=Group Placement (Rule G) f3=PD Limit f4=UMBI Limit f5=Medical Payments Limit f6=Comprehensive Deductible f7=Collision Deductible f8=Vehicle Symbol f9=ca_good_driver_pri f10=group f11=UM Limit
assumptions: [{"assumed":"Male","field":"gender","high_impact":false},{"assumed":"Single","field":"marital_status","high_impact":false},{"assumed":12000,"field":"annual_mileage","high_impact":true},{"assumed":0,"field":"accidents_3yr","high_impact":true},{"assumed":0,"field":"violations_3yr","high_impact":true},{"assumed":false,"field":"dui","high_impact":true},{"assumed":false,"field":"currently_insured","high_impact":true},{"assumed":null,"field":"homeowner","high_impact":false},{"assumed":null,"field":"occupation","high_impact":true},{"assumed":null,"field":"memberships","high_impact":true}]
tighten_by: annual_mileage,accidents_3yr,violations_3yr,dui,currently_insured,occupation,memberships
not_priced: usaa:USAA sells only to military members, veterans, and their fam
C mercury|Mercury Insurance Company|235.11
L BI:56.33,PD:44.10,UMBI:16.85,MP:0.97,COMP:17.49,COLL:99.38
F f0(100/300)=1.51,,,,,
F f1(applied)=0.8
F f2(not applied)=1.0
F f3(100)=,1.38,,,,
F f4(30/60)=,,1.65,,,
F f5(1000)=,,,1.0,,
F f6(500)=,,,,0.89,
F f7(500)=,,,,,1.0
D bi 100/300=15/30 *available through December 31, 2024:-19.03,25/50 *available through December 31, 2024:-14.18,30/60 *available on or after January 1, 2025:-9.70,50/100:-6.72,100/300:+0.00,250/500:+12.31,300/300:+12.68,500/500:+23.13
D pd 100=5:-15.34,10:-12.14,15:-9.27,25:-7.99,50:-2.88,100:+0.00,250:+2.56,300:+3.83
D coll_deductible 500=100:+19.87,200:+14.91,250:+12.42,500:+0.00,1000:-9.94,2000:-29.81,2500:-39.75
D comp_deductible 500=25:+25.74,50:+17.88,100:+11.00,200:+6.09,250:+2.75,500:+0.00,1000:-2.75,2000:-5.70,2500:-8.06
C travelers|Travelers Commercial Insurance Company|368.50|ci 327.21-415.00
L BI:149.00,PD:70.17,CP:15.50,CL:114.33,UMBI:19.50
F f0(100000/300000)=1.649,,,,
F f8(symbol AA)=1.009?,1.003?,,,
F f9(applied)=0.8
F f10(not applied)=1.0
F f3(100000)=,1.443,,,
F f6(500)=,,0.627,,
F f8(symbol 12)=,,0.941?,,
F f7(500)=,,,0.801,
F f8(symbol 17)=,,,1.013?,
F f11(30000/60000)=,,,,1.5
F f8(symbol 1)=,,,,1.0?
D pd 100=5:-21.50,10:-10.50,15:-6.67,25:-2.83,50:-0.67,100:+0.00,250:+0.50,300:+0.83,500:+1.17
present: Lead with the best option for this user — its price and a one-line reason — then a comparison sorted cheapest-first (Carrier · Monthly · 6-month total; a markdown table when your surface renders it) and the annual dollar spread between cheapest and priciest — that spread is the reason to compare. These are Foresee's estimates of what each carrier will charge; the assumptions and tighten_by blocks say how they were made and how to sharpen them. Foresee never takes payment: when the user settles on a carrier (or asks to buy), give that carrier's carrier_quote_url as a clickable link — the purchase completes on the carrier's own quoting portal.
自動車のLコードは保険会社が価格設定する補償です(結合されたBIPD、または分割されたBI/PD、さらに衝突、包括的、無保険運転者、手数料)。これらはパネル全体で正規化されていません。
例:住宅
上記と同じ41歳が、1998年築の木造住宅で再調達価格45万ドルの保険に加入:
{
"profile": {
"zip_code": "90066",
"age": 41,
"property": {"year_built": 1998, "construction_type": "frame", "replacement_cost": 450000}
},
"lines": {"home": {"coverage_a": 450000, "coverage_e": 300000, "coverage_f": 1000, "aop_deductible": 1000}},
"carriers": ["mercury", "autoclub"]
}
selはB/C/Dを価格設定された補償Aに対する比率として反映します。MercuryのLは
危険の分解(火災、水害、山火事、手数料);AAAはパッケージ化された保険料を提出します。住居の事実はassumptions:/tighten_by:にあります — ここでは屋根の種類、保護クラス、クリーンな損失履歴。
Q CA home sel={"aop_deductible":1000,"coverage_a":450000,"coverage_b_pct":0.1,"coverage_c_pct":0.5,"coverage_d_pct":0.2,"coverage_e":300000,"coverage_f":1000}
format: Q state [line] sel=<coverage_selection priced, JSON> ; C=carrier|entity|monthly|ci lo-hi ; tighten_by=missing facts that most move the price — offer to re-quote with the user's answers ; L COV:$,.. = monthly $ per coverage ; F fid(selected)=v,v,.. = rating factor, one value per coverage in the L order, blank=not applied, single value=all coverages, suffix ?=estimated ~=derived none=exact ; D lever selected=option:±$/mo vs the carrier's monthly, others held at the selection (selected(asked X) = X is not an option; the price is at the selected rung shown) ; W = warning — e.g. an asked limit is not offered and the price covers the nearest offered rung instead
factors: f0=Deductible f1=Coverage A f2=Multiple Policy Discount (Automobile) f3=Personal Property Replacement Cost f4=Additional Replacement Cost f5=Ordinance or Law f6=Reduced Coverage Endorsement f7=Coverage E f8=Coverage F f9=Enhanced Home Package f10=Water Backup Limit f11=Other Perils Deductible (Table 5 relativity, additive) f12=Water Deductible (Table 5 relativity, additive) f13=Coverage A / Amount of Insurance Relativity (Table 5) f14=Package Discount (Exchange auto policy)
assumptions: [{"assumed":"Asphalt Shingle","field":"roof_type","high_impact":false},{"assumed":1,"field":"stories","high_impact":false},{"assumed":2,"field":"bathrooms","high_impact":false},{"assumed":1,"field":"families","high_impact":false},{"assumed":"Primary","field":"residency_type","high_impact":false},{"assumed":5,"field":"protection_class","high_impact":true},{"assumed":"Attached","field":"garage_type","high_impact":false},{"assumed":"Single","field":"marital_status","high_impact":false},{"assumed":[],"field":"home_losses","high_impact":true}]
tighten_by: protection_class,home_losses
C mercury|CALIFORNIA AUTOMOBILE INS CO|123.67
L P1_FIRE:34.69,P2_LIABILITY:6.39,P3_THEFT:6.40,P4_WIND:2.68,P5_WATER:61.56,P6_OTHER:3.57,P7_CAT_WIND:0.97,P10_CAT_WATER:0.04,P12_WILDFIRE:0.43,P13_FFEQ:1.36,WC_RESIDENCE_EMPLOYEES_910:0.67,FEE:3.75,FEE:1.16,FEE:0.01
F f0(1000)=0.95,,0.887,0.963,1.0,0.909,0.963,1.0,0.95,0.95,,,,
F f1(450000)=1.895,1.206,1.142,0.901,2.519,1.176,0.901,2.519,1.518,2.313,,,,
F f2(No)=1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,,,,
F f3(No)=1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,,,,
F f4(No)=1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,,,,
F f5(0.1)=1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,,,,
F f6(No)=1.0,,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,,,,
F f7(300000)=,1.5,,,,1.0,,,,,,,,
F f8(1000)=,1.5,,,,,,,,,,,,
F f9(No)=,,1.0,1.0,1.0,1.0,1.0,1.0,,,,,,
F f10(No)=,,,,1.0,,,1.0,,,,,,
D aop_deductible 1000=500:+13.38,1000:+0.00,1500:-5.38,2500:-21.45,3500:-26.58,5000:-37.01,10000:-48.28,25000:-63.01,50000:-72.51
D coverage_a 450000=30000:-90.60,65000:-82.94,95000:-76.38,130000:-68.81,165000:-61.24,195000:-54.76,230000:-47.27,265000:-39.79,295000:-33.39,330000:-25.82,365000:-18.34,395000:-11.94,430000:-4.37,445000:-1.17,450000:+0.00,455000:+1.01,465000:+3.20,500000:+10.86,570000:+26.34,630000:+39.88,700000:+56.03,770000:+72.77,830000:+87.49,900000:+105.41,970000:+124.09,2500000:+523.01,6000000:+1464.79
D coverage_e 300000=100000:-1.34,200000:-0.58,300000:+0.00,500000:+0.68,1000000:+4.04
D coverage_f 1000=1000:+0.00,2000:+0.17,5000:+0.42
C autoclub|Interinsurance Exchange of the Automobile Club|146.10
L Package:139.00,MedPayIL:0.00,LiabilityIL:2.08,BrushFire:0.00,FireFollowingEQ:3.42,FEE:1.60
F f11(1000)=0.393,,,,,
F f12(1000)=1.092,,,,,
F f13(450000)=1.485,,,,,
F f14(No)=1.0,,,,,
D aop_deductible 1000=500:+20.98,750:+7.59,1000:+0.00,1500:-11.45,2000:-16.93,3000:-21.06,5000:-25.36,10000:-28.73,15000:-51.90,20000:-63.44,25000:-71.53,30000:-77.34,50000:-90.49
D coverage_a 450000=60000:-120.65,90000:-115.51,110000:-110.96,130000:-105.66,150000:-99.59,170000:-92.85,190000:-86.53,220000:-76.17,250000:-64.54,280000:-54.09,320000:-40.02,350000:-29.15,360000:-26.54,400000:-16.00,440000:-3.62,450000:+0.00,460000:+2.45,480000:+9.44,550000:+32.95,650000:+77.19,750000:+98.00,850000:+116.62,950000:+147.71,2000000:+475.47,4000000:+1099.41,10000000:+2982.24
present: Lead with the best option for this user — its price and a one-line reason — then a comparison sorted cheapest-first (Carrier · Monthly · 6-month total; a markdown table when your surface renders it) and the annual dollar spread between cheapest and priciest — that spread is the reason to compare. These are Foresee's estimates of what each carrier will charge; the assumptions and tighten_by blocks say how they were made and how to sharpen them. Foresee never takes payment: when the user settles on a carrier (or asks to buy), give that carrier's carrier_quote_url as a clickable link — the purchase completes on the carrier's own quoting portal.
例:賃貸者
同じZIPコードの別の世帯:27歳の賃貸者:
{
"profile": {"zip_code": "90066", "dob": "1998-11-11"},
"lines": {"renters": {"coverage_c": 30000, "coverage_e": 100000, "coverage_f": 1000, "deductible": 500}},
"carriers": ["farmers", "usaa"]
}
Q CA renters sel={"coverage_c":30000,"coverage_e":100000,"coverage_f":1000,"deductible":500}
format: Q state [line] sel=<coverage_selection priced, JSON> ; C=carrier|entity|monthly|ci lo-hi ; tighten_by=missing facts that most move the price — offer to re-quote with the user's answers ; L COV:$,.. = monthly $ per coverage ; F fid(selected)=v,v,.. = rating factor, one value per coverage in the L order, blank=not applied, single value=all coverages, suffix ?=estimated ~=derived none=exact ; D lever selected=option:±$/mo vs the carrier's monthly, others held at the selection (selected(asked X) = X is not an option; the price is at the selected rung shown) ; W = warning — e.g. an asked limit is not offered and the price covers the nearest offered rung instead
factors: f0=Coverage C - Personal Property f1=Deductible f2=Coverage D - Loss of Use (% of C) f3=Additional Living Expense Term (months) f4=Contents Loss Settlement (ACV) f5=Enhanced Personal Property Coverage f6=Claims Free Discount f7=Multi-Policy Discount - Renter/auto f8=Multi-Policy Discount - Renter/life f9=Multi-Policy Discount - Renter/umbrella f10=Multi-Policy Discount - Renter/business f11=Multi-Policy Discount - Renter/boat f12=Multi-Policy Discount - Renter/motorhome f13=Multi-Policy Discount - Renter/recreational_vehicle f14=Multi-Policy Discount - Renter/cea f15=ZIP Code f16=Fireline Score f17=Experience Rating (points) f18=Coverage E - Personal Liability f19=Premises Rented to Others Solely Used as a Private Residence
assumptions: [{"assumed":2000,"field":"year_built","high_impact":false},{"assumed":5,"field":"protection_class","high_impact":false},{"assumed":"Single","field":"marital_status","high_impact":false},{"assumed":[],"field":"home_losses","high_impact":true}]
tighten_by: home_losses
not_priced: usaa:USAA sells only to military members, veterans, and their fam
C farmers|Fire Insurance Exchange|29.88
L PC1_PROPERTY:21.00,PC2_LIABILITY:8.17,FEE:0.42,FEE:0.30
F f0(30000)=1.087,,,
F f1(500)=1.0,,,
F f2(20)=1.0,,,
F f3(12)=1.0,,,
F f4(N)=1.0,,,
F f5(N)=1.0,,,
F f6(Y)=0.9,,,
F f7(N)=1.0,1.0,,
F f8(N)=1.0,1.0,,
F f9(N)=1.0,1.0,,
F f10(N)=1.0,1.0,,
F f11(N)=1.0,1.0,,
F f12(N)=1.0,1.0,,
F f13(N)=1.0,1.0,,
F f14(N)=1.0,1.0,,
F f15(90066)=1.423,,,
F f16(0)=1.0,,,
F f17(0)=1.0,,,
F f18(100000)=,1.0,,
F f19({})=,1.0,,
D deductible 500=100:+5.89,250:+1.85,500:+0.00,1000:-2.61,1500:-4.29,2500:-6.73
D coverage_c 30000=4000:-16.33,10000:-11.95,17000:-7.15,23000:-3.87,29000:-0.59,30000:+0.00,31000:+0.51,37000:+3.79,43000:+7.07,49000:+10.36,55000:+13.64,62000:+17.43,68000:+20.71,74000:+23.99,81000:+27.78,87000:+31.06,93000:+34.35,100000:+38.14,106000:+41.42,112000:+44.70,118000:+47.99,125000:+51.77,131000:+55.06,137000:+58.34,144000:+62.13,150000:+65.41
D coverage_e 100000=100000:+0.00,300000:+3.28,500000:+5.56,1000000:+10.69
present: Lead with the best option for this user — its price and a one-line reason — then a comparison sorted cheapest-first (Carrier · Monthly · 6-month total; a markdown table when your surface renders it) and the annual dollar spread between cheapest and priciest — that spread is the reason to compare. These are Foresee's estimates of what each carrier will charge; the assumptions and tighten_by blocks say how they were made and how to sharpen them. Foresee never takes payment: when the user settles on a carrier (or asks to buy), give that carrier's carrier_quote_url as a clickable link — the purchase completes on the carrier's own quoting portal.
例:自動車+賃貸者のバンドル
同じ27歳の賃貸者が、今度は車を所有。"incidents": []はクリーンな記録を意味するため、運転記録に関する質問はassumptions:を完全にスキップします。
{
"profile": {
"zip_code": "90066",
"age": 27,
"incidents": [],
"prior_insurance": {"insured": true, "carrier": "GEICO", "since": "2019"},
"auto": {"vehicles": [{"year": 2021, "make": "Honda", "model": "Civic", "annual_mileage": 9000}]},
"property": {"year_built": 1978, "square_feet": 850}
},
"lines": {
"auto": {"bi": "100/300", "pd": 100, "coll_deductible": 500, "comp_deductible": 500},
"renters": {"coverage_c": 30000, "coverage_e": 100000, "coverage_f": 1000, "deductible": 500}
},
"carriers": ["farmers", "mercury"]
}
記録、走行距離、保険履歴を提供したため、自動車のassumptions:は5項目に縮小し、そのtighten_by:は2項目になります。
ただし、賃貸者セクションは独自の住居代替値を宣言します;Mercuryは自動車のみを価格設定 — 単独で、バンドルなし。
Farmersは両方を価格設定し、20%の割引を提供します。これはBに文書化されています。
同じ要約がstructuredContentとしてbundle: {farmers: {lines, bundle_total, standalone_total, savings}}に付随します。
Q CA auto sel={"bi":"100/300","coll_deductible":500,"comp_deductible":500,"pd":100}
format: Q state [line] sel=<coverage_selection priced, JSON> ; C=carrier|entity|monthly|ci lo-hi ; tighten_by=missing facts that most move the price — offer to re-quote with the user's answers ; L COV:$,.. = monthly $ per coverage ; F fid(selected)=v,v,.. = rating factor, one value per coverage in the L order, blank=not applied, single value=all coverages, suffix ?=estimated ~=derived none=exact ; D lever selected=option:±$/mo vs the carrier's monthly, others held at the selection (selected(asked X) = X is not an option; the price is at the selected rung shown) ; W = warning — e.g. an asked limit is not offered and the price covers the nearest offered rung instead ; B carrier|bundled $/mo|standalone $/mo|saves $/mo = this carrier priced the asked lines together; the per-line C prices ARE the bundled prices
factors: f0=BI Limit f1=Good Driver f2=Group Placement (Rule G) f3=PD Limit f4=UMBI Limit f5=Medical Payments Limit f6=Comprehensive Deductible f7=Collision Deductible f8=Business & Professional Group f9=UM Limit
assumptions: [{"assumed":"Male","field":"gender","high_impact":false},{"assumed":"Single","field":"marital_status","high_impact":false},{"assumed":null,"field":"homeowner","high_impact":false},{"assumed":null,"field":"occupation","high_impact":true},{"assumed":null,"field":"memberships","high_impact":true}]
tighten_by: occupation,memberships
C mercury|Mercury Insurance Company|289.94
L BI:66.80,PD:52.55,UMBI:17.38,MP:1.05,COMP:23.50,COLL:128.67
F f0(100/300)=1.51,,,,,
F f1(applied)=0.8
F f2(not applied)=1.0
F f3(100)=,1.38,,,,
F f4(30/60)=,,1.65,,,
F f5(1000)=,,,1.0,,
F f6(500)=,,,,0.89,
F f7(500)=,,,,,1.0
D bi 100/300=15/30 *available through December 31, 2024:-22.56,25/50 *available through December 31, 2024:-16.81,30/60 *available on or after January 1, 2025:-11.50,50/100:-7.96,100/300:+0.00,250/500:+14.60,300/300:+15.04,500/500:+27.43
D pd 100=5:-18.28,10:-14.47,15:-11.04,25:-9.52,50:-3.43,100:+0.00,250:+3.05,300:+4.57
D coll_deductible 500=100:+25.74,200:+19.30,250:+16.09,500:+0.00,1000:-12.87,2000:-38.60,2500:-51.47
D comp_deductible 500=25:+34.59,50:+24.03,100:+14.79,200:+8.19,250:+3.70,500:+0.00,1000:-3.70,2000:-7.66,2500:-10.83
C farmers|Farmers Insurance Exchange|398.00
L BI:111.83,PD:73.33,UMBI:28.33,UMPD:1.50,MED:13.33,COMP:34.00,COLL:133.17,FEE:2.50
F f0(100000/300000)=1.46,,,,,,,
F f1(applied)=0.8,0.8,0.8,0.8,0.8,0.8,0.8,
F f8(not applied)=1.0,1.0,1.0,1.0,1.0,1.0,1.0,
F f3(100000)=,1.2674,,,,,,
F f9(30000/60000)=,,1.2788,,,,,
F f6(500)=,,,,,1.0009,,
F f7(500)=,,,,,,1.1986,
D pd 100=15:-8.83,25:-5.00,50:-1.50,100:+0.00,250:+1.33,500:+3.17
D coll_deductible 500=250:+30.67,500:+0.00,750:-13.67,1000:-23.50,1500:-37.50,2500:-56.33,5000:-87.00
D comp_deductible 500=100:+23.67,250:+9.17,500:+0.00,750:-7.17,1000:-10.67,1500:-13.50,2500:-18.83,5000:-21.17
Q CA renters sel={"coverage_c":30000,"coverage_e":100000,"coverage_f":1000,"deductible":500}
format: Q state [line] sel=<coverage_selection priced, JSON> ; C=carrier|entity|monthly|ci lo-hi ; tighten_by=missing facts that most move the price — offer to re-quote with the user's answers ; L COV:$,.. = monthly $ per coverage ; F fid(selected)=v,v,.. = rating factor, one value per coverage in the L order, blank=not applied, single value=all coverages, suffix ?=estimated ~=derived none=exact ; D lever selected=option:±$/mo vs the carrier's monthly, others held at the selection (selected(asked X) = X is not an option; the price is at the selected rung shown) ; W = warning — e.g. an asked limit is not offered and the price covers the nearest offered rung instead ; B carrier|bundled $/mo|standalone $/mo|saves $/mo = this carrier priced the asked lines together; the per-line C prices ARE the bundled prices
factors: f0=Coverage C - Personal Property f1=Deductible f2=Coverage D - Loss of Use (% of C) f3=Additional Living Expense Term (months) f4=Contents Loss Settlement (ACV) f5=Enhanced Personal Property Coverage f6=Claims Free Discount f7=Multi-Policy Discount - Renter/auto f8=Multi-Policy Discount - Renter/life f9=Multi-Policy Discount - Renter/umbrella f10=Multi-Policy Discount - Renter/business f11=Multi-Policy Discount - Renter/boat f12=Multi-Policy Discount - Renter/motorhome f13=Multi-Policy Discount - Renter/recreational_vehicle f14=Multi-Policy Discount - Renter/cea f15=ZIP Code f16=Fireline Score f17=Experience Rating (points) f18=Coverage E - Personal Liability f19=Premises Rented to Others Solely Used as a Private Residence
assumptions: [{"assumed":5,"field":"protection_class","high_impact":false},{"assumed":"Single","field":"marital_status","high_impact":false},{"assumed":[],"field":"home_losses","high_impact":true}]
tighten_by: home_losses
C farmers|Fire Insurance Exchange|24.06
L PC1_PROPERTY:16.80,PC2_LIABILITY:6.54,FEE:0.42,FEE:0.30
F f0(30000)=1.087,,,
F f1(500)=1.0,,,
F f2(20)=1.0,,,
F f3(12)=1.0,,,
F f4(N)=1.0,,,
F f5(N)=1.0,,,
F f6(Y)=0.9,,,
F f7(Y - Farmers)=0.8,0.8,,
F f8(N)=1.0,1.0,,
F f9(N)=1.0,1.0,,
F f10(N)=1.0,1.0,,
F f11(N)=1.0,1.0,,
F f12(N)=1.0,1.0,,
F f13(N)=1.0,1.0,,
F f14(N)=1.0,1.0,,
F f15(90066)=1.423,,,
F f16(0)=1.0,,,
F f17(0)=1.0,,,
F f18(100000)=,1.0,,
F f19({})=,1.0,,
D deductible 500=100:+4.71,250:+1.48,500:+0.00,1000:-2.09,1500:-3.43,2500:-5.38
D coverage_c 30000=4000:-13.06,10000:-9.56,17000:-5.72,23000:-3.10,29000:-0.47,30000:+0.00,31000:+0.41,37000:+3.03,43000:+5.66,49000:+8.29,55000:+10.91,62000:+13.94,68000:+16.57,74000:+19.19,81000:+22.22,87000:+24.85,93000:+27.48,100000:+30.51,106000:+33.14,112000:+35.76,118000:+38.39,125000:+41.42,131000:+44.05,137000:+46.67,144000:+49.70,150000:+52.33
D coverage_e 100000=100000:+0.00,300000:+2.62,500000:+4.45,1000000:+8.55
B farmers|422.06|427.88|5.82
present: Lead with the best option for this user — its price and a one-line reason — then a comparison sorted cheapest-first (Carrier · Monthly · 6-month total; a markdown table when your surface renders it) and the annual dollar spread between cheapest and priciest — that spread is the reason to compare. A B row's per-line prices assume every bundled line is placed with that carrier; for a cross-carrier mix, compare standalone totals. These are Foresee's estimates of what each carrier will charge; the assumptions and tighten_by blocks say how they were made and how to sharpen them. Foresee never takes payment: when the user settles on a carrier (or asks to buy), give that carrier's carrier_quote_url as a clickable link — the purchase completes on the carrier's own quoting portal.
ツール2: live_carrier_quotes
目的:保険会社自身の見積もりサイトで見積もりを確認します。
このツールは冪等です:最初の呼び出しでコンピュータ使用エージェントを起動し、同じ引数で再度呼び出すと、最初の呼び出しの進捗と結果を収集します。
ライブ配信はユーザーの実際の詳細を保険会社に送信し、保険会社はソフトな信用調査を行う場合があります。ツールが呼び出される前にユーザーの同意が収集されます。
Foreseeは見積もりの収集のみを行います;支払いを受け取ったり、保険を拘束したりすることはありません。
入力パラメータ
| パラメータ | 型 | 必須 | 詳細 |
|---|---|---|---|
profile | object | はい | quote_insuranceと同じフィールド — 料率設定の事実 |
lines | object | はい | 実行するラインごとに1つのキー、各値はそのラインの依頼内容(下記参照);複数のキーはバンドルされた実行を起動します |
user_authorization | string | はい | ユーザーのチャット内での承認をそのまま(例:yes, go ahead) |
identity | object | 通常 | ユーザーの詳細。 |
carriers | string[] | いいえ | ファンを制限;デフォルトはライン+州に対して検証済みの実行があるすべての保険会社 |
lines
| 行 | 依頼(Ask) | 理由(Why) |
|---|---|---|
auto | 必須 — quote_insurance と同じ4つの軸(bi、pd、coll_deductible、comp_deductible)を実際の数値として指定 | エージェントが保険会社のフォームに入力する限度額と免責額 |
home | なし — {"home": null} | 保険会社自身のフォームがパッケージを価格設定(再調達価格の見積もりから住居額を算出)し、エージェントはその選択結果を報告する。指定された依頼は黙って無視されず、明示的に拒否される |
renters | 必須 — coverage_c、coverage_e、coverage_f、deductible を実際のドル額で指定 | エージェントはフォームのデフォルト値ではなく、ユーザーの入力値をフォームに入力する。Foresee が値を独自に生成することはない |
複数のキーを同時に指定すると、バンドルされたウォークが実行される。指定されたすべてのラインを引き受ける各保険会社は、独自のマルチライン見積もりフローを通じて、ラインごとの保険料と自社のバンドル合計を報告する。一部のラインのみを引き受ける保険会社は、そのラインだけについてウォークが実行される。ラインごとの依頼ルールはバンドルによって変更されない。
identity
| フィールド | 型 | 必須 | 詳細 |
|---|---|---|---|
first_name | string | はい | 法的な名 |
last_name | string | はい | 法的な姓 |
dob | string、YYYY-MM-DD | はい | |
street | string | はい | 番地(1行目) |
unit | string | いいえ | アパート・部屋番号(2行目) |
city | string | はい | |
zip_code | string | いいえ | プロフィールと異なる場合のみ |
email | string | はい | 保険会社はここに見積もりを送信する |
phone | string | いいえ |
レスポンス
| フィールド | 意味 |
|---|---|
status | in_progress / partial / complete — 同じ引数で再呼び出しして収集する |
agents | 保険会社ごとに1エントリ(下記参照) |
note | 次にすべきこと(例:再呼び出しのタイミング、または以前の実行結果が返されたこと) |
authorization_recorded | 領収書上:同意記録は、保険会社がリスクを確認する前に保存された |
skipped | ディスパッチされなかった保険会社。それぞれ理由付き(no_deterministic_walk、missing_facts に事実を明記) |
not_dispatched | 今回のディスパッチでウォークされないエンジン価格設定の保険会社とその理由(held: …、no_walk、not_walked、offline、not_sold)— ウォーク経路が確認できない推奨事項が黙って消えることはない |
needs | missing_facts 拒否時:ユーザーから収集すべき保険会社ごとの事実と正確なスキーマパス、および閉じた語彙フィールドの場合は受け入れ可能な values |
assumptions | ウォークが「申告なし」の回答に解決した未表明の軽微なフォーム事実:プロフィールパス(field)と送信された値(assumed)— 結果とともにすべてを中継する |
confirmation | 保険会社ごと:ページに印刷された保険料と並ぶ即時エンジン見積もり。複数ラインがウォークされた場合はバンドル見積もり |
error / detail | すべての拒否は構造化された {"error", "detail"} 辞書 |
各 agents エントリ:
| フィールド | タイミング | 意味 |
|---|---|---|
carrier_key、carrier | 常時 | 名簿キー + 表示名 |
status | 常時 | in_progress / complete / failed |
lines | 常時 | このウォークが対象とするライン — バンドルウォークでは複数 |
stage、eta_seconds_remaining | 進行中 | ウォークの現在位置。保険会社の標準フローに対する残り時間 |
quote.premium | 見積もり済み | 保険会社のページが印刷したとおりの原文("$857.80")— 解析、丸め、導出は一切行わない |
quote.term_months | 見積もり済み | 印刷された保険料が対象とする期間 |
quote.premium_by_line | 見積もり済み、バンドルウォーク | ページが印刷した各ラインの保険料。quote.premium のバンドル合計と並べて表示 |
quote.breakdown | 見積もり済み | ページ自身のライン項目、ページ自身のラベル |
quote.bound | 見積もり済み、新しいウォーク | 価格設定済みページから読み取った補償内容 — フォームが実際に拘束した内容と、依頼された内容の対比 |
quote.variants | 見積もり済み | ページが提供した追加の価格設定済みパッケージ |
quote.quote_number | 見積もり済み | ページに表示される場合の保険会社の取得番号 |
quote.evidence_recorded | 見積もり済み | スクリーンショットの証拠がサーバー側に存在(内部URIが通信経路に載ることはない) |
declined: true + detail | 辞退 | 保険会社が詳細を確認し、見積もりを拒否した。エラーではなく回答 — それを中継する |
detail | 失敗 | ウォークがどこでなぜ停止したかについてのウォーク自身の言葉 |
拒否
すべての拒否は構造化された {"error", "detail"} オブジェクトである。下記の行が別途示さない限り、いかなる保険会社にも何も送信されなかった。
| コード | タイミング | 対処法 |
|---|---|---|
profile_required | 世帯情報がトップレベルで送信され、profile ラッパーがない | 拒否の example_arguments に示されたとおりに情報をラップして再呼び出しする |
authorization_required | ユーザーの同意なしに呼び出された | 同意の事実を説明し、同意を得て、そのまま user_authorization に渡す |
bad_identity | SSN のような形の drivers_license_number | SSN は決して収集しない。免許証に印刷されたとおりの免許番号を送信する |
bad_profile | プロフィールフィールドが検証に失敗 | detail がフィールドを指定する |
one_line_per_dispatch | 空の lines マップ | ウォークするラインを少なくとも1つ指定する |
unknown_line | ウォークのないライン(例:umbrella) | detail がライブディスパッチが認識するラインを列挙する |
coverage_selection_required | 自動車または賃貸ウォークに完全な限度額と免責額がない | 数値を指定して再呼び出しする — ウォークは実際の値を入力し、デフォルト値は決して使わない |
bad_ask | 住宅ウォークに補償の依頼が指定された | {"home": null} を送信する — 保険会社自身のフォームがパッケージを価格設定する |
missing_facts | 要求された保険会社のフォームをプロフィールから入力できない | ユーザーに needs[].fields[] の事実を尋ね(提供されている場合は values を使用)、再呼び出しする — 下記参照 |
no_carriers | そのラインと州に対して検証済みウォークを持つ保険会社がない | quote_insurance にフォールバックする |
launch_failed | エージェントが開始できなかった | いかなる保険会社にも到達していない — 再試行は安全 |
例:自動車
フレズノの世帯が GEICO 自身の数字を確認している。プロフィールには GEICO のフォームが要求する事実(所有形態、購入時期、以前の保険、初回免許取得年齢など)が含まれている。identity が実際の申請者であり、依頼は quote_insurance と同じ4つの軸である。
{
"profile": {
"zip_code": "93722",
"dob": "1954-07-02",
"gender": "Male",
"marital_status": "Married",
"education": "Bachelors",
"employment_status": "Employed",
"occupation": "Accountant or CPA",
"home_ownership_status": "Own",
"prior_insurance": {"insured": true, "limits": "not sure"},
"auto": {
"vehicles": [{
"year": 2024, "make": "Ford", "model": "Maverick",
"ownership": "Financed", "annual_mileage": 11000,
"primary_use": "pleasure", "purchase_date": "2026-08"
}],
"drivers": [{
"relation": "self", "age_first_licensed": 16,
"years_licensed_outside_us": 0, "defensive_driving_course": true,
"accidents": [], "violations": []
}]
}
},
"identity": {
"first_name": "Cornelius", "last_name": "Beaumont", "dob": "1954-07-02",
"street": "4381 W Spruce Ave", "city": "Fresno", "zip_code": "93722",
"email": "cornelius.beaumont@example.com", "phone": "559-555-0164"
},
"lines": {"auto": {"bi": "100/300", "pd": 100, "coll_deductible": 500, "comp_deductible": 500}},
"carriers": ["geico"],
"user_authorization": "yes, go ahead and get me GEICO's real quote"
}
{
"status": "in_progress",
"authorization_recorded": true,
"agents": [
{
"carrier_key": "geico",
"carrier": "GEICO",
"method": "browser_agent",
"detail": "deterministic Foresee agent completing the carrier's own quote flow with the user's details",
"eta_seconds": 480
}
],
"skipped": [],
"note": "1 carrier(s) are being quoted live. Collect results by calling this tool again with the same arguments after a few minutes."
}
後で同じ引数で再呼び出しすると、完了したウォークを収集する。
保険料はページ自身の文字列であり、breakdown はページ自身のラベルである(GEICO は2つのパッケージを並べて印刷した)。term_months はその数字が何を対象としているかを示す — $857.80 6か月あたりであり、月あたりではない。
{
"status": "complete",
"agents": [
{
"carrier_key": "geico",
"carrier": "GEICO",
"method": "browser_agent",
"status": "complete",
"quote": {
"premium": "$857.80",
"currency": "USD",
"term_months": 6,
"quote_number": null,
"breakdown": {
"Less Coverage": "$857.80",
"More Coverage": "$870.70"
},
"evidence_recorded": true
}
}
]
}