Premium Lock MCP
This MCP server allows AI agents to interact with Eventual's Premium Lock service, enabling them to browse the insurance premium guarantee catalog, create quotes for home and auto insurance, and manage purchases and claims via a streamable HTTP endpoint without authentication.
Endpoint and access
No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.
https://prod.api.eventualclimate.com/mcp/premium-lockWhat its tools do
7 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.
Read-only (3)
Can change data (4)
Checks and signals
Each line is separate evidence, not a trust score.
- Passed Endpoint answered the live check ·
- Passed Official MCP Registry namespace is tied to eventualclimate.com ·
- Passed Endpoint is on the registry namespace domain ·
- Warning Advertises resources/templates/list but does not implement it
- Availability 1 of 1 checks passed in 30 days
What you can do with it
- Read the Premium Lock product catalog
- Create insurance premium quotes
- Purchase Premium Lock guarantees
- List available insurance carriers
Source and maintenance
Protocol and capabilities
- Server
- eventual-premium-lock 1.0.0
- MCP protocol negotiated in check
- 2025-06-18
- Tools
- 7 advertised
- Resources
- 2 advertised
- Resource templates
- Not advertised
- Prompts
- Not advertised
{
"tools": {},
"resources": {}
}Server-provided instructions
Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.
Tools
7 advertised
get_product_catalog — Get the Premium Lock catalog
What Premium Lock is, per product line and for the bundle: marketing's approved description, example fees and disclosures. Gathering order: first ask for the consumer's email. Then look for their home or auto insurance declarations page in their email and files; if you find one, send it to read_declarations_page and pass the fields it returns to create_quote. Otherwise ask the consumer for the fields create_quote needs. Before any purchase, show the consumer every disclosure in the quote's required_disclosures word for word. Currently: - Premium Lock is not a car insurance policy. It does not insure your car against collision or accident, fire, theft, wind, hail, flooding, earthquake, or any other peril or loss. - Eventual does not pay your car insurance premiums for you. You must keep paying your premiums to your insurance carrier, agent or lender. - Premium Lock is a guarantee of Eventual's premium prediction service and is not insurance or a financial derivative. - Reimbursements begin only above your Payout Threshold and stop once they reach your Warranty Payment Cap. - Premium Lock is governed by the Premium Lock Terms of Service shown at purchase. - Premium Lock is not a home insurance policy. It does not insure your home against fire, theft, wind, hail, flooding, earthquake, or any other peril or loss. - Eventual does not pay your home insurance premiums for you. You must keep paying your premiums to your insurance carrier, agent or lender. - Premium Lock is not an insurance policy. It does not insure your home or your cars against fire, theft, collision or accident, wind, hail, flooding, earthquake, or any other peril or loss. - Eventual does not pay your insurance premiums for you. You must keep paying your premiums to your insurance carriers, agent or lender. - Reimbursements begin only above each policy's Payout Threshold and stop once they reach that policy's Warranty Payment Cap. - Premium Lock is governed by the Premium Lock Terms of Service for each line, shown at purchase.
{
"type": "object",
"properties": {},
"additionalProperties": false
}{
"title": "Get the Premium Lock catalog",
"readOnlyHint": true,
"destructiveHint": false
}read_declarations_page — Read a declarations page
Read a home or auto insurance declarations page (PDF, PNG or JPEG, up to 10 MB). Returns the detected product line, the create_quote fields it found, and missing_required: the fields to ask the consumer for before calling create_quote. Gathering order: first ask for the consumer's email. Then look for their home or auto insurance declarations page in their email and files; if you find one, send it to read_declarations_page and pass the fields it returns to create_quote. Otherwise ask the consumer for the fields create_quote needs. Before any purchase, show the consumer every disclosure in the quote's required_disclosures word for word. Currently: - Premium Lock is not a car insurance policy. It does not insure your car against collision or accident, fire, theft, wind, hail, flooding, earthquake, or any other peril or loss. - Eventual does not pay your car insurance premiums for you. You must keep paying your premiums to your insurance carrier, agent or lender. - Premium Lock is a guarantee of Eventual's premium prediction service and is not insurance or a financial derivative. - Reimbursements begin only above your Payout Threshold and stop once they reach your Warranty Payment Cap. - Premium Lock is governed by the Premium Lock Terms of Service shown at purchase. - Premium Lock is not a home insurance policy. It does not insure your home against fire, theft, wind, hail, flooding, earthquake, or any other peril or loss. - Eventual does not pay your home insurance premiums for you. You must keep paying your premiums to your insurance carrier, agent or lender. - Premium Lock is not an insurance policy. It does not insure your home or your cars against fire, theft, collision or accident, wind, hail, flooding, earthquake, or any other peril or loss. - Eventual does not pay your insurance premiums for you. You must keep paying your premiums to your insurance carriers, agent or lender. - Reimbursements begin only above each policy's Payout Threshold and stop once they reach that policy's Warranty Payment Cap. - Premium Lock is governed by the Premium Lock Terms of Service for each line, shown at purchase.
{
"type": "object",
"required": [
"email",
"document_base64"
],
"properties": {
"email": {
"type": "string",
"description": "The consumer's email."
},
"filename": {
"type": "string"
},
"document_base64": {
"type": "string",
"description": "The file's bytes, base64 encoded."
}
},
"additionalProperties": false
}{
"title": "Read a declarations page",
"readOnlyHint": true,
"destructiveHint": false
}create_quote — Create a Premium Lock quote
Start pricing a Premium Lock quote for the consumer, whose email goes in insured.email. Returns a quote_id; poll get_quote until its status is complete. Gathering order: first ask for the consumer's email. Then look for their home or auto insurance declarations page in their email and files; if you find one, send it to read_declarations_page and pass the fields it returns to create_quote. Otherwise ask the consumer for the fields create_quote needs. Before any purchase, show the consumer every disclosure in the quote's required_disclosures word for word. Currently: - Premium Lock is not a car insurance policy. It does not insure your car against collision or accident, fire, theft, wind, hail, flooding, earthquake, or any other peril or loss. - Eventual does not pay your car insurance premiums for you. You must keep paying your premiums to your insurance carrier, agent or lender. - Premium Lock is a guarantee of Eventual's premium prediction service and is not insurance or a financial derivative. - Reimbursements begin only above your Payout Threshold and stop once they reach your Warranty Payment Cap. - Premium Lock is governed by the Premium Lock Terms of Service shown at purchase. - Premium Lock is not a home insurance policy. It does not insure your home against fire, theft, wind, hail, flooding, earthquake, or any other peril or loss. - Eventual does not pay your home insurance premiums for you. You must keep paying your premiums to your insurance carrier, agent or lender. - Premium Lock is not an insurance policy. It does not insure your home or your cars against fire, theft, collision or accident, wind, hail, flooding, earthquake, or any other peril or loss. - Eventual does not pay your insurance premiums for you. You must keep paying your premiums to your insurance carriers, agent or lender. - Reimbursements begin only above each policy's Payout Threshold and stop once they reach that policy's Warranty Payment Cap. - Premium Lock is governed by the Premium Lock Terms of Service for each line, shown at purchase.
{
"type": "object",
"$defs": {
"CarrierName": {
"enum": [
"aaa",
"aegis",
"acuity",
"agraria",
"alfainsurance",
"alliedtrust",
"allstate",
"americaneuropean",
"americanguaranteeandliability",
"americanintegrityinsurance",
"americanmodern",
"americannational",
"americanrisk",
"americanstrategic",
"americantraditions",
"amfam",
"amica",
"amshield",
"amwins",
"andover",
"arbella",
"arkansasfarmbureau",
"assurant",
"auros",
"autoowners",
"bamboo",
"bearrivermutual",
"benchmark",
"bentoakmutual",
"berkshirehathawayguardinsurancecompanies",
"berkshirehathwayhomestate",
"bloomfieldmutual",
"branch",
"brethrenmutual",
"bristolwestinsurance",
"burnswilcox",
"cabrillocoastal",
"cajununderwriters",
"californiacasualty",
"celina",
"centralinsurancecompanies",
"chubb",
"cincinnatifinancialgroup",
"coastal",
"coloradofarmbureau",
"connectbyamfam",
"countryfinancial",
"csaa",
"cse",
"cumberlandmutual",
"cure",
"cypress",
"dairyland",
"dbinsurance",
"directauto",
"donegalgroup",
"edison",
"elephant",
"encompass",
"enumclaw",
"erie",
"esurance",
"evanston",
"farmers",
"farmersunion",
"farmbureaufinancialservices",
"fednatinsuranceflorida",
"firstacceptance",
"firstcapital",
"floridafarmbureau",
"floridapeninsulainsurance",
"fmne",
"foremost",
"fortegra",
"frankenmuth",
"franklinmutual",
"fredloya",
"frontline",
"gainsco",
"geico",
"georgiafarmbureau",
"germania",
"goodvillemutual",
"goauto",
"grange",
"greaternewyorkmutualinsurancecompany",
"greatnorthwest",
"gulfstate",
"hagerty",
"hanover",
"hcigroup",
"henrycountymutual",
"heritageinsurance",
"hippo",
"homeownersofamerica",
"homesite",
"homesteadmutual",
"horacemann",
"idahofarmbureau",
"inclinecasualtycompany",
"indianafarmbureau",
"integritypc",
"iowafarmbureau",
"ironinsurancepartners",
"kemperauto",
"kemperpersonalinsurance",
"kentuckyfarmbureau",
"kingstone",
"kininsurance",
"lemonade",
"libertymutual",
"lilypad",
"loggerhead",
"louisianafarmbureau",
"lumenselect",
"mangrovepropertyinsurancecompany",
"mapfre",
"mcmillanwarner",
"meemic",
"mercury",
"metlife",
"metromile",
"michiganfarmbureau",
"midvaleinsuranceauto",
"midvaleinsurancehome",
"mississippifarmbureau",
"missourifarmbureau",
"mmg",
"nationalfarmersunion",
"nationalgeneral",
"nationwide",
"njm",
"northernneck",
"northcarolinafarmbureau",
"northstar",
"nycm",
"oceanharbor",
"oldrepublicunion",
"olympusinsurance",
"openly",
"orion180",
"oswegocountymutual",
"other",
"pacificspecialty",
"patriot",
"pekininsurance",
"pemcomutual",
"pennnational",
"peoplestrust",
"pioneer",
"plymouthrock",
"praetorian",
"preferredmutual",
"progressive",
"propertyinsurancecompanyamerica",
"providence",
"pureinsurance",
"quincymutual",
"root",
"rvos",
"safeco",
"safepoint",
"safetyinsurance",
"safeway",
"sagesure",
"securityfirstflorida",
"selective",
"shelter",
"slideinsurance",
"southernfarmbureau",
"southernoakins",
"southcarolinafarmbureau",
"stateauto",
"statefarm",
"sterling",
"stillwater",
"strathmoreinsurancecompany",
"summitspecialtyinsurancecompany",
"surechoice",
"suttonnational",
"swyfft",
"tennesseefarmbureau",
"tesla",
"texasfarmbureau",
"thegeneral",
"thehartford",
"towerhillinsurance",
"travelers",
"trexis",
"21stcentury",
"uaic",
"unionmutual",
"universalnorthamerica",
"universalproperty",
"upcinsurance",
"usaa",
"utica",
"vault",
"vermontmutual",
"vyrd",
"wawanesa",
"wayne",
"westchestersurpluslines",
"westernnational",
"westfield",
"westbend",
"americaninternationalgroup",
"berkley",
"brookfieldwealthsolutionsgrp",
"clearblueinsurance",
"encova",
"iatreinsco",
"kwspecialty",
"lloyds",
"mainstreetamerica",
"markelinsurance",
"munich",
"philadelphia",
"qbe",
"sh1holdings",
"tokiomarine",
"wrightflood",
"zurich",
"aiua",
"cpfa",
"citizenspropertyinsurance",
"guaa",
"illinoisfairplan",
"louisianacitizens",
"mbpia",
"missourifairplan",
"mjia",
"mpiua",
"mrpiua",
"nccoastalpool",
"ncjua",
"newjerseyfair",
"nypiua",
"ohiofairplan",
"rijra",
"texasfairplan",
"vpia"
],
"type": "string",
"title": "CarrierName"
},
"AutoPolicyBlock": {
"type": "object",
"title": "AutoPolicyBlock",
"required": [
"carrier_name",
"state",
"policy_start_date",
"policy_term_months",
"vehicles"
],
"properties": {
"state": {
"type": "string",
"title": "State",
"maxLength": 2,
"minLength": 2
},
"vehicles": {
"type": "array",
"items": {
"$ref": "#/$defs/AutoVehicleInput"
},
"title": "Vehicles",
"maxItems": 10,
"minItems": 1
},
"no_claims": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "No Claims",
"default": null,
"description": "True for no car insurance claim in the last 12 months. Unanswered prices as no claim."
},
"carrier_name": {
"$ref": "#/$defs/CarrierName"
},
"garaging_address": {
"anyOf": [
{
"type": "string",
"maxLength": 255,
"minLength": 1
},
{
"type": "null"
}
],
"title": "Garaging Address",
"default": null,
"description": "Where the cars are kept. On a bundle, the home's address when omitted."
},
"policy_start_date": {
"type": "string",
"title": "Policy Start Date",
"format": "date"
},
"policy_term_months": {
"enum": [
6,
12
],
"type": "integer",
"title": "Policy Term Months"
},
"carrier_friendly_name": {
"anyOf": [
{
"type": "string",
"maxLength": 255
},
{
"type": "null"
}
],
"title": "Carrier Friendly Name",
"default": null
},
"business_use_confirmed": {
"type": "boolean",
"title": "Business Use Confirmed",
"default": false,
"description": "The consumer confirms their policy covers each car's business use. Required when any car's `usage` is `business`."
},
"claims_and_tickets_eligible": {
"type": "boolean",
"title": "Claims And Tickets Eligible",
"default": true,
"description": "The household's Claims & Tickets Eligibility choice, applied to every car."
}
},
"description": "The auto policy on a key-less auto or bundle quote (plan §4B, PRD R2.3).\n\nMoney in DOLLARS. The policy start date is when the policy term the lock\nstarts on begins, and is held to the same 90-day window as a home renewal."
},
"AutoVehicleInput": {
"type": "object",
"title": "AutoVehicleInput",
"required": [
"vin",
"allocated_premium"
],
"properties": {
"vin": {
"type": "string",
"title": "Vin",
"maxLength": 17,
"minLength": 11
},
"usage": {
"anyOf": [
{
"$ref": "#/$defs/AutoVehicleUsage"
},
{
"type": "null"
}
],
"default": null,
"description": "How the car is used. A `business` car needs `business_use_confirmed`."
},
"vehicle_make": {
"anyOf": [
{
"type": "string",
"maxLength": 64
},
{
"type": "null"
}
],
"title": "Vehicle Make",
"default": null
},
"vehicle_year": {
"anyOf": [
{
"type": "integer",
"maximum": 2100,
"minimum": 1900
},
{
"type": "null"
}
],
"title": "Vehicle Year",
"default": null
},
"vehicle_model": {
"anyOf": [
{
"type": "string",
"maxLength": 64
},
{
"type": "null"
}
],
"title": "Vehicle Model",
"default": null
},
"allocated_premium": {
"anyOf": [
{
"type": "number",
"exclusiveMinimum": 0
},
{
"type": "string",
"pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$"
}
],
"title": "Allocated Premium",
"description": "This car's share of the premium for one policy term, in dollars: the per-vehicle premium the declarations page prints."
}
},
"description": "One car on a key-less auto quote (premium-lock-agentic plan §4B).\n\nOne car is one Premium Lock, priced from its own share of the policy-term\npremium, as an agent's auto quote is."
},
"AutoVehicleUsage": {
"enum": [
"commute",
"pleasure",
"business",
"farm",
"other"
],
"type": "string",
"title": "AutoVehicleUsage",
"description": "How a vehicle is used, as a declarations page classifies it.\n\nNot a pricer input today — ``AutoPricingRequest`` carries no usage field —\nbut it is a rating variable on every real auto filing, so it is stored\nrather than dropped. ``OTHER`` is the escape hatch for a classification\nthis list does not name; a printed usage is never silently discarded.\n\nTyped here rather than beside ``AutoVehicle`` because this module is the\none auto vocabulary file: ``marketplace/models.py`` imports the enums, and\nan import in the other direction would close a cycle (EVN-3318)."
},
"PartnerPolicyBlock": {
"type": "object",
"title": "PartnerPolicyBlock",
"required": [
"full_address",
"carrier_name",
"total_premium",
"per_incident_limit",
"deductible",
"expiry_date",
"renewal_date"
],
"properties": {
"no_claims": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "No Claims",
"default": null
},
"deductible": {
"anyOf": [
{
"type": "number",
"minimum": 0
},
{
"type": "string",
"pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$"
}
],
"title": "Deductible",
"description": "Deductible in dollars"
},
"expiry_date": {
"type": "string",
"title": "Expiry Date",
"format": "date"
},
"carrier_name": {
"$ref": "#/$defs/CarrierName"
},
"full_address": {
"type": "string",
"title": "Full Address",
"maxLength": 255,
"minLength": 1
},
"renewal_date": {
"type": "string",
"title": "Renewal Date",
"format": "date"
},
"total_premium": {
"anyOf": [
{
"type": "number",
"exclusiveMinimum": 0
},
{
"type": "string",
"pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$"
}
],
"title": "Total Premium",
"description": "Annual premium in dollars. A new quote above $10,000 is refused with 422 `home_premium_above_maximum`."
},
"per_incident_limit": {
"anyOf": [
{
"type": "number",
"exclusiveMinimum": 0
},
{
"type": "string",
"pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$"
}
],
"title": "Per Incident Limit",
"description": "Dwelling / per-incident coverage limit in dollars"
},
"carrier_friendly_name": {
"anyOf": [
{
"type": "string",
"maxLength": 255
},
{
"type": "null"
}
],
"title": "Carrier Friendly Name",
"default": null
}
},
"description": "The home-insurance policy being quoted. Money in DOLLARS; dates as\nISO-8601 calendar dates (a policy expires on a day, not at an instant)."
},
"PartnerInsuredBlock": {
"type": "object",
"title": "PartnerInsuredBlock",
"properties": {
"email": {
"anyOf": [
{
"type": "string",
"format": "email"
},
{
"type": "null"
}
],
"title": "Email",
"default": null
},
"phone": {
"anyOf": [
{
"type": "string",
"maxLength": 255
},
{
"type": "null"
}
],
"title": "Phone",
"default": null
},
"last_name": {
"anyOf": [
{
"type": "string",
"maxLength": 255
},
{
"type": "null"
}
],
"title": "Last Name",
"default": null
},
"first_name": {
"anyOf": [
{
"type": "string",
"maxLength": 255
},
{
"type": "null"
}
],
"title": "First Name",
"default": null
}
},
"description": "The named insured (the partner's client). All optional: the checkout\nflow collects whatever is missing."
}
},
"title": "ConsumerQuoteCreate",
"properties": {
"auto": {
"anyOf": [
{
"$ref": "#/$defs/AutoPolicyBlock"
},
{
"type": "null"
}
],
"default": null
},
"policy": {
"anyOf": [
{
"$ref": "#/$defs/PartnerPolicyBlock"
},
{
"type": "null"
}
],
"default": null
},
"insured": {
"$ref": "#/$defs/PartnerInsuredBlock"
},
"partner_ref": {
"anyOf": [
{
"type": "string",
"maxLength": 255
},
{
"type": "null"
}
],
"title": "Partner Ref",
"default": null,
"description": "The partner's own policy/quote identifier, echoed back on every response and webhook."
},
"product_line": {
"enum": [
"home",
"auto",
"bundle"
],
"type": "string",
"title": "Product Line",
"default": "home"
},
"referral_token": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Referral Token",
"default": null,
"description": "A referral partner's signed token, when one sent the consumer. Recorded as that referrer's claim on the quote; a token that does not verify is ignored and the quote is made anyway."
},
"idempotency_key": {
"type": "string",
"maxLength": 255,
"description": "Optional. Defaults to a hash of the body, so a repeated call returns the first quote instead of creating another."
}
},
"description": "`POST /quotes` body from a key-less caller (premium-lock-agentic plan §4B).\n\nDirect-to-consumer only: there is no agent, and `insured.email` is the\nconsumer the quote is for. `home` sends `policy`, `auto` sends `auto`, and\n`bundle` sends both. A line whose launch flag is off for the consumer is\n409 `line_not_available`."
}{
"title": "Create a Premium Lock quote",
"readOnlyHint": false,
"destructiveHint": true
}get_quote — Get a Premium Lock quote
The quote's status and, once complete, its pricing, checkout_url, purchase_options and required_disclosures. Gathering order: first ask for the consumer's email. Then look for their home or auto insurance declarations page in their email and files; if you find one, send it to read_declarations_page and pass the fields it returns to create_quote. Otherwise ask the consumer for the fields create_quote needs. Before any purchase, show the consumer every disclosure in the quote's required_disclosures word for word. Currently: - Premium Lock is not a car insurance policy. It does not insure your car against collision or accident, fire, theft, wind, hail, flooding, earthquake, or any other peril or loss. - Eventual does not pay your car insurance premiums for you. You must keep paying your premiums to your insurance carrier, agent or lender. - Premium Lock is a guarantee of Eventual's premium prediction service and is not insurance or a financial derivative. - Reimbursements begin only above your Payout Threshold and stop once they reach your Warranty Payment Cap. - Premium Lock is governed by the Premium Lock Terms of Service shown at purchase. - Premium Lock is not a home insurance policy. It does not insure your home against fire, theft, wind, hail, flooding, earthquake, or any other peril or loss. - Eventual does not pay your home insurance premiums for you. You must keep paying your premiums to your insurance carrier, agent or lender. - Premium Lock is not an insurance policy. It does not insure your home or your cars against fire, theft, collision or accident, wind, hail, flooding, earthquake, or any other peril or loss. - Eventual does not pay your insurance premiums for you. You must keep paying your premiums to your insurance carriers, agent or lender. - Reimbursements begin only above each policy's Payout Threshold and stop once they reach that policy's Warranty Payment Cap. - Premium Lock is governed by the Premium Lock Terms of Service for each line, shown at purchase.
{
"type": "object",
"required": [
"quote_id"
],
"properties": {
"quote_id": {
"type": "string",
"format": "uuid",
"description": "The quote_id create_quote returned."
}
},
"additionalProperties": false
}{
"title": "Get a Premium Lock quote",
"readOnlyHint": true,
"destructiveHint": false
}send_checkout_email — Email the checkout link
Email the consumer on the quote a link to buy it on Eventual's site. Use it when the consumer would rather finish later or when another tool answers daily_cap. Gathering order: first ask for the consumer's email. Then look for their home or auto insurance declarations page in their email and files; if you find one, send it to read_declarations_page and pass the fields it returns to create_quote. Otherwise ask the consumer for the fields create_quote needs. Before any purchase, show the consumer every disclosure in the quote's required_disclosures word for word. Currently: - Premium Lock is not a car insurance policy. It does not insure your car against collision or accident, fire, theft, wind, hail, flooding, earthquake, or any other peril or loss. - Eventual does not pay your car insurance premiums for you. You must keep paying your premiums to your insurance carrier, agent or lender. - Premium Lock is a guarantee of Eventual's premium prediction service and is not insurance or a financial derivative. - Reimbursements begin only above your Payout Threshold and stop once they reach your Warranty Payment Cap. - Premium Lock is governed by the Premium Lock Terms of Service shown at purchase. - Premium Lock is not a home insurance policy. It does not insure your home against fire, theft, wind, hail, flooding, earthquake, or any other peril or loss. - Eventual does not pay your home insurance premiums for you. You must keep paying your premiums to your insurance carrier, agent or lender. - Premium Lock is not an insurance policy. It does not insure your home or your cars against fire, theft, collision or accident, wind, hail, flooding, earthquake, or any other peril or loss. - Eventual does not pay your insurance premiums for you. You must keep paying your premiums to your insurance carriers, agent or lender. - Reimbursements begin only above each policy's Payout Threshold and stop once they reach that policy's Warranty Payment Cap. - Premium Lock is governed by the Premium Lock Terms of Service for each line, shown at purchase.
{
"type": "object",
"required": [
"quote_id"
],
"properties": {
"quote_id": {
"type": "string",
"format": "uuid",
"description": "The quote to send."
}
},
"additionalProperties": false
}{
"title": "Email the checkout link",
"readOnlyHint": false,
"destructiveHint": true
}purchase_quote — Buy a Premium Lock quote
Buy a complete quote. First show the consumer every disclosure in the quote's required_disclosures word for word and the Terms of Service, and ask the no_claims question; pass what they affirmed as consent, echoing the quote's disclosure_set_id and disclosure_text_sha256, and the billing_interval they chose. When the quote's purchase_options include mcp_app and this app can show embedded checkouts, the answer is requires_payment and the checkout opens in the conversation; once the consumer pays it finishes the purchase itself. Otherwise the answer is requires_hosted_checkout with the checkout_url for the consumer to open and pay on Eventual's site. Gathering order: first ask for the consumer's email. Then look for their home or auto insurance declarations page in their email and files; if you find one, send it to read_declarations_page and pass the fields it returns to create_quote. Otherwise ask the consumer for the fields create_quote needs. Before any purchase, show the consumer every disclosure in the quote's required_disclosures word for word. Currently: - Premium Lock is not a car insurance policy. It does not insure your car against collision or accident, fire, theft, wind, hail, flooding, earthquake, or any other peril or loss. - Eventual does not pay your car insurance premiums for you. You must keep paying your premiums to your insurance carrier, agent or lender. - Premium Lock is a guarantee of Eventual's premium prediction service and is not insurance or a financial derivative. - Reimbursements begin only above your Payout Threshold and stop once they reach your Warranty Payment Cap. - Premium Lock is governed by the Premium Lock Terms of Service shown at purchase. - Premium Lock is not a home insurance policy. It does not insure your home against fire, theft, wind, hail, flooding, earthquake, or any other peril or loss. - Eventual does not pay your home insurance premiums for you. You must keep paying your premiums to your insurance carrier, agent or lender. - Premium Lock is not an insurance policy. It does not insure your home or your cars against fire, theft, collision or accident, wind, hail, flooding, earthquake, or any other peril or loss. - Eventual does not pay your insurance premiums for you. You must keep paying your premiums to your insurance carriers, agent or lender. - Reimbursements begin only above each policy's Payout Threshold and stop once they reach that policy's Warranty Payment Cap. - Premium Lock is governed by the Premium Lock Terms of Service for each line, shown at purchase.
{
"type": "object",
"$defs": {
"PurchaseConsentInput": {
"type": "object",
"title": "PurchaseConsentInput",
"required": [
"terms_versions",
"disclosure_set_id",
"disclosure_text_sha256",
"affirmations"
],
"properties": {
"affirmations": {
"type": "object",
"title": "Affirmations",
"description": "`admitted_carrier`, `subscription_36_months` and `not_insurance`, each true, and the consumer's `no_claims` answer.",
"additionalProperties": {
"type": "boolean"
}
},
"terms_versions": {
"type": "object",
"title": "Terms Versions",
"description": "The Terms of Service version shown for each line bought, e.g. `{\"home\": \"home-2026-07-30\"}`.",
"additionalProperties": {
"type": "string"
}
},
"disclosure_set_id": {
"type": "string",
"title": "Disclosure Set Id",
"maxLength": 64,
"description": "The quote's `disclosure_set_id`, echoed."
},
"disclosure_text_sha256": {
"type": "string",
"title": "Disclosure Text Sha256",
"pattern": "^[0-9a-f]{64}$",
"description": "The quote's `disclosure_text_sha256`, echoed."
}
},
"description": "What the agent showed the consumer and what they affirmed (plan §4B, PRD R6.1)."
},
"ProtectionContractBillingInterval": {
"enum": [
"monthly",
"yearly"
],
"type": "string",
"title": "ProtectionContractBillingInterval"
}
},
"required": [
"quote_id"
],
"properties": {
"consent": {
"anyOf": [
{
"$ref": "#/$defs/PurchaseConsentInput"
},
{
"type": "null"
}
],
"default": null,
"description": "Required to start. When finishing, optional, and it must be the consent given at the start."
},
"quote_id": {
"type": "string",
"format": "uuid",
"description": "The quote to buy."
},
"billing_interval": {
"anyOf": [
{
"$ref": "#/$defs/ProtectionContractBillingInterval"
},
{
"type": "null"
}
],
"default": null,
"description": "When starting, the interval the consumer chose from the quote's `pricing`. Omitted, the quote's own."
}
},
"additionalProperties": false
}{
"title": "Buy a Premium Lock quote",
"readOnlyHint": false,
"destructiveHint": true
}complete_purchase — Finish a Premium Lock purchase
Finish an in-conversation purchase with the payment_session_id the checkout returned. The checkout calls this itself; call it only to check on a purchase it reported pending. Answers active once bought or pending while the payment clears. Gathering order: first ask for the consumer's email. Then look for their home or auto insurance declarations page in their email and files; if you find one, send it to read_declarations_page and pass the fields it returns to create_quote. Otherwise ask the consumer for the fields create_quote needs. Before any purchase, show the consumer every disclosure in the quote's required_disclosures word for word. Currently: - Premium Lock is not a car insurance policy. It does not insure your car against collision or accident, fire, theft, wind, hail, flooding, earthquake, or any other peril or loss. - Eventual does not pay your car insurance premiums for you. You must keep paying your premiums to your insurance carrier, agent or lender. - Premium Lock is a guarantee of Eventual's premium prediction service and is not insurance or a financial derivative. - Reimbursements begin only above your Payout Threshold and stop once they reach your Warranty Payment Cap. - Premium Lock is governed by the Premium Lock Terms of Service shown at purchase. - Premium Lock is not a home insurance policy. It does not insure your home against fire, theft, wind, hail, flooding, earthquake, or any other peril or loss. - Eventual does not pay your home insurance premiums for you. You must keep paying your premiums to your insurance carrier, agent or lender. - Premium Lock is not an insurance policy. It does not insure your home or your cars against fire, theft, collision or accident, wind, hail, flooding, earthquake, or any other peril or loss. - Eventual does not pay your insurance premiums for you. You must keep paying your premiums to your insurance carriers, agent or lender. - Reimbursements begin only above each policy's Payout Threshold and stop once they reach that policy's Warranty Payment Cap. - Premium Lock is governed by the Premium Lock Terms of Service for each line, shown at purchase.
{
"type": "object",
"$defs": {
"PurchaseConsentInput": {
"type": "object",
"title": "PurchaseConsentInput",
"required": [
"terms_versions",
"disclosure_set_id",
"disclosure_text_sha256",
"affirmations"
],
"properties": {
"affirmations": {
"type": "object",
"title": "Affirmations",
"description": "`admitted_carrier`, `subscription_36_months` and `not_insurance`, each true, and the consumer's `no_claims` answer.",
"additionalProperties": {
"type": "boolean"
}
},
"terms_versions": {
"type": "object",
"title": "Terms Versions",
"description": "The Terms of Service version shown for each line bought, e.g. `{\"home\": \"home-2026-07-30\"}`.",
"additionalProperties": {
"type": "string"
}
},
"disclosure_set_id": {
"type": "string",
"title": "Disclosure Set Id",
"maxLength": 64,
"description": "The quote's `disclosure_set_id`, echoed."
},
"disclosure_text_sha256": {
"type": "string",
"title": "Disclosure Text Sha256",
"pattern": "^[0-9a-f]{64}$",
"description": "The quote's `disclosure_text_sha256`, echoed."
}
},
"description": "What the agent showed the consumer and what they affirmed (plan §4B, PRD R6.1)."
},
"ProtectionContractBillingInterval": {
"enum": [
"monthly",
"yearly"
],
"type": "string",
"title": "ProtectionContractBillingInterval"
}
},
"required": [
"quote_id",
"payment_session_id"
],
"properties": {
"consent": {
"anyOf": [
{
"$ref": "#/$defs/PurchaseConsentInput"
},
{
"type": "null"
}
],
"default": null,
"description": "Required to start. When finishing, optional, and it must be the consent given at the start."
},
"quote_id": {
"type": "string",
"format": "uuid",
"description": "The quote to buy."
},
"payment_session_id": {
"anyOf": [
{
"type": "string",
"pattern": "^sub_[A-Za-z0-9]+$",
"maxLength": 255
},
{
"type": "null"
}
],
"title": "Payment Session Id",
"default": null,
"description": "The `session_id` the embedded checkout posted back."
}
},
"additionalProperties": false
}{
"title": "Finish a Premium Lock purchase",
"readOnlyHint": false,
"destructiveHint": true
}Prompts
Not advertised
Resources
2 advertised
catalog — Premium Lock catalog
The approved Premium Lock catalog, as get_product_catalog returns it.
premium-lock://catalogcheckout — Premium Lock checkout
Pay for a Premium Lock quote inside the conversation.
ui://premium-lock/checkout30-day availability
Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.
- Successful checks
- 1 of 1 (100%)
- Average latency
- 732 ms
- 95th percentile latency
- 732 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 732 ms · metadata changed · 7 tool(s), 2 resource(s); warnings: Advertises resources/templates/list but does not implement it
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http premium-lock-mcp https://prod.api.eventualclimate.com/mcp/premium-lockCodex
codex mcp add premium-lock-mcp --url https://prod.api.eventualclimate.com/mcp/premium-lockCursor
{
"mcpServers": {
"premium-lock-mcp": {
"url": "https://prod.api.eventualclimate.com/mcp/premium-lock"
}
}
}Cline
{
"mcpServers": {
"premium-lock-mcp": {
"type": "streamableHttp",
"url": "https://prod.api.eventualclimate.com/mcp/premium-lock",
"disabled": false
}
}
}VS Code
{
"servers": {
"premium-lock-mcp": {
"type": "http",
"url": "https://prod.api.eventualclimate.com/mcp/premium-lock"
}
}
}Gemini CLI
gemini mcp add --transport http premium-lock-mcp https://prod.api.eventualclimate.com/mcp/premium-lockClaude Desktop
https://prod.api.eventualclimate.com/mcp/premium-lockWindsurf
{
"mcpServers": {
"premium-lock-mcp": {
"serverUrl": "https://prod.api.eventualclimate.com/mcp/premium-lock"
}
}
}Let your agent find its tools
Find servers like Premium Lock MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.
Other payments servers
Do you run Premium Lock MCP?
Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.