Community아트 & 디자인github.com

quotor/home-auto-insurance-quotes

Quotor — agent skill for real, bindable home & auto insurance quotes via MCP. Front door to the Quotor quoting network.

지원 대상Claude CodeCodex CLI~CursorAntigravity
npx skills add quotor/home-auto-insurance-quotes

Ask in your favorite AI

Open a new chat with this agent skill pre-loaded.

문서

Home & Auto Insurance Quotes (and Binding) via Quotor

This skill is the front door to Quotor — a quoting network: a single integration that returns real, bindable home and auto insurance quotes from multiple carriers and routes the customer to a licensed independent agency to complete the purchase. The agencies do the binding and own the ongoing relationship; this skill + the network's MCP server handle the quoting and the handoff.

You are the orchestrator of a shopping experience, not the insurer. Collect a little information, return live quotes, and — when the customer is ready — start a binding by handing them a secure link (a licensed human finalizes the policy with the carrier).

Coverage today: Texas home, auto, and home+auto bundles (renters & other lines via submit_lead for agent follow-up). More states are rolling out; always call check_eligibility first — it tells you, per state and product, whether quoting and binding are currently available.


Two ways to use this skill

Pick the pathway that matches what you are.

Pathway A — Conversational assistant (Claude, ChatGPT, any chat UI)

You are talking to a person. Do a lightweight intake in the conversation, return a quote or a quote range, and invite the binding step when they're ready.

  1. Ask for the basics in one natural chunk (see Intake below).
  2. Call the network's MCP tools to produce a quote (or, if you can't connect an MCP, follow the "no-MCP fallback" note below to hand the customer off).
  3. Read back the options in plain language.
  4. When they want to proceed: "To finish and lock this in, I'll connect you to a licensed agent — here's your secure link." Call request_bind_inline / get_bind_link.

Pathway B — Agentic system (Hermes, OpenClaw, Codex-style agents, MCP-capable runtimes)

You can connect MCP servers yourself. Connect the network's MCP directly and drive the full flow programmatically — this skill is your map of the endpoint, auth, tools, and call order. See references/mcp-connection.md for the endpoint URL, authentication, and per-tool schemas. Stream the full intake through the tools and complete with a bind request.


Connect the MCP server

  • Transport: Streamable HTTP, JSON-RPC 2.0 (MCP protocol 2025-06-18).
  • Endpoint: https://bfdsyqekvjdexmqycyms.supabase.co/functions/v1/mcp (the branded endpoint mcp.quotor.ai is being provisioned; this URL is stable in the meantime).
  • Health check: GET {endpoint}/health{ "ok": true, "tool_count": ... }
  • Authentication — two tiers:
    • Open (no key): the read-only, no-cost tools work anonymously so you can discover capability and check status with zero friction: check_eligibility, check_quote_status, get_option_details, check_late_arrivals.
    • Keyed (API key required): the tools that run the paid rating pipeline or touch personal data require a per-partner API key, sent as Authorization: Bearer <API_KEY>: start_quote, update_quote, get_quote_options, submit_lead, get_bind_link, request_bind_inline, resume_quote.
    • Getting a key (instant, self-serve): POST {endpoint}/keys with a JSON body { "partner_label": "Your App Name", "email": "[email protected]" } → returns an api_key shown once (store it). Keys are per-partner, rate-limited, and spend-capped. The end customer never needs a key — only you, the integrating agent/partner, do.
  • Location context (don't ask the customer for it): the customer's state (and optionally ZIP) is supplied to the server out-of-band via request headers (X-MCP-State, X-MCP-Zip) from the platform's location flow. Send them as headers when you have them; do not pass state as a tool argument.

Full details, headers, and worked request/response examples: references/mcp-connection.md.


The tools (and the order to call them)

#ToolTierWhat it does
1check_eligibilityopenFirst call. Confirms whether the network can quote and/or bind for the customer's state + product.
2start_quotekeyedOpens a new home/auto/bundle quote. Returns a quote_id used on every later call.
3update_quotekeyedAdds or corrects intake details on the open quote_id.
4get_quote_optionskeyedRuns rating and returns the quote options. Non-blocking — returns what's ready immediately.
5check_quote_statusopenPoll the quote_id for status and any newly-arrived carrier rates.
6check_late_arrivalsopenConvenience poll specifically for carriers that returned after the first response.
7get_option_detailsopenDetail (coverages, price) on a specific option the customer is considering.
8get_bind_linkkeyedMints a secure, single-use link for the customer to complete the binding with a licensed agent.
9request_bind_inlinekeyedStarts the binding from inside the conversation: files the bind request and routes it to the matched agency.
10submit_leadkeyedCapture contact info if the customer isn't ready to finish, so an agent can follow up.
11resume_quotekeyedResume a previously-started quote_id (returning shopper / continued session).

Binding is human-completed. request_bind_inline and get_bind_link do not silently buy a policy. They file a routed bind request and hand the customer a secure link; a licensed agent at the matched agency finalizes the policy with the carrier. Say so plainly to the customer.


Intake — what to collect

Collect in coherent chunks, not one question at a time. State/ZIP come from context (headers), not from the customer.

  • Home / bundle: full name + date of birth for everyone on the policy; property address; basic property facts the customer knows (year built, roughly square footage, roof age if known); current carrier if switching.
  • Auto / bundle: full name + date of birth for every driver; vehicles (year/make/model or VIN); basic driving history the customer volunteers; current carrier if switching.

Don't over-ask. The rating pipeline enriches missing property and vehicle data automatically. Never ask the customer to upload their own dec page, license, or policy documents.

Returning customers

If the customer has shopped or been quoted through the network before, the server recognizes them and reuses their data — quotes come back faster and the customer isn't re-charged for enrichment. You don't do anything special; just run the normal flow with their name + date of birth + address. (The server only reveals a returning customer's current premium back to keyed partners, never on an anonymous call.)


Worked example — Pathway A (conversational)

Customer: "How much would car insurance cost me? I'm in Austin and thinking of switching."

  1. check_eligibility({ product: "auto", intent: "quote" }) → quoting available in TX. ✅
  2. "Happy to shop that for you. Can I get your full name and date of birth, and the year/make/model of the car(s) you'd insure?"
  3. start_quote({ product: "auto" }){ quote_id }
  4. update_quote({ quote_id, patch: { drivers: [...], vehicles: [...] } }) — intake details go in patch.
  5. get_quote_options({ quote_id }) → returns options (e.g. Option A $1,704/yr, Option B $1,920/yr…).
  6. check_late_arrivals({ quote_id }) after a moment → an additional carrier came back. Read the updated list to the customer.
  7. "Want me to lock in Option A? I'll connect you to a licensed agent to finish it."
  8. request_bind_inline({ quote_id, option_id, contact_pref, best_time, pay_plan }) → files the routed bind request and returns a secure bind link; the customer is routed to an agency. (Contact identity comes from the quote session — captured during intake — not from this call.) Tell them a licensed agent will finalize the policy.

Worked example — Pathway B (agentic)

A backend agent connects the MCP and runs the same sequence headlessly: check_eligibility → start_quote → update_quote → get_quote_options → (poll) check_quote_status → request_bind_inline. See references/mcp-connection.md for raw JSON-RPC payloads.


What this skill can and can't do

Can: check availability by state/product; produce real multi-carrier home/auto/bundle quotes; show option details; capture leads; recognize returning customers; start a binding by routing the customer to a licensed agency.

Can't / won't: finalize a bind without a human (a licensed agent completes it); service an existing policy (changes, cancellations, claims, mortgagee updates are out of scope here); reveal a carrier's identity before the binding step (options are shown neutrally until then); quote outside currently-licensed states (call check_eligibility).

Privacy & safety

  • The end customer never needs an API key.
  • Quote requests create prospect records; they never overwrite an existing customer's records.
  • Don't fabricate quotes or rates — if the tools return nothing, say so and offer submit_lead.
  • Don't ask customers to upload personal documents.

관련 스킬