Coverage Cat
Server Details
Insurance calculators and umbrella/homeowners shopping, purchase status, policies, and support.
- Status
- Healthy
- Uptime
- 100.0% over 21 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 23 tools
Most tools have a clearly distinct resource+action target: the umbrella consumer lifecycle (prefill, select, attach, payment, bind, policy, service) is cleanly sequenced, and the docs trio is unambiguous. The weakest spot is the auto/premium cluster (auto_estimates, collision_and_comprehensive_coverage, file_a_claim) plus four umbrella analysis tools (calculator, limit_planner, underlying_limit_check, bundle_comparison), where an agent must read the long descriptions to avoid choosing the wrong estimator. Descriptions do explicitly separate research-only umbrella_calculator from umbrella_consumer_prefill, which keeps the overlap manageable.
All snake_case, which is good, but the pattern mixes conventions: some are noun-first (auto_estimates, home_calculator, docs_search), others verb-first (file_a_claim, docs_get_resource), and within umbrella_consumer_* the suffixes are verbs (prefill, select, bind, attach) except for the noun 'payment' and the ambiguous 'policy'/'service'. Domain prefixes (umbrella_, homeowners_, consumer_, docs_) give readable grouping, but the noun/verb inconsistency means an agent cannot predict a name from an action.
23 tools is on the heavy side of the rubric's reasonable band, and the set is large mostly because the umbrella flow is decomposed into seven narrow stage tools plus four separate umbrella modeling tools. Each stage tool earns some place (the flow is genuinely stateful), but the modeling tools overlap enough that the surface feels broader than the domain strictly requires.
The umbrella lifecycle is covered end to end (prefill → intake issues/patch/verify → select → attach → payment → bind → policy → service), and docs plus estimation tools round out research. The gaps are on the non-umbrella side: auto and home have estimators and (for home) policy/service reads, but no create/shop/bind path and no auto policy read, so those domains dead-end at research or post-bind support.
Available Tools
23 toolsauto_estimatesAuto insurance estimatesARead-onlyIdempotentInspect
Estimate monthly auto premiums for one driver and vehicle profile across several carriers. Returns each carrier's id, name, and monthly premium spread (lowest, lower, median, upper, and highest modeled premium) in US dollars, plus the normalized inputs the model used. These are model estimates for research, not bindable quotes.
| Name | Required | Description | Default |
|---|---|---|---|
| age | Yes | Age in years of the driver being priced; the model converts it to a birth year. | |
| zip | Yes | ZIP code for the driver or garaging location being priced. | |
| make | No | Vehicle manufacturer, such as `Toyota` or `Honda`. | |
| seed | No | Optional deterministic seed for the estimate sample when a caller wants stable repeat runs. | |
| year | No | Vehicle model year. With make and model it prices a specific car; omit it to price a generic vehicle instead. | |
| model | No | Vehicle model, such as `Camry` or `Civic`. | |
| state | Yes | Two-letter state code for the garaging address or rating state. | |
| style | No | Vehicle trim, body style, or submodel when you want to narrow the vehicle match. | |
| gender | Yes | Driver gender code the pricing model rates on: `M` for male, `F` for female, or `N` when not specified. | |
| collision_deductible | No | Dollars the driver pays toward a collision repair before collision coverage pays the rest. Omitted means $1,000. | |
| comprehensive_deductible | No | Dollars the driver pays toward non-collision damage, such as theft, hail, or vandalism, before comprehensive coverage pays the rest. Omitted means $1,000. |
Output Schema
| Name | Required | Description |
|---|---|---|
| inputs | Yes | Driver, vehicle, and deductible values the model used, with defaults filled in for omitted inputs. |
| carriers | Yes | One estimate per carrier the model could price. |
| disclaimer | Yes | Notice that these figures are informational estimates, not binding quotes; relay it with the numbers. |
| estimate_unit | Yes | Unit of the monthly premium spreads: `monthly_premium_usd`. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, closed-world behavior. The description adds meaningful context beyond them: the returned fields (carrier id, name, five-point premium spread in USD, normalized inputs) and the critical caveat that results are model estimates, not bindable quotes. Rate limits, auth needs, and latency are not covered but are less relevant for a safe read-only estimator.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three compact sentences: purpose first, return shape second, research-only caveat third. Every sentence carries distinct information and nothing is repeated from the schema or annotations.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 11 parameters, an output schema, and fully covering annotations, the description supplies the remaining decision-relevant facts: what the estimate covers, what comes back, and that it is not a bindable quote. Nothing needed to invoke it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every parameter (including seed, deductibles, and vehicle fields) is already documented by the schema. The description adds no parameter-level detail beyond the schema, which is the correct baseline-3 case when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Estimate monthly auto premiums for one driver and vehicle profile across several carriers'), including scope (single profile, multiple carriers). This clearly separates it from sibling calculators like home_calculator and umbrella_calculator without needing to inspect schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Frames the tool as research-grade modeling ('model estimates for research, not bindable quotes'), which implicitly routes binding actions to siblings like homeowners_consumer_bind. However, it never explicitly names an alternative tool or states when-not-to-use conditions, so usage is clear but not fully enumerated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
collision_and_comprehensive_coverageCollision and comprehensive coverage calculatorARead-onlyIdempotentInspect
Estimate what collision and comprehensive coverage cost for one driver and vehicle profile, to help decide whether to carry them. Returns monthly premium spreads in US dollars with no physical-damage coverage, collision only, and both, plus collision-only and both after one claim, and cumulative premium projections for each coverage option over projection_years. These are model estimates, not bindable quotes.
| Name | Required | Description | Default |
|---|---|---|---|
| age | Yes | Age in years of the driver being priced; the model converts it to a birth year. | |
| zip | Yes | ZIP code for the driver or garaging location being priced. | |
| make | No | Vehicle manufacturer, such as `Toyota` or `Honda`. | |
| seed | No | Optional deterministic seed for the estimate sample when a caller wants stable repeat runs. | |
| year | No | Vehicle model year. With make and model it prices a specific car; omit it to price a generic vehicle instead. | |
| model | No | Vehicle model, such as `Camry` or `Civic`. | |
| state | Yes | Two-letter state code for the garaging address or rating state. | |
| style | No | Vehicle trim, body style, or submodel when you want to narrow the vehicle match. | |
| gender | Yes | Driver gender code the pricing model rates on: `M` for male, `F` for female, or `N` when not specified. | |
| collision_deductible | No | Dollars the driver pays toward a collision repair before collision coverage pays the rest. Omitted means $1,000. | |
| comprehensive_deductible | No | Dollars the driver pays toward non-collision damage, such as theft, hail, or vandalism, before comprehensive coverage pays the rest. Omitted means $1,000. |
Output Schema
| Name | Required | Description |
|---|---|---|
| inputs | Yes | Driver, vehicle, and deductible values the model used, with defaults filled in for omitted inputs. |
| disclaimer | Yes | Notice that these figures are informational estimates, not binding quotes; relay it with the numbers. |
| estimate_unit | Yes | Unit of the monthly premium spreads: `monthly_premium_usd`. |
| projection_years | Yes | Number of years the cumulative projections cover. |
| monthly_estimates | Yes | Monthly premium spread for each coverage scenario. |
| cumulative_annual_scenarios | Yes | Running premium totals for the without, collision-only, and both coverage options. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, closed-world behavior. The description adds real value beyond that by enumerating the returned scenarios (no coverage, collision only, both, after-claim variants) and warning that these are model estimates, not bindable quotes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with purpose then outputs then the estimate caveat. Dense but nearly every clause earns its place; the long enumeration of return scenarios is the only slightly heavy part.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given an output schema exists, return values need not be explained, yet the description usefully summarizes them and flags the non-bindable nature of the estimates. Coverage is solid for a read-only calculator; only sibling differentiation is thin.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 11 inputs, establishing a baseline of 3. The description references projection_years, a field not present in the input schema, but adds no syntax or default detail for the documented parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource (estimate collision/comprehensive cost) and scopes it to one driver and vehicle profile, which is precise. It does not differentiate itself from the sibling auto_estimates tool, leaving some ambiguity about which estimator to pick.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Frames the decision context clearly ('to help decide whether to carry them'), which tells the agent when this tool is appropriate. It offers no explicit exclusions or named alternatives, so it stops short of full routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
consumer_intake_issuesGet consumer intake statusAInspect
Read the status of an umbrella application or an existing homeowners policy. Records request attribution and rotates follow-up access. In the umbrella sandbox, polling advances checkout and can create a synthetic policy; it does not issue real coverage. Returns the intake's status and detail_status, whether the application is submitted, the staged review and next_question, quoted offers with their selection_token, and any post-choose, payment, policy, or conversation state. Reuse uid and the latest intake_access_token from the previous successful Coverage Cat response on each follow-up. MCP 2026-07-28 is stateless and requires that token. Legacy MCP hosts may also preserve hidden shopper session authorization. Keep tokens private and stay on this same MCP follow-up tool. Stay on the default consumer-operated subset and, before submission, say explicitly that the application is not submitted yet. For umbrella, keep missing fields hidden until Coverage Cat stages the single pre-submit review turn, then ask only for the explicitly missing shopper-owned fields in next_question and invite corrections instead of re-keying reviewed values. Coverage Cat will not resume or expose a prior consumer umbrella draft based on email alone. Continue an existing consumer draft only through the issued uid plus the current hidden MCP session or latest intake_access_token handoff. Normalize shopper birthdays from MM-DD-YYYY to YYYY-MM-DD before you patch Coverage Cat.
| Name | Required | Description | Default |
|---|---|---|---|
| uid | Yes | Coverage Cat intake uid for the existing authorized intake or returned by `umbrella_consumer_prefill` and echoed on every follow-up response. Reuse it for each follow-up call on the same application. | |
| intake_access_token | No | Send the latest intake_access_token from the previous successful Coverage Cat response on each follow-up. Required for stateless MCP 2026-07-28 requests; also accepted by legacy hosts. Keep it private and never show it to the shopper. |
Output Schema
| Name | Required | Description |
|---|---|---|
| uid | Yes | Coverage Cat intake uid for the current handoff. |
| line | No | |
| offers | No | |
| policy | No | |
| review | No | Structured review card or selected-offer review block. |
| schema | No | Supplemental schema hints for homeowners review payloads. |
| status | Yes | |
| sandbox | No | True when Coverage Cat is returning consumer sandbox test data rather than a live shopper workflow. |
| support | No | |
| uploaded | No | |
| documents | No | |
| expires_at | No | When the current consumer handoff expires. |
| offers_url | No | Coverage Cat browser URL for the selected offer or offer-tracking page. |
| payment_ui | No | |
| next_action | No | A structured hint for the next allowed tool or endpoint action. |
| payment_url | No | Coverage Cat browser URL for secure payment fallback. |
| post_choose | No | Structured post-choose state after a quoted umbrella offer is selected. |
| conversation | No | |
| review_items | No | |
| review_token | No | Opaque review token for delegated review-style submit paths. |
| verification | No | |
| detail_status | No | |
| known_summary | No | Structured facts Coverage Cat can safely summarize at this stage. |
| next_question | No | The current shopper-owned question bundle or bind-stage question. |
| offer_summary | No | |
| payment_setup | No | |
| preview_token | No | Opaque bind-preview token for the next homeowners bind confirmation. |
| missing_fields | No | Structured missing-value hints for homeowners pre-submit review. |
| payment_status | No | |
| pending_fields | No | Structured missing-value hints for umbrella pre-submit review. |
| selected_offer | No | |
| uploaded_count | No | |
| field_estimates | No | |
| service_preview | No | |
| service_request | No | |
| purchase_preview | No | |
| response_summary | No | |
| review_estimates | No | |
| service_requests | No | |
| agent_instructions | No | |
| poll_after_seconds | No | |
| selection_guidance | No | Guidance for completing an offer choice in one shopper-facing reply. |
| compare_details_url | No | Coverage Cat browser URL for compare-details follow-up. |
| intake_access_token | No | Short-lived follow-up bearer. On REST, send it back as Authorization for the next `/api/intake/{uid}` call. On MCP, retry the same follow-up tool with this token only when your host cannot preserve Coverage Cat's hidden shopper session. Never display it to the shopper. |
| notification_channel | No | |
| user_action_required | No | |
| application_submitted | No | |
| required_upload_types | No | |
| credit_consent_question | No | |
| credit_consent_disclosure | No | Versioned canonical text that must be shown verbatim; echo version and text_hash with the user's response. |
| payment_collection_supported | No | |
| monoline_mvr_consent_question | No | |
| contact_preferences_disclosures | No | Optional versioned service-contact disclosures for the phone number on file; no marketing consent and no purchase requirement. |
| monoline_mvr_consent_disclosure | No | Versioned Monoline-specific text that must be shown verbatim with its source URL; echo version and text_hash with the user's response. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds substantial behavior beyond the annotations: it discloses that the call records request attribution and rotates follow-up access, that in the umbrella sandbox polling advances checkout and can create a synthetic policy without issuing real coverage, and that email alone cannot resume a prior draft. This directly explains why readOnlyHint=false and idempotentHint=false despite the read-like framing — exactly the kind of context annotations cannot convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The lead sentence is well front-loaded, but the body is a dense run-on mixing return-field enumeration, auth handoff rules, agent behavior scripts ('say explicitly that the application is not submitted yet'), and birthday normalization. Several clauses (birthday format normalization, a long list of returned state keys) do not belong in a status-read description and dilute the actionable parts.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, yet the description still spends a long clause enumerating return fields (detail_status, next_question, selection_token, etc.), which is redundant. Auth, sandbox, and draft-resumption edge cases are otherwise well covered for a stateful handoff tool, so an agent has enough to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and both parameters are fully documented in the schema, so baseline is 3. The description adds real meaning on top: it explains that the token rotates per response and must be the LATEST one from the previous successful response, and that uid must be carried across every call on the same application — operational semantics the schema states only tersely.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Opens with a specific verb+resource: 'Read the status of an umbrella application or an existing homeowners policy,' and the follow-up framing ('reuse uid and the latest intake_access_token... on each follow-up') makes clear this is the status-poll endpoint rather than a patch/verify step. It does not name a sibling tool explicitly, so an agent must infer that consumer_intake_patch and consumer_intake_verify_email are the alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives concrete operating conditions: reuse uid plus the latest token on every follow-up, stay on this same follow-up tool, stay on the default consumer-operated subset, and hold missing umbrella fields until the pre-submit review turn. The gaps are that it never states when NOT to call it (e.g. when to call consumer_intake_patch or umbrella_consumer_prefill instead) and the guidance is interleaved with return-field detail rather than organized.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
consumer_intake_patchUpdate consumer intakeADestructiveIdempotentInspect
Patch or submit a consumer-prefill umbrella handoff, or reply to existing-policy support correspondence in chat. Reuse uid and the latest intake_access_token from the previous successful Coverage Cat response on each follow-up. MCP 2026-07-28 is stateless and requires that token. Legacy MCP hosts may also preserve hidden shopper session authorization. Keep tokens private and stay on this same MCP follow-up tool. Stay on the default consumer-operated subset. For umbrella, use the staged review turn to send only explicitly missing shopper-owned details plus corrections, set confirm_submission only on that final review confirmation, do not send vehicles rows on this pre-submit patch, and do not ask for umbrella credit consent here. Normalize shopper birthdays from MM-DD-YYYY to YYYY-MM-DD, and tell the shopper the application is not submitted yet until you actually submit it. Returns the same follow-up payload as consumer_intake_issues for the updated intake.
| Name | Required | Description | Default |
|---|---|---|---|
| uid | Yes | Coverage Cat intake uid for the existing authorized intake or returned by `umbrella_consumer_prefill` and echoed on every follow-up response. Reuse it for each follow-up call on the same application. | |
| intake | No | Top-level intake edits. For umbrella, send only missing shopper-owned details, corrections, or canonical umbrella count fixes such as umbrella_details.motorized_vehicle_count. Do not send vehicles rows on this pre-submit patch. | |
| message_reply | No | Existing-policy support correspondence. Send the reply text Coverage Cat should deliver in-thread when consumer_intake_issues surfaces a message under conversation.messages. This does not start a new homeowners application. | |
| credit_consent | No | The real user's response to Coverage Cat's current consumer-report authorization for insurance underwriting, collected only after Coverage Cat returns the disclosure. | |
| field_estimates | No | Umbrella provenance for values in this same patch that you inferred rather than heard from the shopper, one row per inferred value. Add rows only when you are certain each field path matches a current umbrella review field. | |
| idempotency_key | No | Key you generate to identify one logical consumer_intake_patch request, so a retry cannot apply it twice. After a timeout or transport failure, retry with the same key and identical arguments to get the original result back; Coverage Cat keeps that result for 24 hours and rejects different arguments sent under a used key. | |
| confirm_submission | No | Set true only on the single final review turn. | |
| contact_preferences | No | Optional service SMS/call choices. Offer alongside an existing review when useful; do not add a required purchase step. Omission leaves choices unchanged. Marketing is disabled. | |
| intake_access_token | No | Send the latest intake_access_token from the previous successful Coverage Cat response on each follow-up. Required for stateless MCP 2026-07-28 requests; also accepted by legacy hosts. Keep it private and never show it to the shopper. | |
| reply_to_message_id | No | Existing-policy support message_id from conversation.messages[] that message_reply answers in-thread, when Coverage Cat returned a specific message to reply to. |
Output Schema
| Name | Required | Description |
|---|---|---|
| uid | Yes | Coverage Cat intake uid for the current handoff. |
| line | No | |
| offers | No | |
| policy | No | |
| review | No | Structured review card or selected-offer review block. |
| schema | No | Supplemental schema hints for homeowners review payloads. |
| status | Yes | |
| sandbox | No | True when Coverage Cat is returning consumer sandbox test data rather than a live shopper workflow. |
| support | No | |
| uploaded | No | |
| documents | No | |
| expires_at | No | When the current consumer handoff expires. |
| offers_url | No | Coverage Cat browser URL for the selected offer or offer-tracking page. |
| payment_ui | No | |
| next_action | No | A structured hint for the next allowed tool or endpoint action. |
| payment_url | No | Coverage Cat browser URL for secure payment fallback. |
| post_choose | No | Structured post-choose state after a quoted umbrella offer is selected. |
| conversation | No | |
| review_items | No | |
| review_token | No | Opaque review token for delegated review-style submit paths. |
| verification | No | |
| detail_status | No | |
| known_summary | No | Structured facts Coverage Cat can safely summarize at this stage. |
| next_question | No | The current shopper-owned question bundle or bind-stage question. |
| offer_summary | No | |
| payment_setup | No | |
| preview_token | No | Opaque bind-preview token for the next homeowners bind confirmation. |
| missing_fields | No | Structured missing-value hints for homeowners pre-submit review. |
| payment_status | No | |
| pending_fields | No | Structured missing-value hints for umbrella pre-submit review. |
| selected_offer | No | |
| uploaded_count | No | |
| field_estimates | No | |
| service_preview | No | |
| service_request | No | |
| purchase_preview | No | |
| response_summary | No | |
| review_estimates | No | |
| service_requests | No | |
| agent_instructions | No | |
| poll_after_seconds | No | |
| selection_guidance | No | Guidance for completing an offer choice in one shopper-facing reply. |
| compare_details_url | No | Coverage Cat browser URL for compare-details follow-up. |
| intake_access_token | No | Short-lived follow-up bearer. On REST, send it back as Authorization for the next `/api/intake/{uid}` call. On MCP, retry the same follow-up tool with this token only when your host cannot preserve Coverage Cat's hidden shopper session. Never display it to the shopper. |
| notification_channel | No | |
| user_action_required | No | |
| application_submitted | No | |
| required_upload_types | No | |
| credit_consent_question | No | |
| credit_consent_disclosure | No | Versioned canonical text that must be shown verbatim; echo version and text_hash with the user's response. |
| payment_collection_supported | No | |
| monoline_mvr_consent_question | No | |
| contact_preferences_disclosures | No | Optional versioned service-contact disclosures for the phone number on file; no marketing consent and no purchase requirement. |
| monoline_mvr_consent_disclosure | No | Versioned Monoline-specific text that must be shown verbatim with its source URL; echo version and text_hash with the user's response. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, idempotentHint=true, and openWorldHint=false, but the description adds real operational context: the stateless MCP 2026-07-28 token requirement, legacy hidden-session auth, and that it returns the same follow-up payload as `consumer_intake_issues`. It stops short of explaining what submission actually commits or whether a confirmed submission is reversible, which matters for a destructive mutation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the purpose, then progressively narrower operational rules, and nearly every clause carries a prohibition or precondition. It is long and reads as a dense imperative run-on covering several modes at once, with some redundancy against the schema (token privacy is stated twice), costing it the top score.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 10-parameter, nested, destructive, multi-mode tool it covers the hard parts: auth/statefulness, retry safety, staged review sequencing, what not to send pre-submit, and shopper-facing honesty about submission status. An output schema exists and the description routes the agent to the analogous sibling payload, so return values need no further explanation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is already 100%, so the schema carries the parameter burden and the baseline is 3. The description does add scoping meaning the schema lacks in one place — the staged-review rule that only explicitly missing shopper-owned details and corrections belong in the patch, plus the birthday format conversion — but most of its parameter talk (token, `confirm_submission`) restates schema text.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The opening sentence names three distinct operations with specific verbs and resources: patching/submitting a consumer-prefill umbrella handoff, and replying to existing-policy support correspondence. It is clearly separable from siblings like `umbrella_consumer_prefill` (origination) and `consumer_intake_issues` (issue surfacing), and it states this is the follow-up tool to stay on.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives explicit routing and sequencing rules: reuse uid plus the latest `intake_access_token` from the previous successful response, stay on this same follow-up tool, stay on the default consumer-operated subset, set `confirm_submission` only on the final review confirmation, and do not ask for umbrella credit consent here. It also names exclusions (no vehicles rows on this pre-submit patch) and a normalization rule (MM-DD-YYYY to YYYY-MM-DD).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
consumer_intake_verify_emailSend shopper email verificationADestructiveIdempotentInspect
When consumer_intake_issues reports verification.required, ask the shopper whether to send a verification email, then call with confirm_send: true. The link goes only to the application's email on file. Ask the shopper to open it, then poll consumer_intake_issues until verification.required is false. Never ask the shopper to paste the login link or code into chat.
| Name | Required | Description | Default |
|---|---|---|---|
| uid | Yes | Coverage Cat intake uid for the existing authorized intake or returned by `umbrella_consumer_prefill` and echoed on every follow-up response. Reuse it for each follow-up call on the same application. | |
| confirm_send | Yes | Confirm that the shopper asked to send a verification link to their application's email on file. | |
| idempotency_key | No | Key you generate to identify one logical consumer_intake_verify_email request, so a retry cannot apply it twice. After a timeout or transport failure, retry with the same key and identical arguments to get the original result back; Coverage Cat keeps that result for 24 hours and rejects different arguments sent under a used key. | |
| intake_access_token | No | Send the latest intake_access_token from the previous successful Coverage Cat response on each follow-up. Required for stateless MCP 2026-07-28 requests; also accepted by legacy hosts. Keep it private and never show it to the shopper. |
Output Schema
| Name | Required | Description |
|---|---|---|
| uid | Yes | Coverage Cat intake uid for the current handoff. |
| line | No | |
| offers | No | |
| policy | No | |
| review | No | Structured review card or selected-offer review block. |
| schema | No | Supplemental schema hints for homeowners review payloads. |
| status | Yes | |
| sandbox | No | True when Coverage Cat is returning consumer sandbox test data rather than a live shopper workflow. |
| support | No | |
| uploaded | No | |
| documents | No | |
| expires_at | No | When the current consumer handoff expires. |
| offers_url | No | Coverage Cat browser URL for the selected offer or offer-tracking page. |
| payment_ui | No | |
| next_action | No | A structured hint for the next allowed tool or endpoint action. |
| payment_url | No | Coverage Cat browser URL for secure payment fallback. |
| post_choose | No | Structured post-choose state after a quoted umbrella offer is selected. |
| conversation | No | |
| review_items | No | |
| review_token | No | Opaque review token for delegated review-style submit paths. |
| verification | No | |
| detail_status | No | |
| known_summary | No | Structured facts Coverage Cat can safely summarize at this stage. |
| next_question | No | The current shopper-owned question bundle or bind-stage question. |
| offer_summary | No | |
| payment_setup | No | |
| preview_token | No | Opaque bind-preview token for the next homeowners bind confirmation. |
| missing_fields | No | Structured missing-value hints for homeowners pre-submit review. |
| payment_status | No | |
| pending_fields | No | Structured missing-value hints for umbrella pre-submit review. |
| selected_offer | No | |
| uploaded_count | No | |
| field_estimates | No | |
| service_preview | No | |
| service_request | No | |
| purchase_preview | No | |
| response_summary | No | |
| review_estimates | No | |
| service_requests | No | |
| agent_instructions | No | |
| poll_after_seconds | No | |
| selection_guidance | No | Guidance for completing an offer choice in one shopper-facing reply. |
| compare_details_url | No | Coverage Cat browser URL for compare-details follow-up. |
| intake_access_token | No | Short-lived follow-up bearer. On REST, send it back as Authorization for the next `/api/intake/{uid}` call. On MCP, retry the same follow-up tool with this token only when your host cannot preserve Coverage Cat's hidden shopper session. Never display it to the shopper. |
| notification_channel | No | |
| user_action_required | No | |
| application_submitted | No | |
| required_upload_types | No | |
| credit_consent_question | No | |
| credit_consent_disclosure | No | Versioned canonical text that must be shown verbatim; echo version and text_hash with the user's response. |
| payment_collection_supported | No | |
| monoline_mvr_consent_question | No | |
| contact_preferences_disclosures | No | Optional versioned service-contact disclosures for the phone number on file; no marketing consent and no purchase requirement. |
| monoline_mvr_consent_disclosure | No | Versioned Monoline-specific text that must be shown verbatim with its source URL; echo version and text_hash with the user's response. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare mutation, irreversibility, and idempotency, so the description focuses on what annotations can't convey: the link only goes to the email on file and the shopper must never paste the link or code into chat. That is genuine security and eligibility context. It stops short of describing what the tool returns or failure modes (e.g. expired intake), which would push this to a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four compact sentences in execution order: trigger, ask, call, poll, plus a guardrail. Front-loaded and free of restated metadata such as parameter types or return shape.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be described, and annotations cover the safety profile. The description supplies the remaining pieces an agent needs — trigger condition, consent step, follow-up polling, and privacy rule — which is everything required to call this correctly within a multi-step intake flow.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the property descriptions already explain uid reuse, the confirm_send consent meaning, and idempotency-key retry semantics. The description reinforces the consent ordering behind confirm_send but adds no new syntax, format, or validation detail beyond the schema. Baseline 3 applies when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource — send a verification email to the shopper's email on file — and pins the trigger condition (`consumer_intake_issues` reports verification.required). It explicitly names the sibling it coordinates with, so the agent can separate this from consumer_intake_issues and consumer_intake_patch without opening schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives an explicit precondition (verification.required from consumer_intake_issues), an intermediate step (ask the shopper first), a hard invocation constraint (confirm_send: true), and a follow-up loop (poll consumer_intake_issues until the flag clears). When-to-use, when-not-to-call-yet, and what to do afterward are all covered.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
docs_get_resourceCoverage Cat docs resource readerARead-onlyIdempotentInspect
Read one Coverage Cat docs resource by URI from the default consumer MCP and return its URI, public href (null when it has no public page), MIME type, and full markdown, JSON, or YAML text.
| Name | Required | Description | Default |
|---|---|---|---|
| uri | Yes | A coveragecat:// or ui:// resource URI from docs_list_topics or docs_search. |
Output Schema
| Name | Required | Description |
|---|---|---|
| uri | Yes | The resource URI that was read. |
| href | Yes | Public web URL for the same content, or null when the resource has no public page. |
| text | Yes | The full resource body in mime_type format. |
| mime_type | Yes | Format of text, such as `text/markdown`, `application/json`, or `text/yaml`. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, openWorldHint=false and destructiveHint=false, so safety behavior is fully covered. The description adds useful context that href may be null and that content is returned in markdown/JSON/YAML, but does not discuss permissions, limits, or failure behavior beyond that.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence with no filler; the action is stated first and the returned fields follow. Slightly dense but every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter read tool with full annotation coverage and an output schema, the description is nearly sufficient. The remaining minor gap is the absence of guidance on what to do when a URI is unknown or invalid, which the output schema does not cover.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single parameter and the schema already documents the accepted 'coveragecat://' and 'ui://' URI forms and their origin. The description adds only 'by URI' and does not extend meaning beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Read one Coverage Cat docs resource by URI') plus the source ('default consumer MCP'), which is clear. The singular 'one ... by URI' implicitly distinguishes it from docs_list_topics and docs_search, but it never names them, so differentiation is left to inference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage (fetch a single resource once you have its URI), and the schema reinforces this by saying the URI comes from docs_list_topics or docs_search. However, there is no explicit when-to-use vs. sibling statement or precondition in the description itself.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
docs_list_topicsCoverage Cat docs topic indexBRead-onlyIdempotentInspect
List Coverage Cat documentation topics from the same consumer MCP connection and return each topic's title, category, URI, MIME type, summary, and public href.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | How many topics to return from the start of the filtered catalog. Omit it to get up to 25. | |
| category | No | Docs category to browse: `developers` for guides such as quickstart, auth, sandbox, and MCP setup, `api` for discovery and OpenAPI documents, `skills` for runtime skill guides, or `all`. Omit it to browse every category. |
Output Schema
| Name | Required | Description |
|---|---|---|
| total | Yes | Number of topics in this response after limit, not the size of the whole catalog. |
| topics | Yes | Topics in catalog order. |
| category | Yes | Category filter that was applied. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, and closed-world, so the safety profile is covered. The description adds one useful non-annotation fact — that topics come from the same consumer MCP connection — but says nothing about pagination/ordering beyond the schema and merely restates output fields.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence, front-loaded with the verb and resource, with zero filler. Everything stated is either the action or its scope.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With a low-complexity, zero-required-parameter read tool, full annotation coverage, and an output schema that already defines the return shape, the description is close to sufficient. The only missing element is routing guidance among the doc-related siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: limit and category are fully documented in the schema, including the enum meanings and behavior when omitted. The description adds no parameter-level information beyond what the schema already provides, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb (List) and resource (Coverage Cat documentation topics) plus the fields returned, so the operation is unambiguous. It does not, however, distinguish itself from siblings docs_search and docs_get_resource, which are the obvious alternatives an agent would weigh.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No statement of when to use this index versus docs_search or docs_get_resource, and no prerequisites. The only usage signal is the category enum in the schema, which implies browsing but is not framed as guidance relative to alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
docs_searchCoverage Cat docs searchARead-onlyIdempotentInspect
Search quickstart, auth, sandbox, OpenAPI, and runtime skill docs on this consumer MCP connection. Topics are ranked by how many query words appear in their title, summary, URI, or category; each match carries its title, category, URI, MIME type, summary, and public href, and an empty matches list means no topic contains any query word. Pass a match's uri to docs_get_resource to read it.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | How many of the best-ranked topics to return. Omit it to get the top 5. | |
| query | Yes | Search terms describing the documentation need. |
Output Schema
| Name | Required | Description |
|---|---|---|
| query | Yes | The search query after trimming whitespace. |
| total | Yes | Number of matches in this response after limit, not every topic that matched. |
| matches | Yes | Matching topics, best match first. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, closed-world behavior, so the safety profile is covered. The description adds genuine behavioral detail beyond them: the ranking rule (word overlap in title, summary, URI, category), the fields carried in each match, and the meaning of an empty matches list. No rate limits or pagination are mentioned, but for a read-only search this is solid.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, purpose front-loaded, no filler. The middle sentence is dense with ranking and match-field information but each clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be re-explained, yet the description still summarizes match fields and the empty-result case. Combined with the explicit handoff to docs_get_resource and the read-only annotations, an agent has everything needed to call this correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so both parameters are documented in the schema and the baseline is 3. The description goes beyond that by explaining how the query string is actually consumed (word matching against title, summary, URI, category), which adds semantic value about query construction and result ordering.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Search) and resource (docs), enumerates the doc types covered (quickstart, auth, sandbox, OpenAPI, runtime skill docs) and scopes it to 'this consumer MCP connection'. This is enough to distinguish it from docs_list_topics and docs_get_resource without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives an explicit follow-up path: 'Pass a match's uri to docs_get_resource to read it', which routes the agent to the correct sibling for retrieval. It stops short of stating when not to use this tool (e.g. versus docs_list_topics for enumeration), so it is clear context without exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
file_a_claimAuto claim filing break-even calculatorARead-onlyIdempotentInspect
Estimate whether filing an auto collision claim costs more than paying for the repair yourself. Returns monthly premium spreads with and without one claim, the monthly and multi-year premium increase, the collision deductible, the total cost of filing (deductible plus premium increase), and a file_claim or pay_out_of_pocket recommendation with the estimated savings. These are model estimates, not carrier quotes.
| Name | Required | Description | Default |
|---|---|---|---|
| age | Yes | Age in years of the driver being priced; the model converts it to a birth year. | |
| zip | Yes | ZIP code for the driver or garaging location being priced. | |
| make | No | Vehicle manufacturer, such as `Toyota` or `Honda`. | |
| seed | No | Optional deterministic seed for the estimate sample when a caller wants stable repeat runs. | |
| year | No | Vehicle model year. With make and model it prices a specific car; omit it to price a generic vehicle instead. | |
| model | No | Vehicle model, such as `Camry` or `Civic`. | |
| state | Yes | Two-letter state code for the garaging address or rating state. | |
| style | No | Vehicle trim, body style, or submodel when you want to narrow the vehicle match. | |
| gender | Yes | Driver gender code the pricing model rates on: `M` for male, `F` for female, or `N` when not specified. | |
| repair_estimate | Yes | Approximate dollar amount you expect to pay to repair the vehicle if you do not file a claim. | |
| collision_deductible | No | Dollars the driver pays toward a collision repair before collision coverage pays the rest. Omitted means $1,000. | |
| comprehensive_deductible | No | Dollars the driver pays toward non-collision damage, such as theft, hail, or vandalism, before comprehensive coverage pays the rest. Omitted means $1,000. |
Output Schema
| Name | Required | Description |
|---|---|---|
| inputs | Yes | Driver, vehicle, and deductible values the model used, with defaults filled in for omitted inputs. |
| deductible | Yes | Collision deductible paid when filing. |
| disclaimer | Yes | Notice that these figures are informational estimates, not binding quotes; relay it with the numbers. |
| claim_monthly | Yes | Monthly premium spread after filing one claim. Whole US dollars per month. |
| estimate_unit | Yes | Currency of every dollar figure: `usd`. |
| recommendation | No | Whether filing or paying out of pocket costs less; null when no repair estimate was read. |
| repair_estimate | Yes | The repair estimate you sent. |
| monthly_increase | Yes | Median monthly premium increase after the claim. |
| no_claim_monthly | Yes | Monthly premium spread with no claim on record. Whole US dollars per month. |
| premium_increase | Yes | Total extra premium over premium_impact_years. |
| total_claim_cost | Yes | Total cost of filing: deductible plus premium_increase. |
| premium_impact_years | Yes | Years the higher premium is assumed to last. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/non-destructive, and the description adds a meaningful accuracy caveat ('model estimates, not carrier quotes') that tells the agent how much to trust the output. It stops short of describing determinism (the seed param) or the sampling behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the decision question, followed by a compact enumeration of returns and the estimate caveat. The return-value listing is somewhat verbose given an output schema exists, but nothing is wasted or confusing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only calculation tool with full annotation coverage and a present output schema, the description covers purpose, returns, and an accuracy disclaimer. The main gap is the absence of routing guidance to sibling estimation tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so all 12 parameters are already documented in the schema. The description only alludes to the collision deductible and offers no additional parameter semantics beyond what the schema provides, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and decision ('Estimate whether filing an auto collision claim costs more than paying for the repair yourself'), clearly distinguishing this break-even calculator from the generic auto_estimates sibling, though it does not name that sibling explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The purpose implies when to use it (a claim-vs-pay decision), but there is no explicit when-to-use guidance or reference to alternatives such as auto_estimates or collision_and_comprehensive_coverage. Usage is inferable but not spelled out.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
home_calculatorHome insurance calculatorARead-onlyIdempotentInspect
Estimate annual and monthly home insurance ranges for a California property and return the normalized inputs, available risk-factor ids, and ZIP-level context notes that explain the estimate.
| Name | Required | Description | Default |
|---|---|---|---|
| zip | Yes | ZIP code for the California property being estimated. | |
| home_sqft | Yes | Approximate finished living area of the home in square feet. | |
| risk_factors | No | Optional Coverage Cat risk-factor ids, such as `pool` or `old_systems`, for property traits that can change premium. |
Output Schema
| Name | Required | Description |
|---|---|---|
| inputs | Yes | The ZIP, square footage, and risk-factor ids the estimate used. |
| estimate | Yes | Premium range for the home, in US dollars. |
| zip_facts | Yes | Context notes that explain the ZIP's premium tier. |
| disclaimer | Yes | Notice that these figures are informational estimates, not binding quotes; relay it with the numbers. |
| estimate_unit | Yes | Currency of every estimate figure: `usd`. |
| available_risk_factors | Yes | Every risk factor you can pass in risk_factors, whether or not it was applied. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=false, so the safety profile is covered. The description goes beyond that by disclosing what is returned: normalized inputs, available risk-factor ids, and ZIP-level context notes — helpful behavioral detail about the estimate's provenance.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that front-loads the core purpose and then appends the return-value detail; nothing is redundant. It is slightly dense with three output clauses, but each clause carries distinct information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With annotations covering the safety profile and an output schema existing, the description does not need to enumerate return fields. It adequately conveys scope, required inputs, and the nature of the result for a read-only three-parameter estimator; only sibling routing is absent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents zip, home_sqft, and risk_factors, making a 3 the baseline. The description's mention of 'normalized inputs' and 'available risk-factor ids' loosely maps to the risk_factors parameter but adds no syntax or format detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Estimate') and resource ('annual and monthly home insurance ranges') with an explicit geographic scope ('California property'), and it names the outputs produced. It does not explicitly differentiate itself from the sibling umbrella_calculator, but the resource noun makes the domain distinction legible.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use statement, no prerequisite conditions, and no routing to or away from alternatives such as umbrella_calculator or homeowners_consumer_prefill. The California-property scope is the only contextual hint, so usage must be inferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
homeowners_consumer_policyGet homeowners policyAInspect
Read the current bound or cancelled homeowners policy record, policy documents, and any existing cancellation, refund, or support request history. Reuse uid and the latest intake_access_token from the previous successful Coverage Cat response on each follow-up. MCP 2026-07-28 is stateless and requires that token. Legacy MCP hosts may also preserve hidden shopper session authorization. Keep tokens private and stay on this same MCP follow-up tool. This request records access attribution and rotates follow-up access, but does not advance or change policy state. Use it after Coverage Cat reports a policy on file, or after a service request is opened, to show policy facts without switching to delegated tools.
| Name | Required | Description | Default |
|---|---|---|---|
| uid | Yes | Coverage Cat intake uid for the existing authorized intake or returned by `umbrella_consumer_prefill` and echoed on every follow-up response. Reuse it for each follow-up call on the same application. | |
| intake_access_token | No | Send the latest intake_access_token from the previous successful Coverage Cat response on each follow-up. Required for stateless MCP 2026-07-28 requests; also accepted by legacy hosts. Keep it private and never show it to the shopper. |
Output Schema
| Name | Required | Description |
|---|---|---|
| uid | Yes | Coverage Cat intake uid for the current handoff. |
| line | No | |
| offers | No | |
| policy | No | |
| review | No | Structured review card or selected-offer review block. |
| schema | No | Supplemental schema hints for homeowners review payloads. |
| status | Yes | |
| sandbox | No | True when Coverage Cat is returning consumer sandbox test data rather than a live shopper workflow. |
| support | No | |
| uploaded | No | |
| documents | No | |
| expires_at | No | When the current consumer handoff expires. |
| offers_url | No | Coverage Cat browser URL for the selected offer or offer-tracking page. |
| payment_ui | No | |
| next_action | No | A structured hint for the next allowed tool or endpoint action. |
| payment_url | No | Coverage Cat browser URL for secure payment fallback. |
| post_choose | No | Structured post-choose state after a quoted umbrella offer is selected. |
| conversation | No | |
| review_items | No | |
| review_token | No | Opaque review token for delegated review-style submit paths. |
| verification | No | |
| detail_status | No | |
| known_summary | No | Structured facts Coverage Cat can safely summarize at this stage. |
| next_question | No | The current shopper-owned question bundle or bind-stage question. |
| offer_summary | No | |
| payment_setup | No | |
| preview_token | No | Opaque bind-preview token for the next homeowners bind confirmation. |
| missing_fields | No | Structured missing-value hints for homeowners pre-submit review. |
| payment_status | No | |
| pending_fields | No | Structured missing-value hints for umbrella pre-submit review. |
| selected_offer | No | |
| uploaded_count | No | |
| field_estimates | No | |
| service_preview | No | |
| service_request | No | |
| purchase_preview | No | |
| response_summary | No | |
| review_estimates | No | |
| service_requests | No | |
| agent_instructions | No | |
| poll_after_seconds | No | |
| selection_guidance | No | Guidance for completing an offer choice in one shopper-facing reply. |
| compare_details_url | No | Coverage Cat browser URL for compare-details follow-up. |
| intake_access_token | No | Short-lived follow-up bearer. On REST, send it back as Authorization for the next `/api/intake/{uid}` call. On MCP, retry the same follow-up tool with this token only when your host cannot preserve Coverage Cat's hidden shopper session. Never display it to the shopper. |
| notification_channel | No | |
| user_action_required | No | |
| application_submitted | No | |
| required_upload_types | No | |
| credit_consent_question | No | |
| credit_consent_disclosure | No | Versioned canonical text that must be shown verbatim; echo version and text_hash with the user's response. |
| payment_collection_supported | No | |
| monoline_mvr_consent_question | No | |
| contact_preferences_disclosures | No | Optional versioned service-contact disclosures for the phone number on file; no marketing consent and no purchase requirement. |
| monoline_mvr_consent_disclosure | No | Versioned Monoline-specific text that must be shown verbatim with its source URL; echo version and text_hash with the user's response. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description earns credit for explaining the otherwise puzzling readOnlyHint=false: the call "records access attribution and rotates follow-up access, but does not advance or change policy state." It also discloses statelessness under MCP 2026-07-28, token privacy requirements, and legacy host session behavior. It stops short of saying how token rotation affects a stale/expired token or what happens when no policy is on file.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The first sentence front-loads what the tool returns, and the operational constraints follow in a logical order. Some redundancy exists between "stay on this same MCP follow-up tool" and "without switching to delegated tools," and the legacy-host sentence is marginally tangential, but nearly every sentence carries actionable information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, return-value detail is correctly omitted, and the description covers auth, statelessness, side effects, and placement in the workflow. What remains missing is error/edge behavior — e.g., what happens if no policy is on file yet or if the token is no longer the latest one.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so both parameters are already documented in the input schema, which sets the baseline at 3. The description does add a usage rule beyond the schema — reuse the latest token from the previous successful response on every follow-up — but it largely restates the schema wording about uid and token privacy rather than adding new format or failure semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The opening sentence gives a precise verb ("Read") and enumerates the exact resources returned: the bound or cancelled homeowners policy record, policy documents, and cancellation/refund/support request history. It is clearly distinct from umbrella-oriented siblings by naming homeowners policy scope, but it never names the parallel umbrella_consumer_policy or homeowners_consumer_service tools, so the differentiation is implied rather than stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It states explicit triggers — "after Coverage Cat reports a policy on file, or after a service request is opened" — and an explicit boundary: show policy facts "without switching to delegated tools" and "stay on this same MCP follow-up tool." That is a when-to-use plus a when-not-to-use routing instruction, which is the full bar.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
homeowners_consumer_servicePreview or open homeowners service requestADestructiveIdempotentInspect
Preview or open a cancellation, refund, or support request for a consumer homeowners policy. Reuse uid and the latest intake_access_token from the previous successful Coverage Cat response on each follow-up. MCP 2026-07-28 is stateless and requires that token. Legacy MCP hosts may also preserve hidden shopper session authorization. Keep tokens private and stay on this same MCP follow-up tool. Stay on the same consumer-operated MCP subset after bind. Preview the consequences first, then send confirm_request: true only after the shopper approves opening the request. Do not describe a cancellation, refund, or support issue as completed until Coverage Cat confirms the final outcome.
| Name | Required | Description | Default |
|---|---|---|---|
| uid | Yes | Coverage Cat intake uid for the current shopper session. | |
| reason | Yes | Short shopper-approved reason for the request. | |
| details | No | Shopper-approved context beyond the short reason, such as the specifics of a billing dispute, recorded on the request and its preview. | |
| request_type | Yes | What the shopper wants done after purchase. `policy_cancellation` asks the carrier to end the policy on requested_effective_date; `refund_request` asks the carrier or billing provider to review a refund or outstanding balance without changing coverage; `support_case` opens a general support case for anything else. | |
| confirm_request | No | Whether to open the request now. false, the default, returns a preview of the consequences without opening anything; send true only after the shopper approves that preview. | |
| idempotency_key | No | Key you generate to identify one logical homeowners_consumer_service request, so a retry cannot apply it twice. After a timeout or transport failure, retry with the same key and identical arguments to get the original result back; Coverage Cat keeps that result for 24 hours and rejects different arguments sent under a used key. | |
| intake_access_token | No | Send the latest intake_access_token from the previous successful Coverage Cat response on each follow-up. Required for stateless MCP 2026-07-28 requests; also accepted by legacy hosts. Keep it private and never show it to the shopper. | |
| requested_effective_date | No | Day the shopper wants a cancellation to take effect; used only for policy_cancellation. It is a request: the carrier reviews it and may set a different date. |
Output Schema
| Name | Required | Description |
|---|---|---|
| uid | Yes | Coverage Cat intake uid for the current handoff. |
| line | No | |
| offers | No | |
| policy | No | |
| review | No | Structured review card or selected-offer review block. |
| schema | No | Supplemental schema hints for homeowners review payloads. |
| status | Yes | |
| sandbox | No | True when Coverage Cat is returning consumer sandbox test data rather than a live shopper workflow. |
| support | No | |
| uploaded | No | |
| documents | No | |
| expires_at | No | When the current consumer handoff expires. |
| offers_url | No | Coverage Cat browser URL for the selected offer or offer-tracking page. |
| payment_ui | No | |
| next_action | No | A structured hint for the next allowed tool or endpoint action. |
| payment_url | No | Coverage Cat browser URL for secure payment fallback. |
| post_choose | No | Structured post-choose state after a quoted umbrella offer is selected. |
| conversation | No | |
| review_items | No | |
| review_token | No | Opaque review token for delegated review-style submit paths. |
| verification | No | |
| detail_status | No | |
| known_summary | No | Structured facts Coverage Cat can safely summarize at this stage. |
| next_question | No | The current shopper-owned question bundle or bind-stage question. |
| offer_summary | No | |
| payment_setup | No | |
| preview_token | No | Opaque bind-preview token for the next homeowners bind confirmation. |
| missing_fields | No | Structured missing-value hints for homeowners pre-submit review. |
| payment_status | No | |
| pending_fields | No | Structured missing-value hints for umbrella pre-submit review. |
| selected_offer | No | |
| uploaded_count | No | |
| field_estimates | No | |
| service_preview | No | |
| service_request | No | |
| purchase_preview | No | |
| response_summary | No | |
| review_estimates | No | |
| service_requests | No | |
| agent_instructions | No | |
| poll_after_seconds | No | |
| selection_guidance | No | Guidance for completing an offer choice in one shopper-facing reply. |
| compare_details_url | No | Coverage Cat browser URL for compare-details follow-up. |
| intake_access_token | No | Short-lived follow-up bearer. On REST, send it back as Authorization for the next `/api/intake/{uid}` call. On MCP, retry the same follow-up tool with this token only when your host cannot preserve Coverage Cat's hidden shopper session. Never display it to the shopper. |
| notification_channel | No | |
| user_action_required | No | |
| application_submitted | No | |
| required_upload_types | No | |
| credit_consent_question | No | |
| credit_consent_disclosure | No | Versioned canonical text that must be shown verbatim; echo version and text_hash with the user's response. |
| payment_collection_supported | No | |
| monoline_mvr_consent_question | No | |
| contact_preferences_disclosures | No | Optional versioned service-contact disclosures for the phone number on file; no marketing consent and no purchase requirement. |
| monoline_mvr_consent_disclosure | No | Versioned Monoline-specific text that must be shown verbatim with its source URL; echo version and text_hash with the user's response. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true, but the description adds real context beyond them: the token is required for stateless MCP 2026-07-28 hosts, must be kept private and never shown to the shopper, and legacy hosts may carry hidden session authorization. It also explains the two-phase preview/confirm behavior that the destructive hint alone doesn't convey. Minor deduction for restating idempotency/retry ideas that the schema already documents in detail.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The critical ordering rule (preview, then confirm) and the token requirement are stated early, which is good front-loading. However, several sentences are redundant: "keep tokens private and stay on this same MCP follow-up tool" is echoed by "stay on the same consumer-operated MCP subset after bind," and the token privacy point is repeated from the schema. Tightening would improve it.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present and full schema coverage across 8 parameters, the description focuses appropriately on workflow, consent, and token handling — the things structured fields can't express. It covers the risky path (confirm_request) and the host-compatibility caveat well; only the repeated clauses keep it from being fully tight.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already carries the meaning of every parameter, including request_type's enum semantics and confirm_request's preview-vs-open distinction. The description only reinforces the reuse of uid and intake_access_token rather than adding new parameter-level detail. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The opening sentence gives a specific verb pair ("preview or open") and a specific resource set ("cancellation, refund, or support request for a consumer homeowners policy"), which separates it from the umbrella_consumer_service and auto siblings. It stops short of naming a sibling outright, so an agent must infer the line vs. umbrella_consumer_service from the word "homeowners."
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It states an explicit workflow: preview first, then send confirm_request: true only after shopper approval, and never describe the issue as completed until Coverage Cat confirms the outcome. It also says to stay on this same follow-up tool rather than drifting to another, which is exactly the kind of routing guidance an agent needs.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
umbrella_bundle_comparisonStandalone umbrella vs. bundle calculatorARead-onlyIdempotentInspect
Compare the total cost of keeping existing home and auto insurance with standalone umbrella coverage versus moving all three to a bundle. Enter annual net premiums, required underlying-limit upgrades, and one-time switching cost. Returns first-year and multi-year totals, savings, and the first whole break-even year. Flags unverified coverage comparability; no carrier prices are invented.
| Name | Required | Description | Default |
|---|---|---|---|
| years | No | Assumes unchanged annual premiums across this period. | |
| switching_cost | No | Additional nonrefundable cost of moving to the bundle; exclude refunded or overlapping premiums. Whole US dollars. | |
| coverage_comparable | No | True only after comparing limits, deductibles, exclusions, insured risks, and claims terms. | |
| auto_upgrade_premium | No | Additional annual cost to meet standalone umbrella requirements. Whole US dollars. | |
| bundled_auto_premium | Yes | Annual replacement auto quote, after discounts, with required limits. Double a six-month premium; multiply a monthly premium by 12. Whole US dollars. | |
| bundled_home_premium | Yes | Annual replacement home quote, after discounts, with required limits. Whole US dollars. | |
| current_auto_premium | Yes | Annual premium for the auto policies you would keep. Double a six-month premium; multiply a monthly premium by 12. Whole US dollars. | |
| current_home_premium | Yes | Annual premium for the home, renters, or rental policies you would keep. Whole US dollars. | |
| home_upgrade_premium | No | Additional annual cost to meet standalone umbrella requirements. Whole US dollars. | |
| bundled_umbrella_premium | Yes | Annual bundled umbrella quote at the same limit. Whole US dollars. | |
| standalone_umbrella_premium | Yes | Annual standalone umbrella quote at the limit you want. Whole US dollars. |
Output Schema
| Name | Required | Description |
|---|---|---|
| bundle | Yes | Cost of replacing home/auto/umbrella together, including one-time switching cost. |
| inputs | Yes | Normalized caller inputs including defaults; unverified optional limits remain null. |
| sources | Yes | Primary background sources; premiums and required limits still come from the caller. |
| disclaimer | Yes | Limits of this planning result and the need to verify policy terms and legal protections. |
| standalone | Yes | Cost of keeping current home/auto policies with standalone umbrella and any required limit upgrades. |
| assumptions | Yes | Assumptions and exclusions needed to interpret the calculation. |
| estimate_unit | Yes | Currency for monetary inputs and outputs; year/count fields retain their named units. |
| comparison_status | Yes | Whether the caller confirmed comparable coverage terms; otherwise review coverage before relying on cost alone. |
| lower_cost_option | Yes | Option with the lower total cost over the selected period; this does not establish coverage equivalence. |
| methodology_version | Yes | Version date of the calculator's arithmetic and assumptions. |
| bundle_break_even_year | Yes | First whole policy year when recurring bundle savings cover switching cost; null if there are no recurring savings. |
| total_savings_with_bundle | Yes | Standalone total minus bundled total over the chosen years, including switching cost, in USD. |
| annual_savings_with_bundle | Yes | Standalone annual cost minus bundled annual cost, in USD; negative means the bundle costs more. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/non-destructive/closed-world, so safety is covered. The description adds real behavioral context beyond that: it flags that outputs include a break-even year, that unverified coverage comparability is surfaced rather than assumed, and that 'no carrier prices are invented' — i.e., it computes only from user-supplied quotes and never fabricates market data. That last point is the kind of trust signal annotations cannot express.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences: purpose, inputs, outputs plus caveats. Front-loaded with the comparison framing, and no sentence is redundant — the final clause about not inventing carrier prices could easily have been omitted but earns its place as a trust qualifier.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be spelled out in detail, yet the description still names the headline outputs. With 11 parameters and only 6 required, the description's mention of entering premiums and upgrades tells the agent what to gather; annotations cover the safety profile. Nothing material is missing for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the per-field semantics (annualize a six-month premium, whole US dollars, upgrade costs) are already fully documented. The description groups the inputs conceptually into net premiums, underlying-limit upgrades, and switching cost, which helps orient the agent but adds no format or edge-case detail beyond the schema. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb-plus-resource: 'Compare the total cost of keeping existing home and auto insurance with standalone umbrella coverage versus moving all three to a bundle.' It names both sides of the comparison and the deliverable (first-year/multi-year totals, savings, break-even year), which distinguishes it from umbrella_calculator and umbrella_limit_planner siblings that compute a single figure rather than a cross-scenario delta.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The scenario is clearly framed — user already has home and auto, is deciding whether to add standalone umbrella or rebundle all three — and it lists what inputs to supply. It gives no explicit exclusions or named alternatives (e.g., when to prefer umbrella_limit_planner for sizing), so the agent must infer routing from the comparison framing rather than being told outright.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
umbrella_calculatorUmbrella insurance calculatorARead-onlyIdempotentInspect
Research-only estimate of annual personal umbrella pricing bands, the inferred risk class, and per-factor impacts for directional pricing. Use this for price exploration, not when the shopper wants Coverage Cat to shop for or buy umbrella insurance.
| Name | Required | Description | Default |
|---|---|---|---|
| zip | Yes | ZIP code for the household being priced. | |
| jet_skis | No | Count of personal watercraft such as jet skis. | |
| auto_count | No | How many cars, trucks, or SUVs are in the household auto profile. | |
| motorcycles | No | How many motorcycles should be added to the total vehicle exposure. | |
| property_count | No | How many residential properties the household owns or carries liability for. | |
| drivers_over_70 | No | Number of drivers in the household who are 70 or older. | |
| antique_vehicles | No | How many collector or antique vehicles should be counted in the risk profile. | |
| drivers_under_22 | No | Number of drivers in the household who are younger than 22. | |
| large_watercraft | No | Count of boats of any size; personal watercraft go under jet_skis. | |
| moving_violations | No | Total moving violations across all household drivers. Omitted counts as none; a high count can move the profile to specialized review or make it ineligible for instant pricing. | |
| at_fault_accidents | No | Total at-fault accidents across all household drivers. Omitted counts as none; a high count can move the profile to specialized review or make it ineligible for instant pricing. |
Output Schema
| Name | Required | Description |
|---|---|---|
| inputs | Yes | The household counts you sent, parsed to integers; omitted counts are left out. |
| estimate | Yes | Risk class and annual premium bands. |
| disclaimer | Yes | Notice that these figures are informational estimates, not binding quotes; relay it with the numbers. |
| estimate_unit | Yes | Unit of every price: `annual_premium_usd`, annual premium in US dollars. |
| factor_impacts | Yes | Household factors that moved the profile off the best (`preferred`) class; empty when none did. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already establish read-only, idempotent, non-destructive, closed-world behavior. The description adds useful context that this is a research-only directional estimate rather than a binding quote or purchase action, though it does not discuss auth, limits, or detailed eligibility behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences and front-loads what the tool returns before stating the usage boundary. Every sentence contributes directly to selection or correct use.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 11-parameter estimate with an output schema and rich annotations, the description covers purpose, output nature, and the key usage boundary. It could say more about estimate limitations or eligibility implications, but the schema and output schema carry the detailed parameter and return-value information.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all 11 parameters are already documented in the schema. The description only implies that those factors drive risk class and per-factor impacts; it adds no parameter syntax, defaults, or special-case guidance beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: an estimate of annual personal umbrella pricing bands, inferred risk class, and per-factor impacts. It also distinguishes this research-only pricing tool from the shop/buy umbrella sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives an explicit when-to-use case (price exploration) and a when-not case (when the shopper wants Coverage Cat to shop for or buy umbrella insurance). It does not name the specific alternative consumer/shop tools, so the routing is clear but not fully explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
umbrella_consumer_attachUmbrella consumer attachment uploadADestructiveIdempotentInspect
Upload declarations or auto declarations during the consumer-prefill umbrella post-choose flow. Reuse uid and the latest intake_access_token from the previous successful Coverage Cat response on each follow-up. MCP 2026-07-28 is stateless and requires that token. Legacy MCP hosts may also preserve hidden shopper session authorization. Keep tokens private and stay on this same MCP follow-up tool. Stay on the same consumer-operated MCP subset. Use only after selection and only when Coverage Cat says documents are needed. If both the home and auto files are already available, prefer one attach call with attachments so the shopper only approves one upload turn. If your runtime already has the files on disk or can stream raw bytes, prefer the REST binary /api/intake/{uid}/attach-upload fallback instead of hand-building base64. The upload itself is usually quick once the files are available, and secure checkout is usually ready about 5-10 minutes after Coverage Cat has the uploads on file.
| Name | Required | Description | Default |
|---|---|---|---|
| uid | Yes | Coverage Cat intake uid for the existing authorized intake or returned by `umbrella_consumer_prefill` and echoed on every follow-up response. Reuse it for each follow-up call on the same application. | |
| type | No | Which policy the declarations page belongs to: `declarations` for the home, condo, renters, or landlord policy, or `auto_declarations` for the auto policy. Match the upload types Coverage Cat listed in `required_upload_types`. | |
| content | No | The whole declarations document named by filename, not an excerpt, summary, or extracted text. | |
| filename | No | Original file name with its extension, such as `home-declarations.pdf`. Coverage Cat reads the file type from the extension and accepts PDF, JPEG, or PNG files. | |
| attachments | No | Upload multiple declarations in one call when both files are already available. | |
| idempotency_key | No | Key you generate to identify one logical umbrella_consumer_attach request, so a retry cannot apply it twice. After a timeout or transport failure, retry with the same key and identical arguments to get the original result back; Coverage Cat keeps that result for 24 hours and rejects different arguments sent under a used key. | |
| intake_access_token | No | Send the latest intake_access_token from the previous successful Coverage Cat response on each follow-up. Required for stateless MCP 2026-07-28 requests; also accepted by legacy hosts. Keep it private and never show it to the shopper. |
Output Schema
| Name | Required | Description |
|---|---|---|
| uid | Yes | Coverage Cat intake uid for the current handoff. |
| line | No | |
| offers | No | |
| policy | No | |
| review | No | Structured review card or selected-offer review block. |
| schema | No | Supplemental schema hints for homeowners review payloads. |
| status | Yes | |
| sandbox | No | True when Coverage Cat is returning consumer sandbox test data rather than a live shopper workflow. |
| support | No | |
| uploaded | No | |
| documents | No | |
| expires_at | No | When the current consumer handoff expires. |
| offers_url | No | Coverage Cat browser URL for the selected offer or offer-tracking page. |
| payment_ui | No | |
| next_action | No | A structured hint for the next allowed tool or endpoint action. |
| payment_url | No | Coverage Cat browser URL for secure payment fallback. |
| post_choose | No | Structured post-choose state after a quoted umbrella offer is selected. |
| conversation | No | |
| review_items | No | |
| review_token | No | Opaque review token for delegated review-style submit paths. |
| verification | No | |
| detail_status | No | |
| known_summary | No | Structured facts Coverage Cat can safely summarize at this stage. |
| next_question | No | The current shopper-owned question bundle or bind-stage question. |
| offer_summary | No | |
| payment_setup | No | |
| preview_token | No | Opaque bind-preview token for the next homeowners bind confirmation. |
| missing_fields | No | Structured missing-value hints for homeowners pre-submit review. |
| payment_status | No | |
| pending_fields | No | Structured missing-value hints for umbrella pre-submit review. |
| selected_offer | No | |
| uploaded_count | No | |
| field_estimates | No | |
| service_preview | No | |
| service_request | No | |
| purchase_preview | No | |
| response_summary | No | |
| review_estimates | No | |
| service_requests | No | |
| agent_instructions | No | |
| poll_after_seconds | No | |
| selection_guidance | No | Guidance for completing an offer choice in one shopper-facing reply. |
| compare_details_url | No | Coverage Cat browser URL for compare-details follow-up. |
| intake_access_token | No | Short-lived follow-up bearer. On REST, send it back as Authorization for the next `/api/intake/{uid}` call. On MCP, retry the same follow-up tool with this token only when your host cannot preserve Coverage Cat's hidden shopper session. Never display it to the shopper. |
| notification_channel | No | |
| user_action_required | No | |
| application_submitted | No | |
| required_upload_types | No | |
| credit_consent_question | No | |
| credit_consent_disclosure | No | Versioned canonical text that must be shown verbatim; echo version and text_hash with the user's response. |
| payment_collection_supported | No | |
| monoline_mvr_consent_question | No | |
| contact_preferences_disclosures | No | Optional versioned service-contact disclosures for the phone number on file; no marketing consent and no purchase requirement. |
| monoline_mvr_consent_disclosure | No | Versioned Monoline-specific text that must be shown verbatim with its source URL; echo version and text_hash with the user's response. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, idempotentHint=true, and readOnlyHint=false, so the description isn't obligated to restate safety. It does add valuable operational behavior: the stateless MCP 2026-07-28 token requirement, legacy hidden session auth, and the 5-10 minute readiness window after uploads land. It does not explain what makes the call destructive (e.g., whether re-uploading supersedes earlier documents), which is the one gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Purpose is front-loaded and every major rule appears, but the paragraph drifts into repeated directives ('Keep tokens private', 'Stay on this same MCP follow-up tool', 'Stay on the same consumer-operated MCP subset') that partly duplicate the schema's intake_access_token description. A few sentences could be merged or dropped without losing information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, return values need no explanation, and the description covers auth, idempotency intent, batching, fallback transport, and expected downstream timing. Only the destructive/replacement semantics of a re-upload are left unexplained for a mutation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3; the description still adds meaning by instructing reuse of uid and the latest intake_access_token across follow-ups and by steering agents toward attachments rather than hand-building base64 content. It also resolves the schema's either/or mode ambiguity in prose.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The first sentence names a specific verb and resource ('Upload declarations or auto declarations') and pins the exact flow ('consumer-prefill umbrella post-choose'). This clearly separates it from siblings like umbrella_consumer_prefill and umbrella_consumer_bind.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states the precondition ('only after selection and only when Coverage Cat says documents are needed'), a preferred invocation mode ('prefer one attach call with attachments'), and a concrete alternative route (REST binary /api/intake/{uid}/attach-upload for file-on-disk runtimes). That is when, when-not, and alternatives all in one paragraph.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
umbrella_consumer_bindContinue umbrella bindADestructiveIdempotentInspect
Continue the consumer-prefill umbrella bind follow-up only after select returns needs_more_info_to_bind or ready_to_finalize. Reuse uid and the latest intake_access_token from the previous successful Coverage Cat response on each follow-up. MCP 2026-07-28 is stateless and requires that token. Legacy MCP hosts may also preserve hidden shopper session authorization. Keep tokens private and stay on this same MCP follow-up tool. Stay on the same consumer-operated MCP subset and send only the current bind-stage fields inside intake. This later bind-stage follow-up is where actual vehicle details may appear for selected offers such as Markel; do not move that question into the pre-submit review.
| Name | Required | Description | Default |
|---|---|---|---|
| uid | Yes | Coverage Cat intake uid for the existing authorized intake or returned by `umbrella_consumer_prefill` and echoed on every follow-up response. Reuse it for each follow-up call on the same application. | |
| intake | No | Answers to the current bind-stage next_question, keyed by the field names Coverage Cat asked for, such as vehicle details for a selected Markel offer. | |
| idempotency_key | No | Key you generate to identify one logical umbrella_consumer_bind request, so a retry cannot apply it twice. After a timeout or transport failure, retry with the same key and identical arguments to get the original result back; Coverage Cat keeps that result for 24 hours and rejects different arguments sent under a used key. | |
| intake_access_token | No | Send the latest intake_access_token from the previous successful Coverage Cat response on each follow-up. Required for stateless MCP 2026-07-28 requests; also accepted by legacy hosts. Keep it private and never show it to the shopper. |
Output Schema
| Name | Required | Description |
|---|---|---|
| uid | Yes | Coverage Cat intake uid for the current handoff. |
| line | No | |
| offers | No | |
| policy | No | |
| review | No | Structured review card or selected-offer review block. |
| schema | No | Supplemental schema hints for homeowners review payloads. |
| status | Yes | |
| sandbox | No | True when Coverage Cat is returning consumer sandbox test data rather than a live shopper workflow. |
| support | No | |
| uploaded | No | |
| documents | No | |
| expires_at | No | When the current consumer handoff expires. |
| offers_url | No | Coverage Cat browser URL for the selected offer or offer-tracking page. |
| payment_ui | No | |
| next_action | No | A structured hint for the next allowed tool or endpoint action. |
| payment_url | No | Coverage Cat browser URL for secure payment fallback. |
| post_choose | No | Structured post-choose state after a quoted umbrella offer is selected. |
| conversation | No | |
| review_items | No | |
| review_token | No | Opaque review token for delegated review-style submit paths. |
| verification | No | |
| detail_status | No | |
| known_summary | No | Structured facts Coverage Cat can safely summarize at this stage. |
| next_question | No | The current shopper-owned question bundle or bind-stage question. |
| offer_summary | No | |
| payment_setup | No | |
| preview_token | No | Opaque bind-preview token for the next homeowners bind confirmation. |
| missing_fields | No | Structured missing-value hints for homeowners pre-submit review. |
| payment_status | No | |
| pending_fields | No | Structured missing-value hints for umbrella pre-submit review. |
| selected_offer | No | |
| uploaded_count | No | |
| field_estimates | No | |
| service_preview | No | |
| service_request | No | |
| purchase_preview | No | |
| response_summary | No | |
| review_estimates | No | |
| service_requests | No | |
| agent_instructions | No | |
| poll_after_seconds | No | |
| selection_guidance | No | Guidance for completing an offer choice in one shopper-facing reply. |
| compare_details_url | No | Coverage Cat browser URL for compare-details follow-up. |
| intake_access_token | No | Short-lived follow-up bearer. On REST, send it back as Authorization for the next `/api/intake/{uid}` call. On MCP, retry the same follow-up tool with this token only when your host cannot preserve Coverage Cat's hidden shopper session. Never display it to the shopper. |
| notification_channel | No | |
| user_action_required | No | |
| application_submitted | No | |
| required_upload_types | No | |
| credit_consent_question | No | |
| credit_consent_disclosure | No | Versioned canonical text that must be shown verbatim; echo version and text_hash with the user's response. |
| payment_collection_supported | No | |
| monoline_mvr_consent_question | No | |
| contact_preferences_disclosures | No | Optional versioned service-contact disclosures for the phone number on file; no marketing consent and no purchase requirement. |
| monoline_mvr_consent_disclosure | No | Versioned Monoline-specific text that must be shown verbatim with its source URL; echo version and text_hash with the user's response. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already flag destructiveHint=true and idempotentHint=true, so the description focuses on what they cannot convey: stateless MCP 2026-07-28 requires the token on every follow-up, legacy hosts may carry hidden shopper session auth, and tokens must be kept private. It does not explain what the destructive bind actually commits (e.g., whether an offer is bound or a policy created), leaving one meaningful behavioral gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The gating condition is correctly front-loaded, but the prose is dense and repetitive, with overlapping directives ('Keep tokens private', 'Stay on this same MCP follow-up tool', 'Stay on the same consumer-operated MCP subset') and a trailing scope lecture about Markel vehicle details that could be compressed to one clause.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a multi-step, stateful, destructive bind operation the description covers the state-machine entry condition, credential handling, and payload scoping, and an output schema exists so return values need not be described. What remains missing is the consequence of a successful bind and whether the intake object's expected fields can be discovered before calling.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description largely restates what the schema already states about uid and intake_access_token; its only real addition is the constraint to send 'only the current bind-stage fields' inside intake, which is a thin increment over the structured data.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Continue the consumer-prefill umbrella bind follow-up') and pins the exact precondition ('only after select returns needs_more_info_to_bind or ready_to_finalize'). This clearly separates it from umbrella_consumer_prefill and umbrella_consumer_select in the sibling list.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives an explicit when-to-use gate tied to the prior tool's return states, plus concrete reuse instructions for uid and intake_access_token. It also forbids repurposing: 'stay on this same MCP follow-up tool' and don't move the vehicle-details question into pre-submit review.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
umbrella_consumer_paymentCollect umbrella paymentADestructiveIdempotentInspect
Prepare secure Stripe payment collection or submit the resulting payment method during the consumer-prefill umbrella post-choose flow. Reuse uid and the latest intake_access_token from the previous successful Coverage Cat response on each follow-up. MCP 2026-07-28 is stateless and requires that token. Legacy MCP hosts may also preserve hidden shopper session authorization. Keep tokens private and stay on this same MCP follow-up tool. Stay on the same consumer-operated MCP subset. Use this only after Coverage Cat says payment_needed. First call it with payment_collection_requested: true; do not send the shopper straight to payment_url before you try this native step. If the host confirms the registered secure payment UI can render, display it and wait for completion; do not request card details through conversational text. After successful Stripe setup, call this same tool again with setup_intent_id and payment_method_id. If UI support is unknown or unsupported, or if secure setup fails in chat, share payment_url with the specific fallback reason instead.
| Name | Required | Description | Default |
|---|---|---|---|
| uid | Yes | Coverage Cat intake uid for the current shopper session. | |
| idempotency_key | No | Key you generate to identify one logical umbrella_consumer_payment request, so a retry cannot apply it twice. After a timeout or transport failure, retry with the same key and identical arguments to get the original result back; Coverage Cat keeps that result for 24 hours and rejects different arguments sent under a used key. | |
| setup_intent_id | No | SetupIntent id returned by the earlier payment_collection_ready response. | |
| payment_method_id | No | Reusable Stripe PaymentMethod id produced by secure client-side setup confirmation. | |
| intake_access_token | No | Send the latest intake_access_token from the previous successful Coverage Cat response on each follow-up. Required for stateless MCP 2026-07-28 requests; also accepted by legacy hosts. Keep it private and never show it to the shopper. | |
| payment_collection_requested | No | Starts secure card collection: Coverage Cat prepares a Stripe SetupIntent and returns the publishable_key, client_secret, and setup_intent_id the registered payment UI needs. Send it on the first payment call, without setup_intent_id or payment_method_id. |
Output Schema
| Name | Required | Description |
|---|---|---|
| uid | Yes | Coverage Cat intake uid for the current handoff. |
| line | No | |
| offers | No | |
| policy | No | |
| review | No | Structured review card or selected-offer review block. |
| schema | No | Supplemental schema hints for homeowners review payloads. |
| status | Yes | |
| sandbox | No | True when Coverage Cat is returning consumer sandbox test data rather than a live shopper workflow. |
| support | No | |
| uploaded | No | |
| documents | No | |
| expires_at | No | When the current consumer handoff expires. |
| offers_url | No | Coverage Cat browser URL for the selected offer or offer-tracking page. |
| payment_ui | No | |
| next_action | No | A structured hint for the next allowed tool or endpoint action. |
| payment_url | No | Coverage Cat browser URL for secure payment fallback. |
| post_choose | No | Structured post-choose state after a quoted umbrella offer is selected. |
| conversation | No | |
| review_items | No | |
| review_token | No | Opaque review token for delegated review-style submit paths. |
| verification | No | |
| detail_status | No | |
| known_summary | No | Structured facts Coverage Cat can safely summarize at this stage. |
| next_question | No | The current shopper-owned question bundle or bind-stage question. |
| offer_summary | No | |
| payment_setup | No | |
| preview_token | No | Opaque bind-preview token for the next homeowners bind confirmation. |
| missing_fields | No | Structured missing-value hints for homeowners pre-submit review. |
| payment_status | No | |
| pending_fields | No | Structured missing-value hints for umbrella pre-submit review. |
| selected_offer | No | |
| uploaded_count | No | |
| field_estimates | No | |
| service_preview | No | |
| service_request | No | |
| purchase_preview | No | |
| response_summary | No | |
| review_estimates | No | |
| service_requests | No | |
| agent_instructions | No | |
| poll_after_seconds | No | |
| selection_guidance | No | Guidance for completing an offer choice in one shopper-facing reply. |
| compare_details_url | No | Coverage Cat browser URL for compare-details follow-up. |
| intake_access_token | No | Short-lived follow-up bearer. On REST, send it back as Authorization for the next `/api/intake/{uid}` call. On MCP, retry the same follow-up tool with this token only when your host cannot preserve Coverage Cat's hidden shopper session. Never display it to the shopper. |
| notification_channel | No | |
| user_action_required | No | |
| application_submitted | No | |
| required_upload_types | No | |
| credit_consent_question | No | |
| credit_consent_disclosure | No | Versioned canonical text that must be shown verbatim; echo version and text_hash with the user's response. |
| payment_collection_supported | No | |
| monoline_mvr_consent_question | No | |
| contact_preferences_disclosures | No | Optional versioned service-contact disclosures for the phone number on file; no marketing consent and no purchase requirement. |
| monoline_mvr_consent_disclosure | No | Versioned Monoline-specific text that must be shown verbatim with its source URL; echo version and text_hash with the user's response. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare destructiveHint=true, idempotentHint=true and readOnlyHint=false, and the description goes well beyond them: statelessness of MCP 2026-07-28 and the token requirement, the rule not to collect card details in conversational text, the two-phase handshake, and the fallback path. The one gap is that it never explains what the destructiveHint actually destroys or whether a prepared SetupIntent is reversible, so an agent cannot fully assess the mutation's blast radius.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with purpose and then sequenced as a procedure, which suits a multi-step tool. There is some redundancy ('Keep tokens private' and 'do not show it to the shopper' duplicate the intake_access_token schema description) and 'Stay on the same consumer-operated MCP subset' is vague filler, but most sentences carry actionable constraints.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive, stateful, multi-phase payment tool this covers preconditions, ordering, privacy constraints, error/retry behavior and the fallback branch; the existence of an output schema means return values need not be described. An agent has everything required to invoke it correctly on the first attempt.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% so the baseline is 3; the description earns an extra point by adding workflow meaning the schema does not convey, namely that payment_collection_requested is the first-call mode and that setup_intent_id plus payment_method_id must be sent together on the follow-up call. It also reinforces the token-reuse rule across follow-ups.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Prepare secure Stripe payment collection or submit the resulting payment method') and scopes it to the 'consumer-prefill umbrella post-choose flow,' which cleanly separates it from siblings like umbrella_consumer_bind, umbrella_consumer_select and umbrella_consumer_attach. The two operating modes are named explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives a hard precondition ('Use this only after Coverage Cat says payment_needed'), an ordered procedure ('First call it with payment_collection_requested: true'), an explicit prohibition ('do not send the shopper straight to payment_url before you try this native step'), and the fallback trigger ('If UI support is unknown or unsupported, or if secure setup fails in chat'). Nothing about when-to-use is left to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
umbrella_consumer_policyGet umbrella policyAInspect
Read the current bound or cancelled umbrella policy record, policy documents, and any existing cancellation, refund, or support request history. Reuse uid and the latest intake_access_token from the previous successful Coverage Cat response on each follow-up. MCP 2026-07-28 is stateless and requires that token. Legacy MCP hosts may also preserve hidden shopper session authorization. Keep tokens private and stay on this same MCP follow-up tool. This request records access attribution and rotates follow-up access, but does not advance or change policy state. Use it after Coverage Cat reports a policy on file, or after a service request is opened, to show policy facts without switching to delegated tools.
| Name | Required | Description | Default |
|---|---|---|---|
| uid | Yes | Coverage Cat intake uid for the existing authorized intake or returned by `umbrella_consumer_prefill` and echoed on every follow-up response. Reuse it for each follow-up call on the same application. | |
| intake_access_token | No | Send the latest intake_access_token from the previous successful Coverage Cat response on each follow-up. Required for stateless MCP 2026-07-28 requests; also accepted by legacy hosts. Keep it private and never show it to the shopper. |
Output Schema
| Name | Required | Description |
|---|---|---|
| uid | Yes | Coverage Cat intake uid for the current handoff. |
| line | No | |
| offers | No | |
| policy | No | |
| review | No | Structured review card or selected-offer review block. |
| schema | No | Supplemental schema hints for homeowners review payloads. |
| status | Yes | |
| sandbox | No | True when Coverage Cat is returning consumer sandbox test data rather than a live shopper workflow. |
| support | No | |
| uploaded | No | |
| documents | No | |
| expires_at | No | When the current consumer handoff expires. |
| offers_url | No | Coverage Cat browser URL for the selected offer or offer-tracking page. |
| payment_ui | No | |
| next_action | No | A structured hint for the next allowed tool or endpoint action. |
| payment_url | No | Coverage Cat browser URL for secure payment fallback. |
| post_choose | No | Structured post-choose state after a quoted umbrella offer is selected. |
| conversation | No | |
| review_items | No | |
| review_token | No | Opaque review token for delegated review-style submit paths. |
| verification | No | |
| detail_status | No | |
| known_summary | No | Structured facts Coverage Cat can safely summarize at this stage. |
| next_question | No | The current shopper-owned question bundle or bind-stage question. |
| offer_summary | No | |
| payment_setup | No | |
| preview_token | No | Opaque bind-preview token for the next homeowners bind confirmation. |
| missing_fields | No | Structured missing-value hints for homeowners pre-submit review. |
| payment_status | No | |
| pending_fields | No | Structured missing-value hints for umbrella pre-submit review. |
| selected_offer | No | |
| uploaded_count | No | |
| field_estimates | No | |
| service_preview | No | |
| service_request | No | |
| purchase_preview | No | |
| response_summary | No | |
| review_estimates | No | |
| service_requests | No | |
| agent_instructions | No | |
| poll_after_seconds | No | |
| selection_guidance | No | Guidance for completing an offer choice in one shopper-facing reply. |
| compare_details_url | No | Coverage Cat browser URL for compare-details follow-up. |
| intake_access_token | No | Short-lived follow-up bearer. On REST, send it back as Authorization for the next `/api/intake/{uid}` call. On MCP, retry the same follow-up tool with this token only when your host cannot preserve Coverage Cat's hidden shopper session. Never display it to the shopper. |
| notification_channel | No | |
| user_action_required | No | |
| application_submitted | No | |
| required_upload_types | No | |
| credit_consent_question | No | |
| credit_consent_disclosure | No | Versioned canonical text that must be shown verbatim; echo version and text_hash with the user's response. |
| payment_collection_supported | No | |
| monoline_mvr_consent_question | No | |
| contact_preferences_disclosures | No | Optional versioned service-contact disclosures for the phone number on file; no marketing consent and no purchase requirement. |
| monoline_mvr_consent_disclosure | No | Versioned Monoline-specific text that must be shown verbatim with its source URL; echo version and text_hash with the user's response. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description explains the surprising readOnlyHint=false annotation: the call records access attribution and rotates the follow-up access token, but does not advance or change policy state. It also discloses the stateless MCP 2026-07-28 token requirement and that legacy hosts may rely on hidden shopper session authorization. That is exactly the behavioral context annotations alone cannot convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Purpose is front-loaded, which is good, but the token guidance is repeated across multiple sentences and partially duplicates what the schema already states about keeping the token private. The prose is denser than needed for a two-parameter read tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, return shape needn't be described, and the description instead covers auth, token chaining, and state effects. What an agent needs to call this correctly is present. Only the relationship to specific sibling policy/service tools is left implicit.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, but the description adds operational meaning beyond the schema: the token must be the latest one from the previous successful response on every follow-up, and the uid is reused per application. This clarifies the chaining protocol, not just the field types.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource set: read the bound or cancelled umbrella policy record, its documents, and any cancellation/refund/support history. That is enough for an agent to know what comes back. It never names a concrete sibling (e.g. homeowners_consumer_policy or umbrella_consumer_service), so the differentiation from adjacent tools stays implicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives explicit trigger conditions: use after Coverage Cat reports a policy on file, or after a service request is opened. It also implies an exclusion by saying to stay on this follow-up tool rather than switch to delegated tools. There is no explicit when-not-to-use or named alternative tool, which keeps it short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
umbrella_consumer_prefillUmbrella consumer prefill handoffAIdempotentInspect
Preferred umbrella MCP entry point when a shopper wants Coverage Cat to shop for, compare, or buy umbrella insurance and no operator bearer token is present. On a cold start, call this before asking the shopper a questionnaire and assemble the fullest justified estimate from user-controlled context. Use canonical umbrella keys such as address.street/city/state/zip, license_state, license_number, approximate_asset_value or net_worth_numeric, desired_coverage_limit, required_coverage_e_limit, and vehicle_count or umbrella_details.motorized_vehicle_count. Do not send vehicles rows before submission. Stay on the same consumer-operated subset through consumer_intake_issues, consumer_intake_patch, umbrella_consumer_select, umbrella_consumer_bind, umbrella_consumer_attach, umbrella_consumer_payment, umbrella_consumer_policy, and umbrella_consumer_service. If you are rehearsing the shopper flow, set sandbox: true on this first prefill call only. That same consumer sandbox uid can then continue through the same shopper-safe flow. Reuse uid and the latest intake_access_token from the previous successful Coverage Cat response on each follow-up. MCP 2026-07-28 is stateless and requires that token. Legacy MCP hosts may also preserve hidden shopper session authorization. Keep tokens private and stay on this same MCP follow-up tool. Until later follow-up shows progress, tell the shopper the application is not submitted yet. Coverage Cat will not resume or expose a prior consumer umbrella draft based on email alone. Continue an existing consumer draft only through the issued uid plus the current hidden MCP session or latest intake_access_token handoff.
| Name | Required | Description | Default |
|---|---|---|---|
| intake | Yes | Fullest currently known consumer umbrella application patch. Use canonical keys such as address.street/city/state/zip, license_state, license_number, approximate_asset_value or net_worth_numeric, desired_coverage_limit, required_coverage_e_limit, and vehicle_count or umbrella_details.motorized_vehicle_count for umbrella counts. Do not send vehicles rows before submission. | |
| sandbox | No | Set true on this first prefill call to run a fully synthetic shopper rehearsal instead of a live application. The returned sandbox uid continues through the same consumer tool set. | |
| field_estimates | No | Provenance for intake values you inferred from context rather than heard from the shopper, one row per inferred value. On the initial umbrella handoff, add rows only for fields that already appear in the current umbrella review; otherwise send `intake` alone. | |
| idempotency_key | No | Key you generate to identify one logical umbrella_consumer_prefill request, so a retry cannot apply it twice. After a timeout or transport failure, retry with the same key and identical arguments to get the original result back; Coverage Cat keeps that result for 24 hours and rejects different arguments sent under a used key. | |
| credit_consent_pending | Yes | Declares that this handoff starts before the shopper has given consumer-report authorization for insurance underwriting, so do not ask about it now. Coverage Cat requests that authorization on `umbrella_consumer_select`, once the shopper picks an offer. |
Output Schema
| Name | Required | Description |
|---|---|---|
| uid | Yes | Coverage Cat intake uid for MCP follow-up. |
| sandbox | No | True when Coverage Cat is returning consumer sandbox test data rather than a live shopper workflow. |
| expires_at | Yes | When the current consumer handoff expires. |
| review_summary | Yes | Current non-authoritative pre-submit checkpoint the agent may summarize before continuing in chat or opening a browser fallback. Unless a later follow-up response shows quote progress, treat this application as not submitted yet. If any shown value is estimated, mark that bullet or value with `*`, include the short note `* = estimated` once above and once below the list, and do not prefix every estimated line with `[Estimated]`. |
| intake_access_token | Yes | Short-lived follow-up bearer. On REST, send it back as Authorization for the next `/api/intake/{uid}` call. On MCP, retry the same follow-up tool with this token only when your host cannot preserve Coverage Cat's hidden shopper session. Never display it to the shopper. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the mutation/idempotency/safety profile, but the description adds substantial behavior the annotations cannot express: stateless MCP requiring an `intake_access_token`, reuse of uid plus latest token on follow-ups, legacy host session authorization, token privacy, and the 'not submitted yet' reassurance rule. These are real operational constraints an agent needs before invoking.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The intent is front-loaded, but the paragraph bloats: the full list of nine sibling tool names is enumerated mid-sentence, the canonical key list is repeated from the schema, and 'Do not send vehicles rows before submission' appears twice. Several sentences about tokens and sessions could be compressed without losing meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present and rich per-parameter descriptions, the description covers the handoff contract, token lifecycle, sandbox mode, and consent timing well enough to call correctly. It stops short of describing failure modes or what the returned uid/token look like, but the output schema carries that.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the schema already spells out canonical intake keys, the `sandbox` semantics, the `field_estimates` provenance rows, and the `idempotency_key` retry contract, so the description largely restates rather than extends. The one added nuance ('do not send vehicles rows before submission') is useful but appears verbatim in the schema too, making the baseline 3 appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The opening sentence names the verb (prefill handoff), the resource (umbrella consumer intake), and the exact triggering condition ('shopper wants Coverage Cat to shop for, compare, or buy umbrella insurance and no operator bearer token is present'). It also distinguishes this entry point from follow-up siblings by naming the whole consumer-operated subset that comes after it.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicit sequencing guidance: call this on cold start before asking the questionnaire, then stay on the named follow-up tools (`consumer_intake_issues`, `consumer_intake_patch`, `umbrella_consumer_select`, ...). It also states a clear when-not ('Coverage Cat will not resume or expose a prior consumer umbrella draft based on email alone') and the sandbox rehearsal path.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
umbrella_consumer_selectUmbrella consumer offer selectADestructiveIdempotentInspect
Continue the consumer-prefill umbrella flow after quotes are ready. Reuse uid and the latest intake_access_token from the previous successful Coverage Cat response on each follow-up. MCP 2026-07-28 is stateless and requires that token. Legacy MCP hosts may also preserve hidden shopper session authorization. Keep tokens private and stay on this same MCP follow-up tool. Stay on the same consumer-operated MCP subset, use the returned selection_token, collect the real user's consumer-report authorization for insurance underwriting here, and let Coverage Cat enter the normal post-choose workflow without switching to delegated tools. A selected Monoline offer also requires the separate returned MVR authorization; show its full text and source URL and collect both receipts in the same turn. If the quote payload exposed selection_guidance.same_reply_requirements for the chosen offer, send those answers under intake on this first select call. If Coverage Cat returns a consent-required response with a bind-stage next_question, ask for all returned authorizations and details together, then retry this same tool with the receipts and intake.
| Name | Required | Description | Default |
|---|---|---|---|
| uid | Yes | Coverage Cat intake uid for the existing authorized intake or returned by `umbrella_consumer_prefill` and echoed on every follow-up response. Reuse it for each follow-up call on the same application. | |
| intake | No | Bind-stage answers for the current next_question, or the chosen offer's selection_guidance.same_reply_requirements, keyed by the field names Coverage Cat asked for. Send them when Coverage Cat asked for consent and bind details in the same shopper-facing turn. | |
| credit_consent | No | The real user's response to Coverage Cat's current consumer-report authorization for insurance underwriting, collected only after Coverage Cat returns the disclosure. | |
| idempotency_key | No | Key you generate to identify one logical umbrella_consumer_select request, so a retry cannot apply it twice. After a timeout or transport failure, retry with the same key and identical arguments to get the original result back; Coverage Cat keeps that result for 24 hours and rejects different arguments sent under a used key. | |
| selection_token | Yes | selection_token of the shopper's chosen offer from `offers[]` in the latest quoted follow-up response. | |
| um_uim_election | No | The shopper's choice to include or decline the offer's $1M excess UM/UIM option, when they make it in the same selection reply. | |
| intake_access_token | No | Send the latest intake_access_token from the previous successful Coverage Cat response on each follow-up. Required for stateless MCP 2026-07-28 requests; also accepted by legacy hosts. Keep it private and never show it to the shopper. | |
| selection_confirmed | Yes | Attests that the shopper explicitly picked the offer named by selection_token in chat, rather than the agent choosing for them. | |
| monoline_mvr_consent | No | The real user's response to the selected Monoline offer's MVR and consumer-report authorization, after the complete returned carrier-specific disclosure and source URL are shown. |
Output Schema
| Name | Required | Description |
|---|---|---|
| uid | Yes | Coverage Cat intake uid for the current handoff. |
| line | No | |
| offers | No | |
| policy | No | |
| review | No | Structured review card or selected-offer review block. |
| schema | No | Supplemental schema hints for homeowners review payloads. |
| status | Yes | |
| sandbox | No | True when Coverage Cat is returning consumer sandbox test data rather than a live shopper workflow. |
| support | No | |
| uploaded | No | |
| documents | No | |
| expires_at | No | When the current consumer handoff expires. |
| offers_url | No | Coverage Cat browser URL for the selected offer or offer-tracking page. |
| payment_ui | No | |
| next_action | No | A structured hint for the next allowed tool or endpoint action. |
| payment_url | No | Coverage Cat browser URL for secure payment fallback. |
| post_choose | No | Structured post-choose state after a quoted umbrella offer is selected. |
| conversation | No | |
| review_items | No | |
| review_token | No | Opaque review token for delegated review-style submit paths. |
| verification | No | |
| detail_status | No | |
| known_summary | No | Structured facts Coverage Cat can safely summarize at this stage. |
| next_question | No | The current shopper-owned question bundle or bind-stage question. |
| offer_summary | No | |
| payment_setup | No | |
| preview_token | No | Opaque bind-preview token for the next homeowners bind confirmation. |
| missing_fields | No | Structured missing-value hints for homeowners pre-submit review. |
| payment_status | No | |
| pending_fields | No | Structured missing-value hints for umbrella pre-submit review. |
| selected_offer | No | |
| uploaded_count | No | |
| field_estimates | No | |
| service_preview | No | |
| service_request | No | |
| purchase_preview | No | |
| response_summary | No | |
| review_estimates | No | |
| service_requests | No | |
| agent_instructions | No | |
| poll_after_seconds | No | |
| selection_guidance | No | Guidance for completing an offer choice in one shopper-facing reply. |
| compare_details_url | No | Coverage Cat browser URL for compare-details follow-up. |
| intake_access_token | No | Short-lived follow-up bearer. On REST, send it back as Authorization for the next `/api/intake/{uid}` call. On MCP, retry the same follow-up tool with this token only when your host cannot preserve Coverage Cat's hidden shopper session. Never display it to the shopper. |
| notification_channel | No | |
| user_action_required | No | |
| application_submitted | No | |
| required_upload_types | No | |
| credit_consent_question | No | |
| credit_consent_disclosure | No | Versioned canonical text that must be shown verbatim; echo version and text_hash with the user's response. |
| payment_collection_supported | No | |
| monoline_mvr_consent_question | No | |
| contact_preferences_disclosures | No | Optional versioned service-contact disclosures for the phone number on file; no marketing consent and no purchase requirement. |
| monoline_mvr_consent_disclosure | No | Versioned Monoline-specific text that must be shown verbatim with its source URL; echo version and text_hash with the user's response. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true, and the description supplies real added context: stateless MCP 2026-07-28 requires the token on every follow-up, tokens must stay private, legacy hosts may hold hidden session authorization, and consent must be personally collected before submitting. It still never explains what the destructive side effect actually commits (e.g., that the application moves into a post-choose/bind track or whether the choice is revocable), which is the one behavioral fact an agent most needs before calling a destructive tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The rules are operational rather than filler, but the paragraph is dense and repeats itself ("keep tokens private and stay on this same MCP follow-up tool" vs. the closing clause about not switching to delegated tools), and consent/privacy instructions are interleaved with flow control instead of grouped. A reader must parse several sentences before reaching the one action the tool performs.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a nine-parameter destructive tool with nested consent objects and an output schema, the description covers the full lifecycle: preconditions, token handling, per-offer consent branches, the Monoline MVR disclosure requirement, and the retry path after a consent-required response. Return values are handled by the output schema, so nothing an agent needs in order to call it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline would be 3, but the description adds cross-parameter conditional meaning the schema cannot express: when intake must carry selection_guidance.same_reply_requirements, when monoline_mvr_consent is separately required versus credit_consent, and when to resend the same idempotency_key after a failure. That is genuine semantics beyond field-level descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The opening sentence places the tool in the flow ("continue the consumer-prefill umbrella flow after quotes are ready") and the body makes the action clear through selection_token and selection_confirmed, so an agent can tell it apart from umbrella_consumer_bind, umbrella_consumer_attach and umbrella_consumer_payment. It never states the verb/resource as plainly as "select the shopper's chosen umbrella offer," so the core action must be inferred from the parameters rather than read in the first clause.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives concrete preconditions (quotes ready, reuse uid and intake_access_token), conditional branches (selection_guidance.same_reply_requirements on the first select call, Monoline offers requiring the separate MVR authorization, consent-required responses requiring a retry with receipts), and a clear exclusion (do not switch to delegated tools). It does not name the specific sibling tools for downstream steps, so routing is implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
umbrella_consumer_servicePreview or open umbrella service requestADestructiveIdempotentInspect
Preview or open a cancellation, refund, or support request for a consumer umbrella policy. Reuse uid and the latest intake_access_token from the previous successful Coverage Cat response on each follow-up. MCP 2026-07-28 is stateless and requires that token. Legacy MCP hosts may also preserve hidden shopper session authorization. Keep tokens private and stay on this same MCP follow-up tool. Stay on the same consumer-operated MCP subset after bind. Preview the consequences first, then send confirm_request: true only after the shopper approves opening the request. Do not describe a cancellation, refund, or support issue as completed until Coverage Cat confirms the final outcome.
| Name | Required | Description | Default |
|---|---|---|---|
| uid | Yes | Coverage Cat intake uid for the current shopper session. | |
| reason | Yes | Short shopper-approved reason for the request. | |
| details | No | Shopper-approved context beyond the short reason, such as the specifics of a billing dispute, recorded on the request and its preview. | |
| request_type | Yes | What the shopper wants done after purchase. `policy_cancellation` asks the carrier to end the policy on requested_effective_date; `refund_request` asks the carrier or billing provider to review a refund or outstanding balance without changing coverage; `support_case` opens a general support case for anything else. | |
| confirm_request | No | Whether to open the request now. false, the default, returns a preview of the consequences without opening anything; send true only after the shopper approves that preview. | |
| idempotency_key | No | Key you generate to identify one logical umbrella_consumer_service request, so a retry cannot apply it twice. After a timeout or transport failure, retry with the same key and identical arguments to get the original result back; Coverage Cat keeps that result for 24 hours and rejects different arguments sent under a used key. | |
| intake_access_token | No | Send the latest intake_access_token from the previous successful Coverage Cat response on each follow-up. Required for stateless MCP 2026-07-28 requests; also accepted by legacy hosts. Keep it private and never show it to the shopper. | |
| requested_effective_date | No | Day the shopper wants a cancellation to take effect; used only for policy_cancellation. It is a request: the carrier reviews it and may set a different date. |
Output Schema
| Name | Required | Description |
|---|---|---|
| uid | Yes | Coverage Cat intake uid for the current handoff. |
| line | No | |
| offers | No | |
| policy | No | |
| review | No | Structured review card or selected-offer review block. |
| schema | No | Supplemental schema hints for homeowners review payloads. |
| status | Yes | |
| sandbox | No | True when Coverage Cat is returning consumer sandbox test data rather than a live shopper workflow. |
| support | No | |
| uploaded | No | |
| documents | No | |
| expires_at | No | When the current consumer handoff expires. |
| offers_url | No | Coverage Cat browser URL for the selected offer or offer-tracking page. |
| payment_ui | No | |
| next_action | No | A structured hint for the next allowed tool or endpoint action. |
| payment_url | No | Coverage Cat browser URL for secure payment fallback. |
| post_choose | No | Structured post-choose state after a quoted umbrella offer is selected. |
| conversation | No | |
| review_items | No | |
| review_token | No | Opaque review token for delegated review-style submit paths. |
| verification | No | |
| detail_status | No | |
| known_summary | No | Structured facts Coverage Cat can safely summarize at this stage. |
| next_question | No | The current shopper-owned question bundle or bind-stage question. |
| offer_summary | No | |
| payment_setup | No | |
| preview_token | No | Opaque bind-preview token for the next homeowners bind confirmation. |
| missing_fields | No | Structured missing-value hints for homeowners pre-submit review. |
| payment_status | No | |
| pending_fields | No | Structured missing-value hints for umbrella pre-submit review. |
| selected_offer | No | |
| uploaded_count | No | |
| field_estimates | No | |
| service_preview | No | |
| service_request | No | |
| purchase_preview | No | |
| response_summary | No | |
| review_estimates | No | |
| service_requests | No | |
| agent_instructions | No | |
| poll_after_seconds | No | |
| selection_guidance | No | Guidance for completing an offer choice in one shopper-facing reply. |
| compare_details_url | No | Coverage Cat browser URL for compare-details follow-up. |
| intake_access_token | No | Short-lived follow-up bearer. On REST, send it back as Authorization for the next `/api/intake/{uid}` call. On MCP, retry the same follow-up tool with this token only when your host cannot preserve Coverage Cat's hidden shopper session. Never display it to the shopper. |
| notification_channel | No | |
| user_action_required | No | |
| application_submitted | No | |
| required_upload_types | No | |
| credit_consent_question | No | |
| credit_consent_disclosure | No | Versioned canonical text that must be shown verbatim; echo version and text_hash with the user's response. |
| payment_collection_supported | No | |
| monoline_mvr_consent_question | No | |
| contact_preferences_disclosures | No | Optional versioned service-contact disclosures for the phone number on file; no marketing consent and no purchase requirement. |
| monoline_mvr_consent_disclosure | No | Versioned Monoline-specific text that must be shown verbatim with its source URL; echo version and text_hash with the user's response. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, idempotentHint=true, and openWorldHint=false, so the safety profile is largely covered. The description adds genuinely useful context beyond that: the stateless MCP 2026-07-28 token requirement, token privacy handling, and the rule not to describe a request as completed until Coverage Cat confirms the outcome. It doesn't spell out precisely what the destructive action affects (e.g. coverage ending), leaving a small gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The critical guidance (preview before confirm, token reuse) is front-loaded, which is good. However, the middle is cluttered with overlapping directives: 'Keep tokens private and stay on this same MCP follow-up tool' is immediately followed by 'Stay on the same consumer-operated MCP subset after bind,' which adds little and is ambiguous.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present and rich annotations, the description need not explain return values, and it covers the stateful follow-up flow, approval gate, and completion-confirmation rule. What is missing is any note on what actually happens to the underlying policy after a cancellation is opened, which matters for a destructive tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and every parameter including confirm_request, idempotency_key, and requested_effective_date is documented in the schema itself. The description's parameter guidance (reuse uid and intake_access_token, confirm after approval) largely restates what the schema already says. Baseline 3 is appropriate when the schema carries this much detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb+resource: preview or open a cancellation, refund, or support request for a consumer umbrella policy. That is clearly distinct from siblings like umbrella_consumer_policy, umbrella_consumer_bind, and umbrella_consumer_payment, which handle other stages. It doesn't explicitly name an alternative tool, so it stops just short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives an explicit two-step workflow: preview first, then send confirm_request: true only after the shopper approves the preview. It also states the follow-up sequencing (reuse uid and the latest intake_access_token from the previous successful response) and tells the agent to stay on this follow-up tool rather than drifting to another one.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
umbrella_limit_plannerUmbrella coverage limit plannerARead-onlyIdempotentInspect
Compare how much umbrella coverage to consider from net worth, independently confirmed protected assets, an optional income allowance, and the lowest applicable underlying liability limit. Returns the arithmetic target, additional limit needed, and $0/$1M/$2M/$3M/$5M/$10M scenarios. This is planning, not a quote or a determination of legally exposed assets.
| Name | Required | Description | Default |
|---|---|---|---|
| net_worth | Yes | Assets minus debts, including property equity. Use 0 if negative. Whole US dollars. | |
| income_years | No | Choose 0 for an assets-only scenario; not a garnishment estimate. | |
| annual_income | No | Income included in your optional planning allowance. Whole US dollars. | |
| protected_assets | No | Only amounts included in net worth whose legal protection you have confirmed. Whole US dollars. | |
| underlying_limit | Yes | Use the lowest applicable auto, home, or rental liability limit. For a single injured person under split auto limits, use the per-person limit. Do not add separate policies together. Whole US dollars. |
Output Schema
| Name | Required | Description |
|---|---|---|
| inputs | Yes | Normalized caller inputs including defaults; unverified optional limits remain null. |
| sources | Yes | Primary background sources; premiums and required limits still come from the caller. |
| scenarios | Yes | Illustrations for $0, $1M, $2M, $3M, $5M, and $10M of umbrella coverage. |
| disclaimer | Yes | Limits of this planning result and the need to verify policy terms and legal protections. |
| assumptions | Yes | Assumptions and exclusions needed to interpret the calculation. |
| estimate_unit | Yes | Currency for monetary inputs and outputs; year/count fields retain their named units. |
| assets_included | Yes | Net worth minus the caller's confirmed protected-assets allowance, in USD. |
| planning_target | Yes | Assets included plus the optional income allowance, in USD. |
| income_allowance | Yes | Annual income multiplied by the chosen income years, in USD; not a garnishment forecast. |
| methodology_version | Yes | Version date of the calculator's arithmetic and assumptions. |
| additional_limit_needed | Yes | Planning target minus the applicable underlying limit, floored at zero, in USD. |
| specialist_review_needed | Yes | True when none of the illustrated umbrella limits meets the arithmetic target. |
| first_illustrated_limit_meeting_target | Yes | First listed scenario meeting the arithmetic target, not a coverage recommendation. Null when the target exceeds every scenario. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (read-only, idempotent, non-destructive, closed-world), so the bar is lower. The description adds real context beyond them: it discloses the output contents (arithmetic target, additional limit needed, and the $0–$10M scenario ladder) and attaches an explicit disclaimer that the result is not a quote or a legal determination — a behavioral trait no annotation conveys.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with the calculation inputs before the return values and the scope caveat. Every sentence earns its place; the enumerated scenario ladder is slightly verbose but informative about output shape.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists and the description still summarizes returns, annotations cover safety, and parameters are fully documented. The remaining gap is the absence of any routing guidance relative to umbrella_calculator and umbrella_underlying_limit_check in a crowded umbrella namespace.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with five well-documented parameters, so the schema already carries the semantics. The description restates the input categories and hints at their relationships (protected assets must be independently confirmed, income allowance optional, underlying limit is the lowest applicable), but adds nothing the schema doesn't already say more precisely.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb-and-resource pair: comparing how much umbrella coverage to consider from named inputs (net worth, protected assets, income allowance, underlying limit). The scope boundary ('planning, not a quote or a determination of legally exposed assets') further sharpens what the tool is. It does not, however, name or contrast with close siblings such as umbrella_calculator or umbrella_underlying_limit_check, so the agent must infer the split.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for planning-level comparison and explicitly excludes quoting and legal exposure determination, which helps an agent know what not to expect. But it never states conditions that select it over umbrella_calculator or umbrella_underlying_limit_check, leaving the sibling choice to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
umbrella_underlying_limit_checkUmbrella underlying limit checkerARead-onlyIdempotentInspect
Check an auto, homeowners, renters, or rental-property policy against the underlying liability requirements stated in a specific umbrella quote. Supply requirements from that quote, not assumed carrier minimums. Missing current limits stay unknown. Returns each required increase separately; it does not determine claim payouts or eligibility.
| Name | Required | Description | Default |
|---|---|---|---|
| policy_type | Yes | Choose home for homeowners, renters, or rental-property liability; auto_csl for combined single limit; auto_split for separate bodily-injury and property-damage limits. auto_split requires required_per_person, required_per_accident, and required_property_damage; home and auto_csl require required_limit. Send only fields for the chosen structure. | |
| current_limit | No | Read from your current declarations. Omit or use null if unknown; enter 0 only when confirmed. Whole US dollars. | |
| required_limit | No | Read the positive required limit from the specific umbrella quote or policy. Whole US dollars. | |
| current_per_person | No | Read from your current declarations. Omit or use null if unknown; enter 0 only when confirmed. Whole US dollars. | |
| required_per_person | No | Read the positive required limit from the specific umbrella quote or policy. Whole US dollars. | |
| current_per_accident | No | Read from your current declarations. Omit or use null if unknown; enter 0 only when confirmed. Whole US dollars. Must be at least the corresponding per-person limit. | |
| required_per_accident | No | Read the positive required limit from the specific umbrella quote or policy. Whole US dollars. Must be at least the corresponding per-person limit. | |
| current_property_damage | No | Read from your current declarations. Omit or use null if unknown; enter 0 only when confirmed. Whole US dollars. | |
| required_property_damage | No | Read the positive required limit from the specific umbrella quote or policy. Whole US dollars. |
Output Schema
| Name | Required | Description |
|---|---|---|
| checks | Yes | Separate comparisons for each applicable component; do not add split auto limits together. |
| inputs | Yes | Normalized caller inputs including defaults; unverified optional limits remain null. |
| status | Yes | A confirmed shortfall takes priority; otherwise unknown current limits need verification, or every entered requirement is met. |
| sources | Yes | Primary background sources; premiums and required limits still come from the caller. |
| disclaimer | Yes | Limits of this planning result and the need to verify policy terms and legal protections. |
| assumptions | Yes | Assumptions and exclusions needed to interpret the calculation. |
| estimate_unit | Yes | Currency for monetary inputs and outputs; year/count fields retain their named units. |
| methodology_version | Yes | Version date of the calculator's arithmetic and assumptions. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, idempotent, closed-world, non-destructive, so the safety bar is low. The description still adds real behavioral context: unknown limits are not filled in or guessed, each required increase is returned separately, and it explicitly disclaims claim-payout and eligibility determinations — scoping the output beyond what annotations convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four short sentences, front-loaded with the action and scope, then the input constraint, then the output caveat. Dense and nearly waste-free; only slight overlap between the required-from-quote instruction and the identical wording already in the schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists so return values needn't be described, and annotations cover the safety profile. For a 9-parameter, conditionally-structured tool the description supplies the key operational caveats (quote-sourced requirements, unknown stays unknown, per-increase results), though it could have noted the structure-dependent required fields it only gestures at.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, including the enum explanation and the null-vs-zero distinction, so the schema already carries the semantics. The description reinforces the 'from the quote, not assumed minimums' intent but adds no format or structural detail beyond that, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (check) and resource (an underlying policy against a specific umbrella quote's liability requirements), and enumerates the covered policy types. It does not name a sibling like umbrella_limit_planner or umbrella_calculator, so the agent must infer the boundary from the 'requirements from that quote' framing rather than an explicit contrast.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives input-sourcing guidance ('supply requirements from that quote, not assumed carrier minimums') and a data-handling rule ('missing current limits stay unknown'), which shape how to call it. It gives no explicit when-to-use-this-instead-of signal against the several umbrella siblings, leaving the routing inference to the agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
14 tool updates
- Changed
consumer_intake_issues10 fields changed- added
Output schema / properties / contact_preferences_disclosures / properties / service_call / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / contact_preferences_disclosures / properties / service_call / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - added
Output schema / properties / contact_preferences_disclosures / properties / service_sms / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / contact_preferences_disclosures / properties / service_sms / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - added
Output schema / properties / credit_consent_disclosure / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / credit_consent_disclosure / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - changed
Output schema / properties / detail_status / enumPrevious value: -[ - "abandoned", - "blocked", - "bound", - "cancelled", - "chosen", - "credit_consent_pending", - "credit_consent_required", - "dev_success", - "documents_needed", - "documents_pending_review", - "email_sent", - "in_review", - "ineligible", - "info_requested", - "needs_more_info", - "needs_more_info_to_bind", - "no_policy", - "no_chosen_offer", - "no_quotes", - "no_selection", - "ok", - "payment_collection_ready", - "payment_needed", - "pending", - "pending_quotes", - "queued", - "quote_rate_limited", - "quoted", - "ready_for_review", - "ready_for_submission", - "ready_to_finalize", - "review_pending", - "service_preview", - "service_requested", - "sandbox_unsupported", - "stale_selection", - "verifying_documents", - "waiting_on_carrier", - "waiting_on_documents", - "waiting_on_payment" -]New value: +[ + "abandoned", + "blocked", + "bound", + "cancelled", + "chosen", + "credit_consent_pending", + "credit_consent_required", + "monoline_mvr_consent_required", + "dev_success", + "documents_needed", + "documents_pending_review", + "email_sent", + "in_review", + "ineligible", + "info_requested", + "needs_more_info", + "needs_more_info_to_bind", + "no_policy", + "no_chosen_offer", + "no_quotes", + "no_selection", + "ok", + "payment_collection_ready", + "payment_needed", + "pending", + "pending_quotes", + "queued", + "quote_rate_limited", + "quoted", + "ready_for_review", + "ready_for_submission", + "ready_to_finalize", + "review_pending", + "service_preview", + "service_requested", + "sandbox_unsupported", + "stale_selection", + "verifying_documents", + "waiting_on_carrier", + "waiting_on_documents", + "waiting_on_payment" +] - added
Output schema / properties / monoline_mvr_consent_disclosureAdded value: +{ + "additionalProperties": false, + "description": "Versioned Monoline-specific text that must be shown verbatim with its source URL; echo version and text_hash with the user's response.", + "properties": { + "kind": { + "const": "monoline_mvr", + "type": "string" + }, + "source_updated_at": { + "format": "date", + "type": "string" + }, + "source_url": { + "format": "uri", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash", + "source_url", + "source_updated_at" + ], + "type": "object" +} - added
Output schema / properties / monoline_mvr_consent_questionAdded value: +{ + "type": "string" +} - changed
Output schema / properties / status / enumPrevious value: -[ - "abandoned", - "blocked", - "bound", - "cancelled", - "chosen", - "credit_consent_pending", - "credit_consent_required", - "dev_success", - "documents_needed", - "documents_pending_review", - "email_sent", - "in_review", - "ineligible", - "info_requested", - "needs_more_info", - "needs_more_info_to_bind", - "no_policy", - "no_chosen_offer", - "no_quotes", - "no_selection", - "ok", - "payment_collection_ready", - "payment_needed", - "pending", - "pending_quotes", - "queued", - "quote_rate_limited", - "quoted", - "ready_for_review", - "ready_for_submission", - "ready_to_finalize", - "review_pending", - "service_preview", - "service_requested", - "sandbox_unsupported", - "stale_selection", - "verifying_documents", - "waiting_on_carrier", - "waiting_on_documents", - "waiting_on_payment" -]New value: +[ + "abandoned", + "blocked", + "bound", + "cancelled", + "chosen", + "credit_consent_pending", + "credit_consent_required", + "monoline_mvr_consent_required", + "dev_success", + "documents_needed", + "documents_pending_review", + "email_sent", + "in_review", + "ineligible", + "info_requested", + "needs_more_info", + "needs_more_info_to_bind", + "no_policy", + "no_chosen_offer", + "no_quotes", + "no_selection", + "ok", + "payment_collection_ready", + "payment_needed", + "pending", + "pending_quotes", + "queued", + "quote_rate_limited", + "quoted", + "ready_for_review", + "ready_for_submission", + "ready_to_finalize", + "review_pending", + "service_preview", + "service_requested", + "sandbox_unsupported", + "stale_selection", + "verifying_documents", + "waiting_on_carrier", + "waiting_on_documents", + "waiting_on_payment" +]
- Changed
consumer_intake_patch10 fields changed- added
Output schema / properties / contact_preferences_disclosures / properties / service_call / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / contact_preferences_disclosures / properties / service_call / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - added
Output schema / properties / contact_preferences_disclosures / properties / service_sms / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / contact_preferences_disclosures / properties / service_sms / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - added
Output schema / properties / credit_consent_disclosure / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / credit_consent_disclosure / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - changed
Output schema / properties / detail_status / enumPrevious value: -[ - "abandoned", - "blocked", - "bound", - "cancelled", - "chosen", - "credit_consent_pending", - "credit_consent_required", - "dev_success", - "documents_needed", - "documents_pending_review", - "email_sent", - "in_review", - "ineligible", - "info_requested", - "needs_more_info", - "needs_more_info_to_bind", - "no_policy", - "no_chosen_offer", - "no_quotes", - "no_selection", - "ok", - "payment_collection_ready", - "payment_needed", - "pending", - "pending_quotes", - "queued", - "quote_rate_limited", - "quoted", - "ready_for_review", - "ready_for_submission", - "ready_to_finalize", - "review_pending", - "service_preview", - "service_requested", - "sandbox_unsupported", - "stale_selection", - "verifying_documents", - "waiting_on_carrier", - "waiting_on_documents", - "waiting_on_payment" -]New value: +[ + "abandoned", + "blocked", + "bound", + "cancelled", + "chosen", + "credit_consent_pending", + "credit_consent_required", + "monoline_mvr_consent_required", + "dev_success", + "documents_needed", + "documents_pending_review", + "email_sent", + "in_review", + "ineligible", + "info_requested", + "needs_more_info", + "needs_more_info_to_bind", + "no_policy", + "no_chosen_offer", + "no_quotes", + "no_selection", + "ok", + "payment_collection_ready", + "payment_needed", + "pending", + "pending_quotes", + "queued", + "quote_rate_limited", + "quoted", + "ready_for_review", + "ready_for_submission", + "ready_to_finalize", + "review_pending", + "service_preview", + "service_requested", + "sandbox_unsupported", + "stale_selection", + "verifying_documents", + "waiting_on_carrier", + "waiting_on_documents", + "waiting_on_payment" +] - added
Output schema / properties / monoline_mvr_consent_disclosureAdded value: +{ + "additionalProperties": false, + "description": "Versioned Monoline-specific text that must be shown verbatim with its source URL; echo version and text_hash with the user's response.", + "properties": { + "kind": { + "const": "monoline_mvr", + "type": "string" + }, + "source_updated_at": { + "format": "date", + "type": "string" + }, + "source_url": { + "format": "uri", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash", + "source_url", + "source_updated_at" + ], + "type": "object" +} - added
Output schema / properties / monoline_mvr_consent_questionAdded value: +{ + "type": "string" +} - changed
Output schema / properties / status / enumPrevious value: -[ - "abandoned", - "blocked", - "bound", - "cancelled", - "chosen", - "credit_consent_pending", - "credit_consent_required", - "dev_success", - "documents_needed", - "documents_pending_review", - "email_sent", - "in_review", - "ineligible", - "info_requested", - "needs_more_info", - "needs_more_info_to_bind", - "no_policy", - "no_chosen_offer", - "no_quotes", - "no_selection", - "ok", - "payment_collection_ready", - "payment_needed", - "pending", - "pending_quotes", - "queued", - "quote_rate_limited", - "quoted", - "ready_for_review", - "ready_for_submission", - "ready_to_finalize", - "review_pending", - "service_preview", - "service_requested", - "sandbox_unsupported", - "stale_selection", - "verifying_documents", - "waiting_on_carrier", - "waiting_on_documents", - "waiting_on_payment" -]New value: +[ + "abandoned", + "blocked", + "bound", + "cancelled", + "chosen", + "credit_consent_pending", + "credit_consent_required", + "monoline_mvr_consent_required", + "dev_success", + "documents_needed", + "documents_pending_review", + "email_sent", + "in_review", + "ineligible", + "info_requested", + "needs_more_info", + "needs_more_info_to_bind", + "no_policy", + "no_chosen_offer", + "no_quotes", + "no_selection", + "ok", + "payment_collection_ready", + "payment_needed", + "pending", + "pending_quotes", + "queued", + "quote_rate_limited", + "quoted", + "ready_for_review", + "ready_for_submission", + "ready_to_finalize", + "review_pending", + "service_preview", + "service_requested", + "sandbox_unsupported", + "stale_selection", + "verifying_documents", + "waiting_on_carrier", + "waiting_on_documents", + "waiting_on_payment" +]
- Changed
consumer_intake_verify_email10 fields changed- added
Output schema / properties / contact_preferences_disclosures / properties / service_call / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / contact_preferences_disclosures / properties / service_call / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - added
Output schema / properties / contact_preferences_disclosures / properties / service_sms / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / contact_preferences_disclosures / properties / service_sms / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - added
Output schema / properties / credit_consent_disclosure / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / credit_consent_disclosure / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - changed
Output schema / properties / detail_status / enumPrevious value: -[ - "abandoned", - "blocked", - "bound", - "cancelled", - "chosen", - "credit_consent_pending", - "credit_consent_required", - "dev_success", - "documents_needed", - "documents_pending_review", - "email_sent", - "in_review", - "ineligible", - "info_requested", - "needs_more_info", - "needs_more_info_to_bind", - "no_policy", - "no_chosen_offer", - "no_quotes", - "no_selection", - "ok", - "payment_collection_ready", - "payment_needed", - "pending", - "pending_quotes", - "queued", - "quote_rate_limited", - "quoted", - "ready_for_review", - "ready_for_submission", - "ready_to_finalize", - "review_pending", - "service_preview", - "service_requested", - "sandbox_unsupported", - "stale_selection", - "verifying_documents", - "waiting_on_carrier", - "waiting_on_documents", - "waiting_on_payment" -]New value: +[ + "abandoned", + "blocked", + "bound", + "cancelled", + "chosen", + "credit_consent_pending", + "credit_consent_required", + "monoline_mvr_consent_required", + "dev_success", + "documents_needed", + "documents_pending_review", + "email_sent", + "in_review", + "ineligible", + "info_requested", + "needs_more_info", + "needs_more_info_to_bind", + "no_policy", + "no_chosen_offer", + "no_quotes", + "no_selection", + "ok", + "payment_collection_ready", + "payment_needed", + "pending", + "pending_quotes", + "queued", + "quote_rate_limited", + "quoted", + "ready_for_review", + "ready_for_submission", + "ready_to_finalize", + "review_pending", + "service_preview", + "service_requested", + "sandbox_unsupported", + "stale_selection", + "verifying_documents", + "waiting_on_carrier", + "waiting_on_documents", + "waiting_on_payment" +] - added
Output schema / properties / monoline_mvr_consent_disclosureAdded value: +{ + "additionalProperties": false, + "description": "Versioned Monoline-specific text that must be shown verbatim with its source URL; echo version and text_hash with the user's response.", + "properties": { + "kind": { + "const": "monoline_mvr", + "type": "string" + }, + "source_updated_at": { + "format": "date", + "type": "string" + }, + "source_url": { + "format": "uri", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash", + "source_url", + "source_updated_at" + ], + "type": "object" +} - added
Output schema / properties / monoline_mvr_consent_questionAdded value: +{ + "type": "string" +} - changed
Output schema / properties / status / enumPrevious value: -[ - "abandoned", - "blocked", - "bound", - "cancelled", - "chosen", - "credit_consent_pending", - "credit_consent_required", - "dev_success", - "documents_needed", - "documents_pending_review", - "email_sent", - "in_review", - "ineligible", - "info_requested", - "needs_more_info", - "needs_more_info_to_bind", - "no_policy", - "no_chosen_offer", - "no_quotes", - "no_selection", - "ok", - "payment_collection_ready", - "payment_needed", - "pending", - "pending_quotes", - "queued", - "quote_rate_limited", - "quoted", - "ready_for_review", - "ready_for_submission", - "ready_to_finalize", - "review_pending", - "service_preview", - "service_requested", - "sandbox_unsupported", - "stale_selection", - "verifying_documents", - "waiting_on_carrier", - "waiting_on_documents", - "waiting_on_payment" -]New value: +[ + "abandoned", + "blocked", + "bound", + "cancelled", + "chosen", + "credit_consent_pending", + "credit_consent_required", + "monoline_mvr_consent_required", + "dev_success", + "documents_needed", + "documents_pending_review", + "email_sent", + "in_review", + "ineligible", + "info_requested", + "needs_more_info", + "needs_more_info_to_bind", + "no_policy", + "no_chosen_offer", + "no_quotes", + "no_selection", + "ok", + "payment_collection_ready", + "payment_needed", + "pending", + "pending_quotes", + "queued", + "quote_rate_limited", + "quoted", + "ready_for_review", + "ready_for_submission", + "ready_to_finalize", + "review_pending", + "service_preview", + "service_requested", + "sandbox_unsupported", + "stale_selection", + "verifying_documents", + "waiting_on_carrier", + "waiting_on_documents", + "waiting_on_payment" +]
- Removed
employee_benefits_planner - Removed
employee_benefits_read_documents - Changed
homeowners_consumer_policy10 fields changed- added
Output schema / properties / contact_preferences_disclosures / properties / service_call / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / contact_preferences_disclosures / properties / service_call / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - added
Output schema / properties / contact_preferences_disclosures / properties / service_sms / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / contact_preferences_disclosures / properties / service_sms / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - added
Output schema / properties / credit_consent_disclosure / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / credit_consent_disclosure / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - changed
Output schema / properties / detail_status / enumPrevious value: -[ - "abandoned", - "blocked", - "bound", - "cancelled", - "chosen", - "credit_consent_pending", - "credit_consent_required", - "dev_success", - "documents_needed", - "documents_pending_review", - "email_sent", - "in_review", - "ineligible", - "info_requested", - "needs_more_info", - "needs_more_info_to_bind", - "no_policy", - "no_chosen_offer", - "no_quotes", - "no_selection", - "ok", - "payment_collection_ready", - "payment_needed", - "pending", - "pending_quotes", - "queued", - "quote_rate_limited", - "quoted", - "ready_for_review", - "ready_for_submission", - "ready_to_finalize", - "review_pending", - "service_preview", - "service_requested", - "sandbox_unsupported", - "stale_selection", - "verifying_documents", - "waiting_on_carrier", - "waiting_on_documents", - "waiting_on_payment" -]New value: +[ + "abandoned", + "blocked", + "bound", + "cancelled", + "chosen", + "credit_consent_pending", + "credit_consent_required", + "monoline_mvr_consent_required", + "dev_success", + "documents_needed", + "documents_pending_review", + "email_sent", + "in_review", + "ineligible", + "info_requested", + "needs_more_info", + "needs_more_info_to_bind", + "no_policy", + "no_chosen_offer", + "no_quotes", + "no_selection", + "ok", + "payment_collection_ready", + "payment_needed", + "pending", + "pending_quotes", + "queued", + "quote_rate_limited", + "quoted", + "ready_for_review", + "ready_for_submission", + "ready_to_finalize", + "review_pending", + "service_preview", + "service_requested", + "sandbox_unsupported", + "stale_selection", + "verifying_documents", + "waiting_on_carrier", + "waiting_on_documents", + "waiting_on_payment" +] - added
Output schema / properties / monoline_mvr_consent_disclosureAdded value: +{ + "additionalProperties": false, + "description": "Versioned Monoline-specific text that must be shown verbatim with its source URL; echo version and text_hash with the user's response.", + "properties": { + "kind": { + "const": "monoline_mvr", + "type": "string" + }, + "source_updated_at": { + "format": "date", + "type": "string" + }, + "source_url": { + "format": "uri", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash", + "source_url", + "source_updated_at" + ], + "type": "object" +} - added
Output schema / properties / monoline_mvr_consent_questionAdded value: +{ + "type": "string" +} - changed
Output schema / properties / status / enumPrevious value: -[ - "abandoned", - "blocked", - "bound", - "cancelled", - "chosen", - "credit_consent_pending", - "credit_consent_required", - "dev_success", - "documents_needed", - "documents_pending_review", - "email_sent", - "in_review", - "ineligible", - "info_requested", - "needs_more_info", - "needs_more_info_to_bind", - "no_policy", - "no_chosen_offer", - "no_quotes", - "no_selection", - "ok", - "payment_collection_ready", - "payment_needed", - "pending", - "pending_quotes", - "queued", - "quote_rate_limited", - "quoted", - "ready_for_review", - "ready_for_submission", - "ready_to_finalize", - "review_pending", - "service_preview", - "service_requested", - "sandbox_unsupported", - "stale_selection", - "verifying_documents", - "waiting_on_carrier", - "waiting_on_documents", - "waiting_on_payment" -]New value: +[ + "abandoned", + "blocked", + "bound", + "cancelled", + "chosen", + "credit_consent_pending", + "credit_consent_required", + "monoline_mvr_consent_required", + "dev_success", + "documents_needed", + "documents_pending_review", + "email_sent", + "in_review", + "ineligible", + "info_requested", + "needs_more_info", + "needs_more_info_to_bind", + "no_policy", + "no_chosen_offer", + "no_quotes", + "no_selection", + "ok", + "payment_collection_ready", + "payment_needed", + "pending", + "pending_quotes", + "queued", + "quote_rate_limited", + "quoted", + "ready_for_review", + "ready_for_submission", + "ready_to_finalize", + "review_pending", + "service_preview", + "service_requested", + "sandbox_unsupported", + "stale_selection", + "verifying_documents", + "waiting_on_carrier", + "waiting_on_documents", + "waiting_on_payment" +]
- Changed
homeowners_consumer_service10 fields changed- added
Output schema / properties / contact_preferences_disclosures / properties / service_call / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / contact_preferences_disclosures / properties / service_call / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - added
Output schema / properties / contact_preferences_disclosures / properties / service_sms / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / contact_preferences_disclosures / properties / service_sms / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - added
Output schema / properties / credit_consent_disclosure / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / credit_consent_disclosure / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - changed
Output schema / properties / detail_status / enumPrevious value: -[ - "abandoned", - "blocked", - "bound", - "cancelled", - "chosen", - "credit_consent_pending", - "credit_consent_required", - "dev_success", - "documents_needed", - "documents_pending_review", - "email_sent", - "in_review", - "ineligible", - "info_requested", - "needs_more_info", - "needs_more_info_to_bind", - "no_policy", - "no_chosen_offer", - "no_quotes", - "no_selection", - "ok", - "payment_collection_ready", - "payment_needed", - "pending", - "pending_quotes", - "queued", - "quote_rate_limited", - "quoted", - "ready_for_review", - "ready_for_submission", - "ready_to_finalize", - "review_pending", - "service_preview", - "service_requested", - "sandbox_unsupported", - "stale_selection", - "verifying_documents", - "waiting_on_carrier", - "waiting_on_documents", - "waiting_on_payment" -]New value: +[ + "abandoned", + "blocked", + "bound", + "cancelled", + "chosen", + "credit_consent_pending", + "credit_consent_required", + "monoline_mvr_consent_required", + "dev_success", + "documents_needed", + "documents_pending_review", + "email_sent", + "in_review", + "ineligible", + "info_requested", + "needs_more_info", + "needs_more_info_to_bind", + "no_policy", + "no_chosen_offer", + "no_quotes", + "no_selection", + "ok", + "payment_collection_ready", + "payment_needed", + "pending", + "pending_quotes", + "queued", + "quote_rate_limited", + "quoted", + "ready_for_review", + "ready_for_submission", + "ready_to_finalize", + "review_pending", + "service_preview", + "service_requested", + "sandbox_unsupported", + "stale_selection", + "verifying_documents", + "waiting_on_carrier", + "waiting_on_documents", + "waiting_on_payment" +] - added
Output schema / properties / monoline_mvr_consent_disclosureAdded value: +{ + "additionalProperties": false, + "description": "Versioned Monoline-specific text that must be shown verbatim with its source URL; echo version and text_hash with the user's response.", + "properties": { + "kind": { + "const": "monoline_mvr", + "type": "string" + }, + "source_updated_at": { + "format": "date", + "type": "string" + }, + "source_url": { + "format": "uri", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash", + "source_url", + "source_updated_at" + ], + "type": "object" +} - added
Output schema / properties / monoline_mvr_consent_questionAdded value: +{ + "type": "string" +} - changed
Output schema / properties / status / enumPrevious value: -[ - "abandoned", - "blocked", - "bound", - "cancelled", - "chosen", - "credit_consent_pending", - "credit_consent_required", - "dev_success", - "documents_needed", - "documents_pending_review", - "email_sent", - "in_review", - "ineligible", - "info_requested", - "needs_more_info", - "needs_more_info_to_bind", - "no_policy", - "no_chosen_offer", - "no_quotes", - "no_selection", - "ok", - "payment_collection_ready", - "payment_needed", - "pending", - "pending_quotes", - "queued", - "quote_rate_limited", - "quoted", - "ready_for_review", - "ready_for_submission", - "ready_to_finalize", - "review_pending", - "service_preview", - "service_requested", - "sandbox_unsupported", - "stale_selection", - "verifying_documents", - "waiting_on_carrier", - "waiting_on_documents", - "waiting_on_payment" -]New value: +[ + "abandoned", + "blocked", + "bound", + "cancelled", + "chosen", + "credit_consent_pending", + "credit_consent_required", + "monoline_mvr_consent_required", + "dev_success", + "documents_needed", + "documents_pending_review", + "email_sent", + "in_review", + "ineligible", + "info_requested", + "needs_more_info", + "needs_more_info_to_bind", + "no_policy", + "no_chosen_offer", + "no_quotes", + "no_selection", + "ok", + "payment_collection_ready", + "payment_needed", + "pending", + "pending_quotes", + "queued", + "quote_rate_limited", + "quoted", + "ready_for_review", + "ready_for_submission", + "ready_to_finalize", + "review_pending", + "service_preview", + "service_requested", + "sandbox_unsupported", + "stale_selection", + "verifying_documents", + "waiting_on_carrier", + "waiting_on_documents", + "waiting_on_payment" +]
- Changed
umbrella_consumer_attach10 fields changed- added
Output schema / properties / contact_preferences_disclosures / properties / service_call / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / contact_preferences_disclosures / properties / service_call / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - added
Output schema / properties / contact_preferences_disclosures / properties / service_sms / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / contact_preferences_disclosures / properties / service_sms / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - added
Output schema / properties / credit_consent_disclosure / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / credit_consent_disclosure / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - changed
Output schema / properties / detail_status / enumPrevious value: -[ - "abandoned", - "blocked", - "bound", - "cancelled", - "chosen", - "credit_consent_pending", - "credit_consent_required", - "dev_success", - "documents_needed", - "documents_pending_review", - "email_sent", - "in_review", - "ineligible", - "info_requested", - "needs_more_info", - "needs_more_info_to_bind", - "no_policy", - "no_chosen_offer", - "no_quotes", - "no_selection", - "ok", - "payment_collection_ready", - "payment_needed", - "pending", - "pending_quotes", - "queued", - "quote_rate_limited", - "quoted", - "ready_for_review", - "ready_for_submission", - "ready_to_finalize", - "review_pending", - "service_preview", - "service_requested", - "sandbox_unsupported", - "stale_selection", - "verifying_documents", - "waiting_on_carrier", - "waiting_on_documents", - "waiting_on_payment" -]New value: +[ + "abandoned", + "blocked", + "bound", + "cancelled", + "chosen", + "credit_consent_pending", + "credit_consent_required", + "monoline_mvr_consent_required", + "dev_success", + "documents_needed", + "documents_pending_review", + "email_sent", + "in_review", + "ineligible", + "info_requested", + "needs_more_info", + "needs_more_info_to_bind", + "no_policy", + "no_chosen_offer", + "no_quotes", + "no_selection", + "ok", + "payment_collection_ready", + "payment_needed", + "pending", + "pending_quotes", + "queued", + "quote_rate_limited", + "quoted", + "ready_for_review", + "ready_for_submission", + "ready_to_finalize", + "review_pending", + "service_preview", + "service_requested", + "sandbox_unsupported", + "stale_selection", + "verifying_documents", + "waiting_on_carrier", + "waiting_on_documents", + "waiting_on_payment" +] - added
Output schema / properties / monoline_mvr_consent_disclosureAdded value: +{ + "additionalProperties": false, + "description": "Versioned Monoline-specific text that must be shown verbatim with its source URL; echo version and text_hash with the user's response.", + "properties": { + "kind": { + "const": "monoline_mvr", + "type": "string" + }, + "source_updated_at": { + "format": "date", + "type": "string" + }, + "source_url": { + "format": "uri", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash", + "source_url", + "source_updated_at" + ], + "type": "object" +} - added
Output schema / properties / monoline_mvr_consent_questionAdded value: +{ + "type": "string" +} - changed
Output schema / properties / status / enumPrevious value: -[ - "abandoned", - "blocked", - "bound", - "cancelled", - "chosen", - "credit_consent_pending", - "credit_consent_required", - "dev_success", - "documents_needed", - "documents_pending_review", - "email_sent", - "in_review", - "ineligible", - "info_requested", - "needs_more_info", - "needs_more_info_to_bind", - "no_policy", - "no_chosen_offer", - "no_quotes", - "no_selection", - "ok", - "payment_collection_ready", - "payment_needed", - "pending", - "pending_quotes", - "queued", - "quote_rate_limited", - "quoted", - "ready_for_review", - "ready_for_submission", - "ready_to_finalize", - "review_pending", - "service_preview", - "service_requested", - "sandbox_unsupported", - "stale_selection", - "verifying_documents", - "waiting_on_carrier", - "waiting_on_documents", - "waiting_on_payment" -]New value: +[ + "abandoned", + "blocked", + "bound", + "cancelled", + "chosen", + "credit_consent_pending", + "credit_consent_required", + "monoline_mvr_consent_required", + "dev_success", + "documents_needed", + "documents_pending_review", + "email_sent", + "in_review", + "ineligible", + "info_requested", + "needs_more_info", + "needs_more_info_to_bind", + "no_policy", + "no_chosen_offer", + "no_quotes", + "no_selection", + "ok", + "payment_collection_ready", + "payment_needed", + "pending", + "pending_quotes", + "queued", + "quote_rate_limited", + "quoted", + "ready_for_review", + "ready_for_submission", + "ready_to_finalize", + "review_pending", + "service_preview", + "service_requested", + "sandbox_unsupported", + "stale_selection", + "verifying_documents", + "waiting_on_carrier", + "waiting_on_documents", + "waiting_on_payment" +]
- Changed
umbrella_consumer_bind10 fields changed- added
Output schema / properties / contact_preferences_disclosures / properties / service_call / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / contact_preferences_disclosures / properties / service_call / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - added
Output schema / properties / contact_preferences_disclosures / properties / service_sms / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / contact_preferences_disclosures / properties / service_sms / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - added
Output schema / properties / credit_consent_disclosure / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / credit_consent_disclosure / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - changed
Output schema / properties / detail_status / enumPrevious value: -[ - "abandoned", - "blocked", - "bound", - "cancelled", - "chosen", - "credit_consent_pending", - "credit_consent_required", - "dev_success", - "documents_needed", - "documents_pending_review", - "email_sent", - "in_review", - "ineligible", - "info_requested", - "needs_more_info", - "needs_more_info_to_bind", - "no_policy", - "no_chosen_offer", - "no_quotes", - "no_selection", - "ok", - "payment_collection_ready", - "payment_needed", - "pending", - "pending_quotes", - "queued", - "quote_rate_limited", - "quoted", - "ready_for_review", - "ready_for_submission", - "ready_to_finalize", - "review_pending", - "service_preview", - "service_requested", - "sandbox_unsupported", - "stale_selection", - "verifying_documents", - "waiting_on_carrier", - "waiting_on_documents", - "waiting_on_payment" -]New value: +[ + "abandoned", + "blocked", + "bound", + "cancelled", + "chosen", + "credit_consent_pending", + "credit_consent_required", + "monoline_mvr_consent_required", + "dev_success", + "documents_needed", + "documents_pending_review", + "email_sent", + "in_review", + "ineligible", + "info_requested", + "needs_more_info", + "needs_more_info_to_bind", + "no_policy", + "no_chosen_offer", + "no_quotes", + "no_selection", + "ok", + "payment_collection_ready", + "payment_needed", + "pending", + "pending_quotes", + "queued", + "quote_rate_limited", + "quoted", + "ready_for_review", + "ready_for_submission", + "ready_to_finalize", + "review_pending", + "service_preview", + "service_requested", + "sandbox_unsupported", + "stale_selection", + "verifying_documents", + "waiting_on_carrier", + "waiting_on_documents", + "waiting_on_payment" +] - added
Output schema / properties / monoline_mvr_consent_disclosureAdded value: +{ + "additionalProperties": false, + "description": "Versioned Monoline-specific text that must be shown verbatim with its source URL; echo version and text_hash with the user's response.", + "properties": { + "kind": { + "const": "monoline_mvr", + "type": "string" + }, + "source_updated_at": { + "format": "date", + "type": "string" + }, + "source_url": { + "format": "uri", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash", + "source_url", + "source_updated_at" + ], + "type": "object" +} - added
Output schema / properties / monoline_mvr_consent_questionAdded value: +{ + "type": "string" +} - changed
Output schema / properties / status / enumPrevious value: -[ - "abandoned", - "blocked", - "bound", - "cancelled", - "chosen", - "credit_consent_pending", - "credit_consent_required", - "dev_success", - "documents_needed", - "documents_pending_review", - "email_sent", - "in_review", - "ineligible", - "info_requested", - "needs_more_info", - "needs_more_info_to_bind", - "no_policy", - "no_chosen_offer", - "no_quotes", - "no_selection", - "ok", - "payment_collection_ready", - "payment_needed", - "pending", - "pending_quotes", - "queued", - "quote_rate_limited", - "quoted", - "ready_for_review", - "ready_for_submission", - "ready_to_finalize", - "review_pending", - "service_preview", - "service_requested", - "sandbox_unsupported", - "stale_selection", - "verifying_documents", - "waiting_on_carrier", - "waiting_on_documents", - "waiting_on_payment" -]New value: +[ + "abandoned", + "blocked", + "bound", + "cancelled", + "chosen", + "credit_consent_pending", + "credit_consent_required", + "monoline_mvr_consent_required", + "dev_success", + "documents_needed", + "documents_pending_review", + "email_sent", + "in_review", + "ineligible", + "info_requested", + "needs_more_info", + "needs_more_info_to_bind", + "no_policy", + "no_chosen_offer", + "no_quotes", + "no_selection", + "ok", + "payment_collection_ready", + "payment_needed", + "pending", + "pending_quotes", + "queued", + "quote_rate_limited", + "quoted", + "ready_for_review", + "ready_for_submission", + "ready_to_finalize", + "review_pending", + "service_preview", + "service_requested", + "sandbox_unsupported", + "stale_selection", + "verifying_documents", + "waiting_on_carrier", + "waiting_on_documents", + "waiting_on_payment" +]
- Changed
umbrella_consumer_payment10 fields changed- added
Output schema / properties / contact_preferences_disclosures / properties / service_call / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / contact_preferences_disclosures / properties / service_call / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - added
Output schema / properties / contact_preferences_disclosures / properties / service_sms / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / contact_preferences_disclosures / properties / service_sms / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - added
Output schema / properties / credit_consent_disclosure / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / credit_consent_disclosure / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - changed
Output schema / properties / detail_status / enumPrevious value: -[ - "abandoned", - "blocked", - "bound", - "cancelled", - "chosen", - "credit_consent_pending", - "credit_consent_required", - "dev_success", - "documents_needed", - "documents_pending_review", - "email_sent", - "in_review", - "ineligible", - "info_requested", - "needs_more_info", - "needs_more_info_to_bind", - "no_policy", - "no_chosen_offer", - "no_quotes", - "no_selection", - "ok", - "payment_collection_ready", - "payment_needed", - "pending", - "pending_quotes", - "queued", - "quote_rate_limited", - "quoted", - "ready_for_review", - "ready_for_submission", - "ready_to_finalize", - "review_pending", - "service_preview", - "service_requested", - "sandbox_unsupported", - "stale_selection", - "verifying_documents", - "waiting_on_carrier", - "waiting_on_documents", - "waiting_on_payment" -]New value: +[ + "abandoned", + "blocked", + "bound", + "cancelled", + "chosen", + "credit_consent_pending", + "credit_consent_required", + "monoline_mvr_consent_required", + "dev_success", + "documents_needed", + "documents_pending_review", + "email_sent", + "in_review", + "ineligible", + "info_requested", + "needs_more_info", + "needs_more_info_to_bind", + "no_policy", + "no_chosen_offer", + "no_quotes", + "no_selection", + "ok", + "payment_collection_ready", + "payment_needed", + "pending", + "pending_quotes", + "queued", + "quote_rate_limited", + "quoted", + "ready_for_review", + "ready_for_submission", + "ready_to_finalize", + "review_pending", + "service_preview", + "service_requested", + "sandbox_unsupported", + "stale_selection", + "verifying_documents", + "waiting_on_carrier", + "waiting_on_documents", + "waiting_on_payment" +] - added
Output schema / properties / monoline_mvr_consent_disclosureAdded value: +{ + "additionalProperties": false, + "description": "Versioned Monoline-specific text that must be shown verbatim with its source URL; echo version and text_hash with the user's response.", + "properties": { + "kind": { + "const": "monoline_mvr", + "type": "string" + }, + "source_updated_at": { + "format": "date", + "type": "string" + }, + "source_url": { + "format": "uri", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash", + "source_url", + "source_updated_at" + ], + "type": "object" +} - added
Output schema / properties / monoline_mvr_consent_questionAdded value: +{ + "type": "string" +} - changed
Output schema / properties / status / enumPrevious value: -[ - "abandoned", - "blocked", - "bound", - "cancelled", - "chosen", - "credit_consent_pending", - "credit_consent_required", - "dev_success", - "documents_needed", - "documents_pending_review", - "email_sent", - "in_review", - "ineligible", - "info_requested", - "needs_more_info", - "needs_more_info_to_bind", - "no_policy", - "no_chosen_offer", - "no_quotes", - "no_selection", - "ok", - "payment_collection_ready", - "payment_needed", - "pending", - "pending_quotes", - "queued", - "quote_rate_limited", - "quoted", - "ready_for_review", - "ready_for_submission", - "ready_to_finalize", - "review_pending", - "service_preview", - "service_requested", - "sandbox_unsupported", - "stale_selection", - "verifying_documents", - "waiting_on_carrier", - "waiting_on_documents", - "waiting_on_payment" -]New value: +[ + "abandoned", + "blocked", + "bound", + "cancelled", + "chosen", + "credit_consent_pending", + "credit_consent_required", + "monoline_mvr_consent_required", + "dev_success", + "documents_needed", + "documents_pending_review", + "email_sent", + "in_review", + "ineligible", + "info_requested", + "needs_more_info", + "needs_more_info_to_bind", + "no_policy", + "no_chosen_offer", + "no_quotes", + "no_selection", + "ok", + "payment_collection_ready", + "payment_needed", + "pending", + "pending_quotes", + "queued", + "quote_rate_limited", + "quoted", + "ready_for_review", + "ready_for_submission", + "ready_to_finalize", + "review_pending", + "service_preview", + "service_requested", + "sandbox_unsupported", + "stale_selection", + "verifying_documents", + "waiting_on_carrier", + "waiting_on_documents", + "waiting_on_payment" +]
- Changed
umbrella_consumer_policy10 fields changed- added
Output schema / properties / contact_preferences_disclosures / properties / service_call / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / contact_preferences_disclosures / properties / service_call / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - added
Output schema / properties / contact_preferences_disclosures / properties / service_sms / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / contact_preferences_disclosures / properties / service_sms / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - added
Output schema / properties / credit_consent_disclosure / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / credit_consent_disclosure / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - changed
Output schema / properties / detail_status / enumPrevious value: -[ - "abandoned", - "blocked", - "bound", - "cancelled", - "chosen", - "credit_consent_pending", - "credit_consent_required", - "dev_success", - "documents_needed", - "documents_pending_review", - "email_sent", - "in_review", - "ineligible", - "info_requested", - "needs_more_info", - "needs_more_info_to_bind", - "no_policy", - "no_chosen_offer", - "no_quotes", - "no_selection", - "ok", - "payment_collection_ready", - "payment_needed", - "pending", - "pending_quotes", - "queued", - "quote_rate_limited", - "quoted", - "ready_for_review", - "ready_for_submission", - "ready_to_finalize", - "review_pending", - "service_preview", - "service_requested", - "sandbox_unsupported", - "stale_selection", - "verifying_documents", - "waiting_on_carrier", - "waiting_on_documents", - "waiting_on_payment" -]New value: +[ + "abandoned", + "blocked", + "bound", + "cancelled", + "chosen", + "credit_consent_pending", + "credit_consent_required", + "monoline_mvr_consent_required", + "dev_success", + "documents_needed", + "documents_pending_review", + "email_sent", + "in_review", + "ineligible", + "info_requested", + "needs_more_info", + "needs_more_info_to_bind", + "no_policy", + "no_chosen_offer", + "no_quotes", + "no_selection", + "ok", + "payment_collection_ready", + "payment_needed", + "pending", + "pending_quotes", + "queued", + "quote_rate_limited", + "quoted", + "ready_for_review", + "ready_for_submission", + "ready_to_finalize", + "review_pending", + "service_preview", + "service_requested", + "sandbox_unsupported", + "stale_selection", + "verifying_documents", + "waiting_on_carrier", + "waiting_on_documents", + "waiting_on_payment" +] - added
Output schema / properties / monoline_mvr_consent_disclosureAdded value: +{ + "additionalProperties": false, + "description": "Versioned Monoline-specific text that must be shown verbatim with its source URL; echo version and text_hash with the user's response.", + "properties": { + "kind": { + "const": "monoline_mvr", + "type": "string" + }, + "source_updated_at": { + "format": "date", + "type": "string" + }, + "source_url": { + "format": "uri", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash", + "source_url", + "source_updated_at" + ], + "type": "object" +} - added
Output schema / properties / monoline_mvr_consent_questionAdded value: +{ + "type": "string" +} - changed
Output schema / properties / status / enumPrevious value: -[ - "abandoned", - "blocked", - "bound", - "cancelled", - "chosen", - "credit_consent_pending", - "credit_consent_required", - "dev_success", - "documents_needed", - "documents_pending_review", - "email_sent", - "in_review", - "ineligible", - "info_requested", - "needs_more_info", - "needs_more_info_to_bind", - "no_policy", - "no_chosen_offer", - "no_quotes", - "no_selection", - "ok", - "payment_collection_ready", - "payment_needed", - "pending", - "pending_quotes", - "queued", - "quote_rate_limited", - "quoted", - "ready_for_review", - "ready_for_submission", - "ready_to_finalize", - "review_pending", - "service_preview", - "service_requested", - "sandbox_unsupported", - "stale_selection", - "verifying_documents", - "waiting_on_carrier", - "waiting_on_documents", - "waiting_on_payment" -]New value: +[ + "abandoned", + "blocked", + "bound", + "cancelled", + "chosen", + "credit_consent_pending", + "credit_consent_required", + "monoline_mvr_consent_required", + "dev_success", + "documents_needed", + "documents_pending_review", + "email_sent", + "in_review", + "ineligible", + "info_requested", + "needs_more_info", + "needs_more_info_to_bind", + "no_policy", + "no_chosen_offer", + "no_quotes", + "no_selection", + "ok", + "payment_collection_ready", + "payment_needed", + "pending", + "pending_quotes", + "queued", + "quote_rate_limited", + "quoted", + "ready_for_review", + "ready_for_submission", + "ready_to_finalize", + "review_pending", + "service_preview", + "service_requested", + "sandbox_unsupported", + "stale_selection", + "verifying_documents", + "waiting_on_carrier", + "waiting_on_documents", + "waiting_on_payment" +]
- Changed
umbrella_consumer_prefill9 fields changed- added
Output schema / properties / review_summary / properties / contact_preferences_disclosures / properties / service_call / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / review_summary / properties / contact_preferences_disclosures / properties / service_call / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - added
Output schema / properties / review_summary / properties / contact_preferences_disclosures / properties / service_sms / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / review_summary / properties / contact_preferences_disclosures / properties / service_sms / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - added
Output schema / properties / review_summary / properties / credit_consent_disclosure / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / review_summary / properties / credit_consent_disclosure / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - added
Output schema / properties / review_summary / properties / monoline_mvr_consent_disclosureAdded value: +{ + "additionalProperties": false, + "description": "Versioned Monoline-specific text that must be shown verbatim with its source URL; echo version and text_hash with the user's response.", + "properties": { + "kind": { + "const": "monoline_mvr", + "type": "string" + }, + "source_updated_at": { + "format": "date", + "type": "string" + }, + "source_url": { + "format": "uri", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash", + "source_url", + "source_updated_at" + ], + "type": "object" +} - added
Output schema / properties / review_summary / properties / monoline_mvr_consent_questionAdded value: +{ + "type": "string" +} - changed
Output schema / properties / review_summary / properties / status / enumPrevious value: -[ - "abandoned", - "blocked", - "bound", - "cancelled", - "chosen", - "credit_consent_pending", - "credit_consent_required", - "dev_success", - "documents_needed", - "documents_pending_review", - "email_sent", - "in_review", - "ineligible", - "info_requested", - "needs_more_info", - "needs_more_info_to_bind", - "no_policy", - "no_chosen_offer", - "no_quotes", - "no_selection", - "ok", - "payment_collection_ready", - "payment_needed", - "pending", - "pending_quotes", - "queued", - "quote_rate_limited", - "quoted", - "ready_for_review", - "ready_for_submission", - "ready_to_finalize", - "review_pending", - "service_preview", - "service_requested", - "sandbox_unsupported", - "stale_selection", - "verifying_documents", - "waiting_on_carrier", - "waiting_on_documents", - "waiting_on_payment" -]New value: +[ + "abandoned", + "blocked", + "bound", + "cancelled", + "chosen", + "credit_consent_pending", + "credit_consent_required", + "monoline_mvr_consent_required", + "dev_success", + "documents_needed", + "documents_pending_review", + "email_sent", + "in_review", + "ineligible", + "info_requested", + "needs_more_info", + "needs_more_info_to_bind", + "no_policy", + "no_chosen_offer", + "no_quotes", + "no_selection", + "ok", + "payment_collection_ready", + "payment_needed", + "pending", + "pending_quotes", + "queued", + "quote_rate_limited", + "quoted", + "ready_for_review", + "ready_for_submission", + "ready_to_finalize", + "review_pending", + "service_preview", + "service_requested", + "sandbox_unsupported", + "stale_selection", + "verifying_documents", + "waiting_on_carrier", + "waiting_on_documents", + "waiting_on_payment" +]
- Changed
umbrella_consumer_select11 fields changed- added
Input schema / properties / monoline_mvr_consentAdded value: +{ + "additionalProperties": false, + "description": "The real user's response to the selected Monoline offer's MVR and consumer-report authorization, after the complete returned carrier-specific disclosure and source URL are shown.", + "properties": { + "answer": { + "description": "Records the shopper's own Yes, No or Revoke reply. Preserve declines and revocations; never infer or convert another answer into Yes.", + "enum": [ + "Yes", + "No", + "Revoke" + ], + "type": "string" + }, + "collected_from_user": { + "const": true, + "description": "Attests that the shopper personally answered the displayed authorization in this conversation, rather than the agent assuming their response.", + "type": "boolean" + }, + "disclosure_hash": { + "description": "The text_hash from monoline_mvr_consent_disclosure.", + "type": "string" + }, + "disclosure_version": { + "description": "The version from monoline_mvr_consent_disclosure.", + "type": "string" + }, + "presentation_reference": { + "description": "Optional opaque conversation or message reference; do not include message contents or personal information.", + "maxLength": 200, + "type": "string" + }, + "presented_at": { + "description": "RFC 3339 timestamp from the assistant runtime for when the complete disclosure was shown. It must be within the prior 24 hours and no more than five minutes in the future.", + "format": "date-time", + "type": "string" + }, + "shown_to_user": { + "const": true, + "description": "Attests that the complete returned disclosure text was presented verbatim before the shopper answered.", + "type": "boolean" + } + }, + "required": [ + "answer", + "collected_from_user", + "shown_to_user", + "disclosure_version", + "disclosure_hash", + "presented_at" + ], + "type": "object" +} - added
Output schema / properties / contact_preferences_disclosures / properties / service_call / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / contact_preferences_disclosures / properties / service_call / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - added
Output schema / properties / contact_preferences_disclosures / properties / service_sms / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / contact_preferences_disclosures / properties / service_sms / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - added
Output schema / properties / credit_consent_disclosure / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / credit_consent_disclosure / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - changed
Output schema / properties / detail_status / enumPrevious value: -[ - "abandoned", - "blocked", - "bound", - "cancelled", - "chosen", - "credit_consent_pending", - "credit_consent_required", - "dev_success", - "documents_needed", - "documents_pending_review", - "email_sent", - "in_review", - "ineligible", - "info_requested", - "needs_more_info", - "needs_more_info_to_bind", - "no_policy", - "no_chosen_offer", - "no_quotes", - "no_selection", - "ok", - "payment_collection_ready", - "payment_needed", - "pending", - "pending_quotes", - "queued", - "quote_rate_limited", - "quoted", - "ready_for_review", - "ready_for_submission", - "ready_to_finalize", - "review_pending", - "service_preview", - "service_requested", - "sandbox_unsupported", - "stale_selection", - "verifying_documents", - "waiting_on_carrier", - "waiting_on_documents", - "waiting_on_payment" -]New value: +[ + "abandoned", + "blocked", + "bound", + "cancelled", + "chosen", + "credit_consent_pending", + "credit_consent_required", + "monoline_mvr_consent_required", + "dev_success", + "documents_needed", + "documents_pending_review", + "email_sent", + "in_review", + "ineligible", + "info_requested", + "needs_more_info", + "needs_more_info_to_bind", + "no_policy", + "no_chosen_offer", + "no_quotes", + "no_selection", + "ok", + "payment_collection_ready", + "payment_needed", + "pending", + "pending_quotes", + "queued", + "quote_rate_limited", + "quoted", + "ready_for_review", + "ready_for_submission", + "ready_to_finalize", + "review_pending", + "service_preview", + "service_requested", + "sandbox_unsupported", + "stale_selection", + "verifying_documents", + "waiting_on_carrier", + "waiting_on_documents", + "waiting_on_payment" +] - added
Output schema / properties / monoline_mvr_consent_disclosureAdded value: +{ + "additionalProperties": false, + "description": "Versioned Monoline-specific text that must be shown verbatim with its source URL; echo version and text_hash with the user's response.", + "properties": { + "kind": { + "const": "monoline_mvr", + "type": "string" + }, + "source_updated_at": { + "format": "date", + "type": "string" + }, + "source_url": { + "format": "uri", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash", + "source_url", + "source_updated_at" + ], + "type": "object" +} - added
Output schema / properties / monoline_mvr_consent_questionAdded value: +{ + "type": "string" +} - changed
Output schema / properties / status / enumPrevious value: -[ - "abandoned", - "blocked", - "bound", - "cancelled", - "chosen", - "credit_consent_pending", - "credit_consent_required", - "dev_success", - "documents_needed", - "documents_pending_review", - "email_sent", - "in_review", - "ineligible", - "info_requested", - "needs_more_info", - "needs_more_info_to_bind", - "no_policy", - "no_chosen_offer", - "no_quotes", - "no_selection", - "ok", - "payment_collection_ready", - "payment_needed", - "pending", - "pending_quotes", - "queued", - "quote_rate_limited", - "quoted", - "ready_for_review", - "ready_for_submission", - "ready_to_finalize", - "review_pending", - "service_preview", - "service_requested", - "sandbox_unsupported", - "stale_selection", - "verifying_documents", - "waiting_on_carrier", - "waiting_on_documents", - "waiting_on_payment" -]New value: +[ + "abandoned", + "blocked", + "bound", + "cancelled", + "chosen", + "credit_consent_pending", + "credit_consent_required", + "monoline_mvr_consent_required", + "dev_success", + "documents_needed", + "documents_pending_review", + "email_sent", + "in_review", + "ineligible", + "info_requested", + "needs_more_info", + "needs_more_info_to_bind", + "no_policy", + "no_chosen_offer", + "no_quotes", + "no_selection", + "ok", + "payment_collection_ready", + "payment_needed", + "pending", + "pending_quotes", + "queued", + "quote_rate_limited", + "quoted", + "ready_for_review", + "ready_for_submission", + "ready_to_finalize", + "review_pending", + "service_preview", + "service_requested", + "sandbox_unsupported", + "stale_selection", + "verifying_documents", + "waiting_on_carrier", + "waiting_on_documents", + "waiting_on_payment" +]
- Changed
umbrella_consumer_service10 fields changed- added
Output schema / properties / contact_preferences_disclosures / properties / service_call / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / contact_preferences_disclosures / properties / service_call / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - added
Output schema / properties / contact_preferences_disclosures / properties / service_sms / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / contact_preferences_disclosures / properties / service_sms / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - added
Output schema / properties / credit_consent_disclosure / properties / source_updated_atAdded value: +{ + "format": "date", + "type": "string" +} - added
Output schema / properties / credit_consent_disclosure / properties / source_urlAdded value: +{ + "format": "uri", + "type": "string" +} - changed
Output schema / properties / detail_status / enumPrevious value: -[ - "abandoned", - "blocked", - "bound", - "cancelled", - "chosen", - "credit_consent_pending", - "credit_consent_required", - "dev_success", - "documents_needed", - "documents_pending_review", - "email_sent", - "in_review", - "ineligible", - "info_requested", - "needs_more_info", - "needs_more_info_to_bind", - "no_policy", - "no_chosen_offer", - "no_quotes", - "no_selection", - "ok", - "payment_collection_ready", - "payment_needed", - "pending", - "pending_quotes", - "queued", - "quote_rate_limited", - "quoted", - "ready_for_review", - "ready_for_submission", - "ready_to_finalize", - "review_pending", - "service_preview", - "service_requested", - "sandbox_unsupported", - "stale_selection", - "verifying_documents", - "waiting_on_carrier", - "waiting_on_documents", - "waiting_on_payment" -]New value: +[ + "abandoned", + "blocked", + "bound", + "cancelled", + "chosen", + "credit_consent_pending", + "credit_consent_required", + "monoline_mvr_consent_required", + "dev_success", + "documents_needed", + "documents_pending_review", + "email_sent", + "in_review", + "ineligible", + "info_requested", + "needs_more_info", + "needs_more_info_to_bind", + "no_policy", + "no_chosen_offer", + "no_quotes", + "no_selection", + "ok", + "payment_collection_ready", + "payment_needed", + "pending", + "pending_quotes", + "queued", + "quote_rate_limited", + "quoted", + "ready_for_review", + "ready_for_submission", + "ready_to_finalize", + "review_pending", + "service_preview", + "service_requested", + "sandbox_unsupported", + "stale_selection", + "verifying_documents", + "waiting_on_carrier", + "waiting_on_documents", + "waiting_on_payment" +] - added
Output schema / properties / monoline_mvr_consent_disclosureAdded value: +{ + "additionalProperties": false, + "description": "Versioned Monoline-specific text that must be shown verbatim with its source URL; echo version and text_hash with the user's response.", + "properties": { + "kind": { + "const": "monoline_mvr", + "type": "string" + }, + "source_updated_at": { + "format": "date", + "type": "string" + }, + "source_url": { + "format": "uri", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash", + "source_url", + "source_updated_at" + ], + "type": "object" +} - added
Output schema / properties / monoline_mvr_consent_questionAdded value: +{ + "type": "string" +} - changed
Output schema / properties / status / enumPrevious value: -[ - "abandoned", - "blocked", - "bound", - "cancelled", - "chosen", - "credit_consent_pending", - "credit_consent_required", - "dev_success", - "documents_needed", - "documents_pending_review", - "email_sent", - "in_review", - "ineligible", - "info_requested", - "needs_more_info", - "needs_more_info_to_bind", - "no_policy", - "no_chosen_offer", - "no_quotes", - "no_selection", - "ok", - "payment_collection_ready", - "payment_needed", - "pending", - "pending_quotes", - "queued", - "quote_rate_limited", - "quoted", - "ready_for_review", - "ready_for_submission", - "ready_to_finalize", - "review_pending", - "service_preview", - "service_requested", - "sandbox_unsupported", - "stale_selection", - "verifying_documents", - "waiting_on_carrier", - "waiting_on_documents", - "waiting_on_payment" -]New value: +[ + "abandoned", + "blocked", + "bound", + "cancelled", + "chosen", + "credit_consent_pending", + "credit_consent_required", + "monoline_mvr_consent_required", + "dev_success", + "documents_needed", + "documents_pending_review", + "email_sent", + "in_review", + "ineligible", + "info_requested", + "needs_more_info", + "needs_more_info_to_bind", + "no_policy", + "no_chosen_offer", + "no_quotes", + "no_selection", + "ok", + "payment_collection_ready", + "payment_needed", + "pending", + "pending_quotes", + "queued", + "quote_rate_limited", + "quoted", + "ready_for_review", + "ready_for_submission", + "ready_to_finalize", + "review_pending", + "service_preview", + "service_requested", + "sandbox_unsupported", + "stale_selection", + "verifying_documents", + "waiting_on_carrier", + "waiting_on_documents", + "waiting_on_payment" +]
13 tool updates
- Changed
consumer_intake_issues1 field changed- changed
Input schema / properties / uid / descriptionPrevious value: -"Coverage Cat intake uid returned by `umbrella_consumer_prefill` or `homeowners_consumer_prefill` and echoed on every follow-up response. Reuse it for each follow-up call on the same application."New value: +"Coverage Cat intake uid for the existing authorized intake or returned by `umbrella_consumer_prefill` and echoed on every follow-up response. Reuse it for each follow-up call on the same application."
- Changed
consumer_intake_patch3 fields changed- changed
Input schema / properties / message_reply / descriptionPrevious value: -"Homeowners post-submit only. Send the reply text Coverage Cat should deliver in-thread when consumer_intake_issues surfaced an insurer or shopper follow-up under conversation.messages."New value: +"Existing-policy support correspondence. Send the reply text Coverage Cat should deliver in-thread when consumer_intake_issues surfaces a message under conversation.messages. This does not start a new homeowners application." - changed
Input schema / properties / reply_to_message_id / descriptionPrevious value: -"Homeowners post-submit message_id from conversation.messages[] that message_reply answers in-thread, when Coverage Cat returned a specific message to reply to."New value: +"Existing-policy support message_id from conversation.messages[] that message_reply answers in-thread, when Coverage Cat returned a specific message to reply to." - changed
Input schema / properties / uid / descriptionPrevious value: -"Coverage Cat intake uid returned by `umbrella_consumer_prefill` or `homeowners_consumer_prefill` and echoed on every follow-up response. Reuse it for each follow-up call on the same application."New value: +"Coverage Cat intake uid for the existing authorized intake or returned by `umbrella_consumer_prefill` and echoed on every follow-up response. Reuse it for each follow-up call on the same application."
- Changed
consumer_intake_verify_email1 field changed- changed
Input schema / properties / uid / descriptionPrevious value: -"Coverage Cat intake uid returned by `umbrella_consumer_prefill` or `homeowners_consumer_prefill` and echoed on every follow-up response. Reuse it for each follow-up call on the same application."New value: +"Coverage Cat intake uid for the existing authorized intake or returned by `umbrella_consumer_prefill` and echoed on every follow-up response. Reuse it for each follow-up call on the same application."
- Removed
homeowners_agent_finder - Removed
homeowners_consumer_bind - Changed
homeowners_consumer_policy1 field changed- changed
Input schema / properties / uid / descriptionPrevious value: -"Coverage Cat intake uid returned by `umbrella_consumer_prefill` or `homeowners_consumer_prefill` and echoed on every follow-up response. Reuse it for each follow-up call on the same application."New value: +"Coverage Cat intake uid for the existing authorized intake or returned by `umbrella_consumer_prefill` and echoed on every follow-up response. Reuse it for each follow-up call on the same application."
- Removed
homeowners_consumer_prefill - Removed
homeowners_consumer_select - Removed
property_insurance_advice - Changed
umbrella_consumer_attach1 field changed- changed
Input schema / properties / uid / descriptionPrevious value: -"Coverage Cat intake uid returned by `umbrella_consumer_prefill` or `homeowners_consumer_prefill` and echoed on every follow-up response. Reuse it for each follow-up call on the same application."New value: +"Coverage Cat intake uid for the existing authorized intake or returned by `umbrella_consumer_prefill` and echoed on every follow-up response. Reuse it for each follow-up call on the same application."
- Changed
umbrella_consumer_bind1 field changed- changed
Input schema / properties / uid / descriptionPrevious value: -"Coverage Cat intake uid returned by `umbrella_consumer_prefill` or `homeowners_consumer_prefill` and echoed on every follow-up response. Reuse it for each follow-up call on the same application."New value: +"Coverage Cat intake uid for the existing authorized intake or returned by `umbrella_consumer_prefill` and echoed on every follow-up response. Reuse it for each follow-up call on the same application."
- Changed
umbrella_consumer_policy1 field changed- changed
Input schema / properties / uid / descriptionPrevious value: -"Coverage Cat intake uid returned by `umbrella_consumer_prefill` or `homeowners_consumer_prefill` and echoed on every follow-up response. Reuse it for each follow-up call on the same application."New value: +"Coverage Cat intake uid for the existing authorized intake or returned by `umbrella_consumer_prefill` and echoed on every follow-up response. Reuse it for each follow-up call on the same application."
- Changed
umbrella_consumer_select1 field changed- changed
Input schema / properties / uid / descriptionPrevious value: -"Coverage Cat intake uid returned by `umbrella_consumer_prefill` or `homeowners_consumer_prefill` and echoed on every follow-up response. Reuse it for each follow-up call on the same application."New value: +"Coverage Cat intake uid for the existing authorized intake or returned by `umbrella_consumer_prefill` and echoed on every follow-up response. Reuse it for each follow-up call on the same application."
15 tool updates
- Changed
consumer_intake_issues2 fields changed- added
Output schema / properties / contact_preferences_disclosuresAdded value: +{ + "additionalProperties": false, + "description": "Optional versioned service-contact disclosures for the phone number on file; no marketing consent and no purchase requirement.", + "properties": { + "service_call": { + "additionalProperties": false, + "description": "Optional service-call disclosure; show its text verbatim before recording a choice.", + "properties": { + "kind": { + "const": "service_call", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" + }, + "service_sms": { + "additionalProperties": false, + "description": "Optional service-text disclosure; show its text verbatim before recording a choice.", + "properties": { + "kind": { + "const": "service_sms", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" + } + }, + "type": "object" +} - added
Output schema / properties / credit_consent_disclosureAdded value: +{ + "additionalProperties": false, + "description": "Versioned canonical text that must be shown verbatim; echo version and text_hash with the user's response.", + "properties": { + "kind": { + "const": "credit_report", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" +}
- Changed
consumer_intake_patch4 fields changed- added
Input schema / properties / contact_preferencesAdded value: +{ + "additionalProperties": false, + "description": "Optional service SMS/call choices. Offer alongside an existing review when useful; do not add a required purchase step. Omission leaves choices unchanged. Marketing is disabled.", + "properties": { + "service_call": { + "additionalProperties": false, + "description": "Optional service contact choice for the phone number already on file; never a purchase requirement or marketing authorization.", + "properties": { + "answer": { + "description": "The customer's own Yes, No or Revoke answer to the corresponding service disclosure.", + "enum": [ + "Yes", + "No", + "Revoke" + ], + "type": "string" + }, + "collected_from_user": { + "const": true, + "description": "The customer personally answered this service contact question.", + "type": "boolean" + }, + "disclosure_hash": { + "description": "text_hash from the corresponding contact_preferences_disclosures entry.", + "type": "string" + }, + "disclosure_version": { + "description": "Version from the corresponding contact_preferences_disclosures entry.", + "type": "string" + }, + "presentation_reference": { + "description": "Optional opaque conversation or message reference; do not include message contents or personal information.", + "maxLength": 200, + "type": "string" + }, + "presented_at": { + "description": "RFC 3339 timestamp from the assistant runtime for when the complete disclosure was shown. It must be within the prior 24 hours and no more than five minutes in the future.", + "format": "date-time", + "type": "string" + }, + "shown_to_user": { + "const": true, + "description": "Attests that the complete returned disclosure text was presented verbatim before the shopper answered.", + "type": "boolean" + } + }, + "required": [ + "answer", + "collected_from_user", + "shown_to_user", + "disclosure_version", + "disclosure_hash", + "presented_at" + ], + "type": "object" + }, + "service_sms": { + "additionalProperties": false, + "description": "Optional service contact choice for the phone number already on file; never a purchase requirement or marketing authorization.", + "properties": { + "answer": { + "description": "The customer's own Yes, No or Revoke answer to the corresponding service disclosure.", + "enum": [ + "Yes", + "No", + "Revoke" + ], + "type": "string" + }, + "collected_from_user": { + "const": true, + "description": "The customer personally answered this service contact question.", + "type": "boolean" + }, + "disclosure_hash": { + "description": "text_hash from the corresponding contact_preferences_disclosures entry.", + "type": "string" + }, + "disclosure_version": { + "description": "Version from the corresponding contact_preferences_disclosures entry.", + "type": "string" + }, + "presentation_reference": { + "description": "Optional opaque conversation or message reference; do not include message contents or personal information.", + "maxLength": 200, + "type": "string" + }, + "presented_at": { + "description": "RFC 3339 timestamp from the assistant runtime for when the complete disclosure was shown. It must be within the prior 24 hours and no more than five minutes in the future.", + "format": "date-time", + "type": "string" + }, + "shown_to_user": { + "const": true, + "description": "Attests that the complete returned disclosure text was presented verbatim before the shopper answered.", + "type": "boolean" + } + }, + "required": [ + "answer", + "collected_from_user", + "shown_to_user", + "disclosure_version", + "disclosure_hash", + "presented_at" + ], + "type": "object" + } + }, + "type": "object" +} - added
Input schema / properties / credit_consentAdded value: +{ + "additionalProperties": false, + "description": "The real user's response to Coverage Cat's current consumer-report authorization for insurance underwriting, collected only after Coverage Cat returns the disclosure.", + "properties": { + "answer": { + "description": "Records the shopper's own Yes, No or Revoke reply. Preserve declines and revocations; never infer or convert another answer into Yes.", + "enum": [ + "Yes", + "No", + "Revoke" + ], + "type": "string" + }, + "collected_from_user": { + "const": true, + "description": "Attests that the shopper personally answered the displayed authorization in this conversation, rather than the agent assuming their response.", + "type": "boolean" + }, + "disclosure_hash": { + "description": "The text_hash from credit_consent_disclosure.", + "type": "string" + }, + "disclosure_version": { + "description": "The version from credit_consent_disclosure.", + "type": "string" + }, + "presentation_reference": { + "description": "Optional opaque conversation or message reference; do not include message contents or personal information.", + "maxLength": 200, + "type": "string" + }, + "presented_at": { + "description": "RFC 3339 timestamp from the assistant runtime for when the complete disclosure was shown. It must be within the prior 24 hours and no more than five minutes in the future.", + "format": "date-time", + "type": "string" + }, + "shown_to_user": { + "const": true, + "description": "Attests that the complete returned disclosure text was presented verbatim before the shopper answered.", + "type": "boolean" + } + }, + "required": [ + "answer", + "collected_from_user", + "shown_to_user", + "disclosure_version", + "disclosure_hash", + "presented_at" + ], + "type": "object" +} - added
Output schema / properties / contact_preferences_disclosuresAdded value: +{ + "additionalProperties": false, + "description": "Optional versioned service-contact disclosures for the phone number on file; no marketing consent and no purchase requirement.", + "properties": { + "service_call": { + "additionalProperties": false, + "description": "Optional service-call disclosure; show its text verbatim before recording a choice.", + "properties": { + "kind": { + "const": "service_call", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" + }, + "service_sms": { + "additionalProperties": false, + "description": "Optional service-text disclosure; show its text verbatim before recording a choice.", + "properties": { + "kind": { + "const": "service_sms", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" + } + }, + "type": "object" +} - added
Output schema / properties / credit_consent_disclosureAdded value: +{ + "additionalProperties": false, + "description": "Versioned canonical text that must be shown verbatim; echo version and text_hash with the user's response.", + "properties": { + "kind": { + "const": "credit_report", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" +}
- Changed
consumer_intake_verify_email2 fields changed- added
Output schema / properties / contact_preferences_disclosuresAdded value: +{ + "additionalProperties": false, + "description": "Optional versioned service-contact disclosures for the phone number on file; no marketing consent and no purchase requirement.", + "properties": { + "service_call": { + "additionalProperties": false, + "description": "Optional service-call disclosure; show its text verbatim before recording a choice.", + "properties": { + "kind": { + "const": "service_call", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" + }, + "service_sms": { + "additionalProperties": false, + "description": "Optional service-text disclosure; show its text verbatim before recording a choice.", + "properties": { + "kind": { + "const": "service_sms", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" + } + }, + "type": "object" +} - added
Output schema / properties / credit_consent_disclosureAdded value: +{ + "additionalProperties": false, + "description": "Versioned canonical text that must be shown verbatim; echo version and text_hash with the user's response.", + "properties": { + "kind": { + "const": "credit_report", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" +}
- Changed
homeowners_consumer_bind2 fields changed- added
Output schema / properties / contact_preferences_disclosuresAdded value: +{ + "additionalProperties": false, + "description": "Optional versioned service-contact disclosures for the phone number on file; no marketing consent and no purchase requirement.", + "properties": { + "service_call": { + "additionalProperties": false, + "description": "Optional service-call disclosure; show its text verbatim before recording a choice.", + "properties": { + "kind": { + "const": "service_call", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" + }, + "service_sms": { + "additionalProperties": false, + "description": "Optional service-text disclosure; show its text verbatim before recording a choice.", + "properties": { + "kind": { + "const": "service_sms", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" + } + }, + "type": "object" +} - added
Output schema / properties / credit_consent_disclosureAdded value: +{ + "additionalProperties": false, + "description": "Versioned canonical text that must be shown verbatim; echo version and text_hash with the user's response.", + "properties": { + "kind": { + "const": "credit_report", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" +}
- Changed
homeowners_consumer_policy2 fields changed- added
Output schema / properties / contact_preferences_disclosuresAdded value: +{ + "additionalProperties": false, + "description": "Optional versioned service-contact disclosures for the phone number on file; no marketing consent and no purchase requirement.", + "properties": { + "service_call": { + "additionalProperties": false, + "description": "Optional service-call disclosure; show its text verbatim before recording a choice.", + "properties": { + "kind": { + "const": "service_call", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" + }, + "service_sms": { + "additionalProperties": false, + "description": "Optional service-text disclosure; show its text verbatim before recording a choice.", + "properties": { + "kind": { + "const": "service_sms", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" + } + }, + "type": "object" +} - added
Output schema / properties / credit_consent_disclosureAdded value: +{ + "additionalProperties": false, + "description": "Versioned canonical text that must be shown verbatim; echo version and text_hash with the user's response.", + "properties": { + "kind": { + "const": "credit_report", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" +}
- Changed
homeowners_consumer_prefill3 fields changed- changed
Input schema / properties / credit_consent_pending / descriptionPrevious value: -"Declares that this handoff starts before the shopper has given soft-credit-check consent, so do not ask about credit now. Coverage Cat requests that consent on the homeowners review turn."New value: +"Declares that this handoff starts before the shopper has given consumer-report authorization for insurance underwriting, so do not ask about it now. Coverage Cat requests that authorization on the homeowners review turn." - added
Output schema / properties / review_summary / properties / contact_preferences_disclosuresAdded value: +{ + "additionalProperties": false, + "description": "Optional versioned service-contact disclosures for the phone number on file; no marketing consent and no purchase requirement.", + "properties": { + "service_call": { + "additionalProperties": false, + "description": "Optional service-call disclosure; show its text verbatim before recording a choice.", + "properties": { + "kind": { + "const": "service_call", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" + }, + "service_sms": { + "additionalProperties": false, + "description": "Optional service-text disclosure; show its text verbatim before recording a choice.", + "properties": { + "kind": { + "const": "service_sms", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" + } + }, + "type": "object" +} - added
Output schema / properties / review_summary / properties / credit_consent_disclosureAdded value: +{ + "additionalProperties": false, + "description": "Versioned canonical text that must be shown verbatim; echo version and text_hash with the user's response.", + "properties": { + "kind": { + "const": "credit_report", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" +}
- Changed
homeowners_consumer_select2 fields changed- added
Output schema / properties / contact_preferences_disclosuresAdded value: +{ + "additionalProperties": false, + "description": "Optional versioned service-contact disclosures for the phone number on file; no marketing consent and no purchase requirement.", + "properties": { + "service_call": { + "additionalProperties": false, + "description": "Optional service-call disclosure; show its text verbatim before recording a choice.", + "properties": { + "kind": { + "const": "service_call", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" + }, + "service_sms": { + "additionalProperties": false, + "description": "Optional service-text disclosure; show its text verbatim before recording a choice.", + "properties": { + "kind": { + "const": "service_sms", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" + } + }, + "type": "object" +} - added
Output schema / properties / credit_consent_disclosureAdded value: +{ + "additionalProperties": false, + "description": "Versioned canonical text that must be shown verbatim; echo version and text_hash with the user's response.", + "properties": { + "kind": { + "const": "credit_report", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" +}
- Changed
homeowners_consumer_service2 fields changed- added
Output schema / properties / contact_preferences_disclosuresAdded value: +{ + "additionalProperties": false, + "description": "Optional versioned service-contact disclosures for the phone number on file; no marketing consent and no purchase requirement.", + "properties": { + "service_call": { + "additionalProperties": false, + "description": "Optional service-call disclosure; show its text verbatim before recording a choice.", + "properties": { + "kind": { + "const": "service_call", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" + }, + "service_sms": { + "additionalProperties": false, + "description": "Optional service-text disclosure; show its text verbatim before recording a choice.", + "properties": { + "kind": { + "const": "service_sms", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" + } + }, + "type": "object" +} - added
Output schema / properties / credit_consent_disclosureAdded value: +{ + "additionalProperties": false, + "description": "Versioned canonical text that must be shown verbatim; echo version and text_hash with the user's response.", + "properties": { + "kind": { + "const": "credit_report", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" +}
- Changed
umbrella_consumer_attach2 fields changed- added
Output schema / properties / contact_preferences_disclosuresAdded value: +{ + "additionalProperties": false, + "description": "Optional versioned service-contact disclosures for the phone number on file; no marketing consent and no purchase requirement.", + "properties": { + "service_call": { + "additionalProperties": false, + "description": "Optional service-call disclosure; show its text verbatim before recording a choice.", + "properties": { + "kind": { + "const": "service_call", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" + }, + "service_sms": { + "additionalProperties": false, + "description": "Optional service-text disclosure; show its text verbatim before recording a choice.", + "properties": { + "kind": { + "const": "service_sms", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" + } + }, + "type": "object" +} - added
Output schema / properties / credit_consent_disclosureAdded value: +{ + "additionalProperties": false, + "description": "Versioned canonical text that must be shown verbatim; echo version and text_hash with the user's response.", + "properties": { + "kind": { + "const": "credit_report", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" +}
- Changed
umbrella_consumer_bind2 fields changed- added
Output schema / properties / contact_preferences_disclosuresAdded value: +{ + "additionalProperties": false, + "description": "Optional versioned service-contact disclosures for the phone number on file; no marketing consent and no purchase requirement.", + "properties": { + "service_call": { + "additionalProperties": false, + "description": "Optional service-call disclosure; show its text verbatim before recording a choice.", + "properties": { + "kind": { + "const": "service_call", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" + }, + "service_sms": { + "additionalProperties": false, + "description": "Optional service-text disclosure; show its text verbatim before recording a choice.", + "properties": { + "kind": { + "const": "service_sms", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" + } + }, + "type": "object" +} - added
Output schema / properties / credit_consent_disclosureAdded value: +{ + "additionalProperties": false, + "description": "Versioned canonical text that must be shown verbatim; echo version and text_hash with the user's response.", + "properties": { + "kind": { + "const": "credit_report", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" +}
- Changed
umbrella_consumer_payment2 fields changed- added
Output schema / properties / contact_preferences_disclosuresAdded value: +{ + "additionalProperties": false, + "description": "Optional versioned service-contact disclosures for the phone number on file; no marketing consent and no purchase requirement.", + "properties": { + "service_call": { + "additionalProperties": false, + "description": "Optional service-call disclosure; show its text verbatim before recording a choice.", + "properties": { + "kind": { + "const": "service_call", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" + }, + "service_sms": { + "additionalProperties": false, + "description": "Optional service-text disclosure; show its text verbatim before recording a choice.", + "properties": { + "kind": { + "const": "service_sms", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" + } + }, + "type": "object" +} - added
Output schema / properties / credit_consent_disclosureAdded value: +{ + "additionalProperties": false, + "description": "Versioned canonical text that must be shown verbatim; echo version and text_hash with the user's response.", + "properties": { + "kind": { + "const": "credit_report", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" +}
- Changed
umbrella_consumer_policy2 fields changed- added
Output schema / properties / contact_preferences_disclosuresAdded value: +{ + "additionalProperties": false, + "description": "Optional versioned service-contact disclosures for the phone number on file; no marketing consent and no purchase requirement.", + "properties": { + "service_call": { + "additionalProperties": false, + "description": "Optional service-call disclosure; show its text verbatim before recording a choice.", + "properties": { + "kind": { + "const": "service_call", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" + }, + "service_sms": { + "additionalProperties": false, + "description": "Optional service-text disclosure; show its text verbatim before recording a choice.", + "properties": { + "kind": { + "const": "service_sms", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" + } + }, + "type": "object" +} - added
Output schema / properties / credit_consent_disclosureAdded value: +{ + "additionalProperties": false, + "description": "Versioned canonical text that must be shown verbatim; echo version and text_hash with the user's response.", + "properties": { + "kind": { + "const": "credit_report", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" +}
- Changed
umbrella_consumer_prefill3 fields changed- changed
Input schema / properties / credit_consent_pending / descriptionPrevious value: -"Declares that this handoff starts before the shopper has given soft-credit-check consent, so do not ask about credit now. Coverage Cat requests that consent on `umbrella_consumer_select`, once the shopper picks an offer."New value: +"Declares that this handoff starts before the shopper has given consumer-report authorization for insurance underwriting, so do not ask about it now. Coverage Cat requests that authorization on `umbrella_consumer_select`, once the shopper picks an offer." - added
Output schema / properties / review_summary / properties / contact_preferences_disclosuresAdded value: +{ + "additionalProperties": false, + "description": "Optional versioned service-contact disclosures for the phone number on file; no marketing consent and no purchase requirement.", + "properties": { + "service_call": { + "additionalProperties": false, + "description": "Optional service-call disclosure; show its text verbatim before recording a choice.", + "properties": { + "kind": { + "const": "service_call", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" + }, + "service_sms": { + "additionalProperties": false, + "description": "Optional service-text disclosure; show its text verbatim before recording a choice.", + "properties": { + "kind": { + "const": "service_sms", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" + } + }, + "type": "object" +} - added
Output schema / properties / review_summary / properties / credit_consent_disclosureAdded value: +{ + "additionalProperties": false, + "description": "Versioned canonical text that must be shown verbatim; echo version and text_hash with the user's response.", + "properties": { + "kind": { + "const": "credit_report", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" +}
- Changed
umbrella_consumer_select12 fields changed- changed
Input schema / properties / credit_consent / descriptionPrevious value: -"Real-user consent for a soft credit check, collected on the selection turn when Coverage Cat asks for it."New value: +"The real user's response to Coverage Cat's current consumer-report authorization for insurance underwriting, collected only after Coverage Cat returns the disclosure." - changed
Input schema / properties / credit_consent / properties / answer / descriptionPrevious value: -"Records the shopper's own reply agreeing to Coverage Cat's credit_consent_question. Send it only after the shopper agrees in their own words."New value: +"Records the shopper's own Yes, No or Revoke reply. Preserve declines and revocations; never infer or convert another answer into Yes." - changed
Input schema / properties / credit_consent / properties / answer / enumPrevious value: -[ - "Yes" -]New value: +[ + "Yes", + "No", + "Revoke" +] - changed
Input schema / properties / credit_consent / properties / collected_from_user / descriptionPrevious value: -"Attests that the shopper personally answered the credit consent question in this conversation, rather than the agent assuming their consent."New value: +"Attests that the shopper personally answered the displayed authorization in this conversation, rather than the agent assuming their response." - added
Input schema / properties / credit_consent / properties / disclosure_hashAdded value: +{ + "description": "The text_hash from credit_consent_disclosure.", + "type": "string" +} - added
Input schema / properties / credit_consent / properties / disclosure_versionAdded value: +{ + "description": "The version from credit_consent_disclosure.", + "type": "string" +} - added
Input schema / properties / credit_consent / properties / presentation_referenceAdded value: +{ + "description": "Optional opaque conversation or message reference; do not include message contents or personal information.", + "maxLength": 200, + "type": "string" +} - added
Input schema / properties / credit_consent / properties / presented_atAdded value: +{ + "description": "RFC 3339 timestamp from the assistant runtime for when the complete disclosure was shown. It must be within the prior 24 hours and no more than five minutes in the future.", + "format": "date-time", + "type": "string" +} - added
Input schema / properties / credit_consent / properties / shown_to_userAdded value: +{ + "const": true, + "description": "Attests that the complete returned disclosure text was presented verbatim before the shopper answered.", + "type": "boolean" +} - changed
Input schema / properties / credit_consent / requiredPrevious value: -[ - "answer", - "collected_from_user" -]New value: +[ + "answer", + "collected_from_user", + "shown_to_user", + "disclosure_version", + "disclosure_hash", + "presented_at" +] - added
Output schema / properties / contact_preferences_disclosuresAdded value: +{ + "additionalProperties": false, + "description": "Optional versioned service-contact disclosures for the phone number on file; no marketing consent and no purchase requirement.", + "properties": { + "service_call": { + "additionalProperties": false, + "description": "Optional service-call disclosure; show its text verbatim before recording a choice.", + "properties": { + "kind": { + "const": "service_call", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" + }, + "service_sms": { + "additionalProperties": false, + "description": "Optional service-text disclosure; show its text verbatim before recording a choice.", + "properties": { + "kind": { + "const": "service_sms", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" + } + }, + "type": "object" +} - added
Output schema / properties / credit_consent_disclosureAdded value: +{ + "additionalProperties": false, + "description": "Versioned canonical text that must be shown verbatim; echo version and text_hash with the user's response.", + "properties": { + "kind": { + "const": "credit_report", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" +}
- Changed
umbrella_consumer_service2 fields changed- added
Output schema / properties / contact_preferences_disclosuresAdded value: +{ + "additionalProperties": false, + "description": "Optional versioned service-contact disclosures for the phone number on file; no marketing consent and no purchase requirement.", + "properties": { + "service_call": { + "additionalProperties": false, + "description": "Optional service-call disclosure; show its text verbatim before recording a choice.", + "properties": { + "kind": { + "const": "service_call", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" + }, + "service_sms": { + "additionalProperties": false, + "description": "Optional service-text disclosure; show its text verbatim before recording a choice.", + "properties": { + "kind": { + "const": "service_sms", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" + } + }, + "type": "object" +} - added
Output schema / properties / credit_consent_disclosureAdded value: +{ + "additionalProperties": false, + "description": "Versioned canonical text that must be shown verbatim; echo version and text_hash with the user's response.", + "properties": { + "kind": { + "const": "credit_report", + "type": "string" + }, + "text": { + "minLength": 1, + "type": "string" + }, + "text_hash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "version": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "version", + "text", + "text_hash" + ], + "type": "object" +}
1 tool update
- Added
property_insurance_advice
2 tool updates
- Changed
employee_benefits_planner2 fields changed- added
Output schema / properties / disclaimerAdded value: +{ + "description": "Show this educational-use and professional-advice disclaimer with any benefits guidance.", + "type": "string" +} - changed
Output schema / requiredPrevious value: -[ - "assumptions", - "benefit_actions", - "inputs", - "options", - "questions", - "recommendation", - "sources" -]New value: +[ + "assumptions", + "benefit_actions", + "disclaimer", + "inputs", + "options", + "questions", + "recommendation", + "sources" +]
- Changed
employee_benefits_read_documents2 fields changed- added
Output schema / properties / disclaimerAdded value: +{ + "description": "Show this educational-use and professional-advice disclaimer with any benefits guidance.", + "type": "string" +} - changed
Output schema / requiredPrevious value: -[ - "benefits", - "notes", - "plans" -]New value: +[ + "benefits", + "disclaimer", + "notes", + "plans" +]
2 tool updates
- Added
employee_benefits_planner - Added
employee_benefits_read_documents
15 tool updates
- Changed
consumer_intake_issues1 field changed- added
Output schema / properties / verificationAdded value: +{ + "additionalProperties": false, + "properties": { + "instructions": { + "type": "string" + }, + "request_tool": { + "type": "string" + }, + "required": { + "type": "boolean" + }, + "retry_after_seconds": { + "minimum": 0, + "type": "integer" + }, + "status": { + "enum": [ + "required", + "pending", + "verified", + "not_required" + ], + "type": "string" + }, + "status_tool": { + "type": "string" + } + }, + "required": [ + "status", + "required", + "retry_after_seconds", + "request_tool", + "status_tool", + "instructions" + ], + "type": "object" +}
- Changed
consumer_intake_patch1 field changed- added
Output schema / properties / verificationAdded value: +{ + "additionalProperties": false, + "properties": { + "instructions": { + "type": "string" + }, + "request_tool": { + "type": "string" + }, + "required": { + "type": "boolean" + }, + "retry_after_seconds": { + "minimum": 0, + "type": "integer" + }, + "status": { + "enum": [ + "required", + "pending", + "verified", + "not_required" + ], + "type": "string" + }, + "status_tool": { + "type": "string" + } + }, + "required": [ + "status", + "required", + "retry_after_seconds", + "request_tool", + "status_tool", + "instructions" + ], + "type": "object" +}
- Added
consumer_intake_verify_email - Changed
homeowners_consumer_bind1 field changed- added
Output schema / properties / verificationAdded value: +{ + "additionalProperties": false, + "properties": { + "instructions": { + "type": "string" + }, + "request_tool": { + "type": "string" + }, + "required": { + "type": "boolean" + }, + "retry_after_seconds": { + "minimum": 0, + "type": "integer" + }, + "status": { + "enum": [ + "required", + "pending", + "verified", + "not_required" + ], + "type": "string" + }, + "status_tool": { + "type": "string" + } + }, + "required": [ + "status", + "required", + "retry_after_seconds", + "request_tool", + "status_tool", + "instructions" + ], + "type": "object" +}
- Changed
homeowners_consumer_policy1 field changed- added
Output schema / properties / verificationAdded value: +{ + "additionalProperties": false, + "properties": { + "instructions": { + "type": "string" + }, + "request_tool": { + "type": "string" + }, + "required": { + "type": "boolean" + }, + "retry_after_seconds": { + "minimum": 0, + "type": "integer" + }, + "status": { + "enum": [ + "required", + "pending", + "verified", + "not_required" + ], + "type": "string" + }, + "status_tool": { + "type": "string" + } + }, + "required": [ + "status", + "required", + "retry_after_seconds", + "request_tool", + "status_tool", + "instructions" + ], + "type": "object" +}
- Changed
homeowners_consumer_prefill1 field changed- added
Output schema / properties / review_summary / properties / verificationAdded value: +{ + "additionalProperties": false, + "properties": { + "instructions": { + "type": "string" + }, + "request_tool": { + "type": "string" + }, + "required": { + "type": "boolean" + }, + "retry_after_seconds": { + "minimum": 0, + "type": "integer" + }, + "status": { + "enum": [ + "required", + "pending", + "verified", + "not_required" + ], + "type": "string" + }, + "status_tool": { + "type": "string" + } + }, + "required": [ + "status", + "required", + "retry_after_seconds", + "request_tool", + "status_tool", + "instructions" + ], + "type": "object" +}
- Changed
homeowners_consumer_select1 field changed- added
Output schema / properties / verificationAdded value: +{ + "additionalProperties": false, + "properties": { + "instructions": { + "type": "string" + }, + "request_tool": { + "type": "string" + }, + "required": { + "type": "boolean" + }, + "retry_after_seconds": { + "minimum": 0, + "type": "integer" + }, + "status": { + "enum": [ + "required", + "pending", + "verified", + "not_required" + ], + "type": "string" + }, + "status_tool": { + "type": "string" + } + }, + "required": [ + "status", + "required", + "retry_after_seconds", + "request_tool", + "status_tool", + "instructions" + ], + "type": "object" +}
- Changed
homeowners_consumer_service1 field changed- added
Output schema / properties / verificationAdded value: +{ + "additionalProperties": false, + "properties": { + "instructions": { + "type": "string" + }, + "request_tool": { + "type": "string" + }, + "required": { + "type": "boolean" + }, + "retry_after_seconds": { + "minimum": 0, + "type": "integer" + }, + "status": { + "enum": [ + "required", + "pending", + "verified", + "not_required" + ], + "type": "string" + }, + "status_tool": { + "type": "string" + } + }, + "required": [ + "status", + "required", + "retry_after_seconds", + "request_tool", + "status_tool", + "instructions" + ], + "type": "object" +}
- Changed
umbrella_consumer_attach1 field changed- added
Output schema / properties / verificationAdded value: +{ + "additionalProperties": false, + "properties": { + "instructions": { + "type": "string" + }, + "request_tool": { + "type": "string" + }, + "required": { + "type": "boolean" + }, + "retry_after_seconds": { + "minimum": 0, + "type": "integer" + }, + "status": { + "enum": [ + "required", + "pending", + "verified", + "not_required" + ], + "type": "string" + }, + "status_tool": { + "type": "string" + } + }, + "required": [ + "status", + "required", + "retry_after_seconds", + "request_tool", + "status_tool", + "instructions" + ], + "type": "object" +}
- Changed
umbrella_consumer_bind1 field changed- added
Output schema / properties / verificationAdded value: +{ + "additionalProperties": false, + "properties": { + "instructions": { + "type": "string" + }, + "request_tool": { + "type": "string" + }, + "required": { + "type": "boolean" + }, + "retry_after_seconds": { + "minimum": 0, + "type": "integer" + }, + "status": { + "enum": [ + "required", + "pending", + "verified", + "not_required" + ], + "type": "string" + }, + "status_tool": { + "type": "string" + } + }, + "required": [ + "status", + "required", + "retry_after_seconds", + "request_tool", + "status_tool", + "instructions" + ], + "type": "object" +}
- Changed
umbrella_consumer_payment1 field changed- added
Output schema / properties / verificationAdded value: +{ + "additionalProperties": false, + "properties": { + "instructions": { + "type": "string" + }, + "request_tool": { + "type": "string" + }, + "required": { + "type": "boolean" + }, + "retry_after_seconds": { + "minimum": 0, + "type": "integer" + }, + "status": { + "enum": [ + "required", + "pending", + "verified", + "not_required" + ], + "type": "string" + }, + "status_tool": { + "type": "string" + } + }, + "required": [ + "status", + "required", + "retry_after_seconds", + "request_tool", + "status_tool", + "instructions" + ], + "type": "object" +}
- Changed
umbrella_consumer_policy1 field changed- added
Output schema / properties / verificationAdded value: +{ + "additionalProperties": false, + "properties": { + "instructions": { + "type": "string" + }, + "request_tool": { + "type": "string" + }, + "required": { + "type": "boolean" + }, + "retry_after_seconds": { + "minimum": 0, + "type": "integer" + }, + "status": { + "enum": [ + "required", + "pending", + "verified", + "not_required" + ], + "type": "string" + }, + "status_tool": { + "type": "string" + } + }, + "required": [ + "status", + "required", + "retry_after_seconds", + "request_tool", + "status_tool", + "instructions" + ], + "type": "object" +}
- Changed
umbrella_consumer_prefill1 field changed- added
Output schema / properties / review_summary / properties / verificationAdded value: +{ + "additionalProperties": false, + "properties": { + "instructions": { + "type": "string" + }, + "request_tool": { + "type": "string" + }, + "required": { + "type": "boolean" + }, + "retry_after_seconds": { + "minimum": 0, + "type": "integer" + }, + "status": { + "enum": [ + "required", + "pending", + "verified", + "not_required" + ], + "type": "string" + }, + "status_tool": { + "type": "string" + } + }, + "required": [ + "status", + "required", + "retry_after_seconds", + "request_tool", + "status_tool", + "instructions" + ], + "type": "object" +}
- Changed
umbrella_consumer_select1 field changed- added
Output schema / properties / verificationAdded value: +{ + "additionalProperties": false, + "properties": { + "instructions": { + "type": "string" + }, + "request_tool": { + "type": "string" + }, + "required": { + "type": "boolean" + }, + "retry_after_seconds": { + "minimum": 0, + "type": "integer" + }, + "status": { + "enum": [ + "required", + "pending", + "verified", + "not_required" + ], + "type": "string" + }, + "status_tool": { + "type": "string" + } + }, + "required": [ + "status", + "required", + "retry_after_seconds", + "request_tool", + "status_tool", + "instructions" + ], + "type": "object" +}
- Changed
umbrella_consumer_service1 field changed- added
Output schema / properties / verificationAdded value: +{ + "additionalProperties": false, + "properties": { + "instructions": { + "type": "string" + }, + "request_tool": { + "type": "string" + }, + "required": { + "type": "boolean" + }, + "retry_after_seconds": { + "minimum": 0, + "type": "integer" + }, + "status": { + "enum": [ + "required", + "pending", + "verified", + "not_required" + ], + "type": "string" + }, + "status_tool": { + "type": "string" + } + }, + "required": [ + "status", + "required", + "retry_after_seconds", + "request_tool", + "status_tool", + "instructions" + ], + "type": "object" +}
15 tool updates
- Changed
consumer_intake_issues1 field changed- changed
Input schema / properties / intake_access_token / descriptionPrevious value: -"Bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Send the intake_access_token from the previous successful Coverage Cat response and never show it to the shopper."New value: +"Send the latest intake_access_token from the previous successful Coverage Cat response on each follow-up. Required for stateless MCP 2026-07-28 requests; also accepted by legacy hosts. Keep it private and never show it to the shopper."
- Changed
consumer_intake_patch1 field changed- changed
Input schema / properties / intake_access_token / descriptionPrevious value: -"Bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Send the intake_access_token from the previous successful Coverage Cat response and never show it to the shopper."New value: +"Send the latest intake_access_token from the previous successful Coverage Cat response on each follow-up. Required for stateless MCP 2026-07-28 requests; also accepted by legacy hosts. Keep it private and never show it to the shopper."
- Changed
homeowners_consumer_bind1 field changed- changed
Input schema / properties / intake_access_token / descriptionPrevious value: -"Bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Send the intake_access_token from the previous successful Coverage Cat response and never show it to the shopper."New value: +"Send the latest intake_access_token from the previous successful Coverage Cat response on each follow-up. Required for stateless MCP 2026-07-28 requests; also accepted by legacy hosts. Keep it private and never show it to the shopper."
- Changed
homeowners_consumer_policy1 field changed- changed
Input schema / properties / intake_access_token / descriptionPrevious value: -"Bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Send the intake_access_token from the previous successful Coverage Cat response and never show it to the shopper."New value: +"Send the latest intake_access_token from the previous successful Coverage Cat response on each follow-up. Required for stateless MCP 2026-07-28 requests; also accepted by legacy hosts. Keep it private and never show it to the shopper."
- Changed
homeowners_consumer_select1 field changed- changed
Input schema / properties / intake_access_token / descriptionPrevious value: -"Bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Send the intake_access_token from the previous successful Coverage Cat response and never show it to the shopper."New value: +"Send the latest intake_access_token from the previous successful Coverage Cat response on each follow-up. Required for stateless MCP 2026-07-28 requests; also accepted by legacy hosts. Keep it private and never show it to the shopper."
- Changed
homeowners_consumer_service1 field changed- changed
Input schema / properties / intake_access_token / descriptionPrevious value: -"Bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Send the intake_access_token from the previous successful Coverage Cat response and never show it to the shopper."New value: +"Send the latest intake_access_token from the previous successful Coverage Cat response on each follow-up. Required for stateless MCP 2026-07-28 requests; also accepted by legacy hosts. Keep it private and never show it to the shopper."
- Added
umbrella_bundle_comparison - Changed
umbrella_consumer_attach1 field changed- changed
Input schema / properties / intake_access_token / descriptionPrevious value: -"Bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Send the intake_access_token from the previous successful Coverage Cat response and never show it to the shopper."New value: +"Send the latest intake_access_token from the previous successful Coverage Cat response on each follow-up. Required for stateless MCP 2026-07-28 requests; also accepted by legacy hosts. Keep it private and never show it to the shopper."
- Changed
umbrella_consumer_bind1 field changed- changed
Input schema / properties / intake_access_token / descriptionPrevious value: -"Bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Send the intake_access_token from the previous successful Coverage Cat response and never show it to the shopper."New value: +"Send the latest intake_access_token from the previous successful Coverage Cat response on each follow-up. Required for stateless MCP 2026-07-28 requests; also accepted by legacy hosts. Keep it private and never show it to the shopper."
- Changed
umbrella_consumer_payment1 field changed- changed
Input schema / properties / intake_access_token / descriptionPrevious value: -"Bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Send the intake_access_token from the previous successful Coverage Cat response and never show it to the shopper."New value: +"Send the latest intake_access_token from the previous successful Coverage Cat response on each follow-up. Required for stateless MCP 2026-07-28 requests; also accepted by legacy hosts. Keep it private and never show it to the shopper."
- Changed
umbrella_consumer_policy1 field changed- changed
Input schema / properties / intake_access_token / descriptionPrevious value: -"Bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Send the intake_access_token from the previous successful Coverage Cat response and never show it to the shopper."New value: +"Send the latest intake_access_token from the previous successful Coverage Cat response on each follow-up. Required for stateless MCP 2026-07-28 requests; also accepted by legacy hosts. Keep it private and never show it to the shopper."
- Changed
umbrella_consumer_select1 field changed- changed
Input schema / properties / intake_access_token / descriptionPrevious value: -"Bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Send the intake_access_token from the previous successful Coverage Cat response and never show it to the shopper."New value: +"Send the latest intake_access_token from the previous successful Coverage Cat response on each follow-up. Required for stateless MCP 2026-07-28 requests; also accepted by legacy hosts. Keep it private and never show it to the shopper."
- Changed
umbrella_consumer_service1 field changed- changed
Input schema / properties / intake_access_token / descriptionPrevious value: -"Bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Send the intake_access_token from the previous successful Coverage Cat response and never show it to the shopper."New value: +"Send the latest intake_access_token from the previous successful Coverage Cat response on each follow-up. Required for stateless MCP 2026-07-28 requests; also accepted by legacy hosts. Keep it private and never show it to the shopper."
- Added
umbrella_limit_planner - Added
umbrella_underlying_limit_check
1 tool update
- Changed
umbrella_calculator1 field changed- changed
Input schema / properties / large_watercraft / descriptionPrevious value: -"Count of boats or other large watercraft that add umbrella liability exposure."New value: +"Count of boats of any size; personal watercraft go under jet_skis."
20 tool updates
- Changed
auto_estimates17 fields changed- changed
Input schema / properties / age / descriptionPrevious value: -"Driver age for the quote scenario."New value: +"Age in years of the driver being priced; the model converts it to a birth year." - changed
Input schema / properties / collision_deductible / descriptionPrevious value: -"Collision deductible to use for the estimate scenario."New value: +"Dollars the driver pays toward a collision repair before collision coverage pays the rest. Omitted means $1,000." - changed
Input schema / properties / comprehensive_deductible / descriptionPrevious value: -"Comprehensive deductible to use for the estimate scenario."New value: +"Dollars the driver pays toward non-collision damage, such as theft, hail, or vandalism, before comprehensive coverage pays the rest. Omitted means $1,000." - changed
Input schema / properties / gender / descriptionPrevious value: -"Driver gender value used by the underlying pricing model."New value: +"Driver gender code the pricing model rates on: `M` for male, `F` for female, or `N` when not specified." - changed
Input schema / properties / year / descriptionPrevious value: -"Vehicle model year when you want the estimate to use a specific car."New value: +"Vehicle model year. With make and model it prices a specific car; omit it to price a generic vehicle instead." - added
Output schema / properties / carriers / descriptionAdded value: +"One estimate per carrier the model could price." - added
Output schema / properties / carriers / items / properties / carrier / descriptionAdded value: +"Carrier id, such as `geico`." - added
Output schema / properties / carriers / items / properties / monthly / descriptionAdded value: +"Modeled monthly premium spread for this carrier. Whole US dollars per month." - added
Output schema / properties / carriers / items / properties / monthly / properties / lower / descriptionAdded value: +"Lower end of the typical range." - added
Output schema / properties / carriers / items / properties / monthly / properties / max / descriptionAdded value: +"Highest modeled premium." - added
Output schema / properties / carriers / items / properties / monthly / properties / median / descriptionAdded value: +"Median modeled premium." - added
Output schema / properties / carriers / items / properties / monthly / properties / min / descriptionAdded value: +"Lowest modeled premium." - added
Output schema / properties / carriers / items / properties / monthly / properties / upper / descriptionAdded value: +"Upper end of the typical range." - added
Output schema / properties / carriers / items / properties / name / descriptionAdded value: +"Carrier display name." - added
Output schema / properties / disclaimer / descriptionAdded value: +"Notice that these figures are informational estimates, not binding quotes; relay it with the numbers." - added
Output schema / properties / estimate_unit / descriptionAdded value: +"Unit of the monthly premium spreads: `monthly_premium_usd`." - added
Output schema / properties / inputs / descriptionAdded value: +"Driver, vehicle, and deductible values the model used, with defaults filled in for omitted inputs."
- Changed
collision_and_comprehensive_coverage44 fields changed- changed
Input schema / properties / age / descriptionPrevious value: -"Driver age for the quote scenario."New value: +"Age in years of the driver being priced; the model converts it to a birth year." - changed
Input schema / properties / collision_deductible / descriptionPrevious value: -"Collision deductible to use for the estimate scenario."New value: +"Dollars the driver pays toward a collision repair before collision coverage pays the rest. Omitted means $1,000." - changed
Input schema / properties / comprehensive_deductible / descriptionPrevious value: -"Comprehensive deductible to use for the estimate scenario."New value: +"Dollars the driver pays toward non-collision damage, such as theft, hail, or vandalism, before comprehensive coverage pays the rest. Omitted means $1,000." - changed
Input schema / properties / gender / descriptionPrevious value: -"Driver gender value used by the underlying pricing model."New value: +"Driver gender code the pricing model rates on: `M` for male, `F` for female, or `N` when not specified." - changed
Input schema / properties / year / descriptionPrevious value: -"Vehicle model year when you want the estimate to use a specific car."New value: +"Vehicle model year. With make and model it prices a specific car; omit it to price a generic vehicle instead." - added
Output schema / properties / cumulative_annual_scenarios / descriptionAdded value: +"Running premium totals for the without, collision-only, and both coverage options." - added
Output schema / properties / cumulative_annual_scenarios / items / properties / cumulative_annual_premiums / descriptionAdded value: +"Total premium in US dollars paid by the end of each year from 1 to projection_years, based on the median monthly premium." - added
Output schema / properties / cumulative_annual_scenarios / items / properties / label / descriptionAdded value: +"Shopper-facing scenario name." - added
Output schema / properties / cumulative_annual_scenarios / items / properties / scenario / descriptionAdded value: +"Scenario key in monthly_estimates: `without`, `collision`, or `both`." - added
Output schema / properties / disclaimer / descriptionAdded value: +"Notice that these figures are informational estimates, not binding quotes; relay it with the numbers." - added
Output schema / properties / estimate_unit / descriptionAdded value: +"Unit of the monthly premium spreads: `monthly_premium_usd`." - added
Output schema / properties / inputs / descriptionAdded value: +"Driver, vehicle, and deductible values the model used, with defaults filled in for omitted inputs." - added
Output schema / properties / monthly_estimates / descriptionAdded value: +"Monthly premium spread for each coverage scenario." - added
Output schema / properties / monthly_estimates / properties / both / descriptionAdded value: +"With collision and comprehensive coverage. Whole US dollars per month." - added
Output schema / properties / monthly_estimates / properties / both / properties / lower / descriptionAdded value: +"Lower end of the typical range." - added
Output schema / properties / monthly_estimates / properties / both / properties / max / descriptionAdded value: +"Highest modeled premium." - added
Output schema / properties / monthly_estimates / properties / both / properties / median / descriptionAdded value: +"Median modeled premium." - added
Output schema / properties / monthly_estimates / properties / both / properties / min / descriptionAdded value: +"Lowest modeled premium." - added
Output schema / properties / monthly_estimates / properties / both / properties / upper / descriptionAdded value: +"Upper end of the typical range." - added
Output schema / properties / monthly_estimates / properties / both_claim / descriptionAdded value: +"With collision and comprehensive coverage, after one claim. Whole US dollars per month." - added
Output schema / properties / monthly_estimates / properties / both_claim / properties / lower / descriptionAdded value: +"Lower end of the typical range." - added
Output schema / properties / monthly_estimates / properties / both_claim / properties / max / descriptionAdded value: +"Highest modeled premium." - added
Output schema / properties / monthly_estimates / properties / both_claim / properties / median / descriptionAdded value: +"Median modeled premium." - added
Output schema / properties / monthly_estimates / properties / both_claim / properties / min / descriptionAdded value: +"Lowest modeled premium." - added
Output schema / properties / monthly_estimates / properties / both_claim / properties / upper / descriptionAdded value: +"Upper end of the typical range." - added
Output schema / properties / monthly_estimates / properties / collision / descriptionAdded value: +"With collision coverage only. Whole US dollars per month." - added
Output schema / properties / monthly_estimates / properties / collision / properties / lower / descriptionAdded value: +"Lower end of the typical range." - added
Output schema / properties / monthly_estimates / properties / collision / properties / max / descriptionAdded value: +"Highest modeled premium." - added
Output schema / properties / monthly_estimates / properties / collision / properties / median / descriptionAdded value: +"Median modeled premium." - added
Output schema / properties / monthly_estimates / properties / collision / properties / min / descriptionAdded value: +"Lowest modeled premium." - added
Output schema / properties / monthly_estimates / properties / collision / properties / upper / descriptionAdded value: +"Upper end of the typical range." - added
Output schema / properties / monthly_estimates / properties / collision_claim / descriptionAdded value: +"With collision coverage only, after one claim. Whole US dollars per month." - added
Output schema / properties / monthly_estimates / properties / collision_claim / properties / lower / descriptionAdded value: +"Lower end of the typical range." - added
Output schema / properties / monthly_estimates / properties / collision_claim / properties / max / descriptionAdded value: +"Highest modeled premium." - added
Output schema / properties / monthly_estimates / properties / collision_claim / properties / median / descriptionAdded value: +"Median modeled premium." - added
Output schema / properties / monthly_estimates / properties / collision_claim / properties / min / descriptionAdded value: +"Lowest modeled premium." - added
Output schema / properties / monthly_estimates / properties / collision_claim / properties / upper / descriptionAdded value: +"Upper end of the typical range." - added
Output schema / properties / monthly_estimates / properties / without / descriptionAdded value: +"Without collision or comprehensive coverage. Whole US dollars per month." - added
Output schema / properties / monthly_estimates / properties / without / properties / lower / descriptionAdded value: +"Lower end of the typical range." - added
Output schema / properties / monthly_estimates / properties / without / properties / max / descriptionAdded value: +"Highest modeled premium." - added
Output schema / properties / monthly_estimates / properties / without / properties / median / descriptionAdded value: +"Median modeled premium." - added
Output schema / properties / monthly_estimates / properties / without / properties / min / descriptionAdded value: +"Lowest modeled premium." - added
Output schema / properties / monthly_estimates / properties / without / properties / upper / descriptionAdded value: +"Upper end of the typical range." - added
Output schema / properties / projection_years / descriptionAdded value: +"Number of years the cumulative projections cover."
- Changed
consumer_intake_patch5 fields changed- changed
Input schema / properties / field_estimates / descriptionPrevious value: -"Umbrella provenance rows for inferred values included in the same patch. Each row names the inferred `field` path, its `source`, and a `confidence` of low, medium, or high. Send rows only when you are certain each field path matches a current umbrella review field."New value: +"Umbrella provenance for values in this same patch that you inferred rather than heard from the shopper, one row per inferred value. Add rows only when you are certain each field path matches a current umbrella review field." - added
Input schema / properties / field_estimates / items / propertiesAdded value: +{ + "confidence": { + "description": "How strongly your source supports the inferred value.", + "enum": [ + "low", + "medium", + "high" + ], + "type": "string" + }, + "field": { + "description": "Intake dot-path of the inferred value, matching the key you sent under `intake`, such as `address.zip`.", + "type": "string" + }, + "source": { + "description": "Free-form label for where the inferred value came from, such as `policy_declarations`, `email_thread`, or a property-data provider.", + "type": "string" + } +} - added
Input schema / properties / field_estimates / items / requiredAdded value: +[ + "field", + "source", + "confidence" +] - changed
Input schema / properties / idempotency_key / descriptionPrevious value: -"Retry key you generate for one logical consumer_intake_patch request. If you retry after a timeout or transport failure, resend the identical arguments with the same idempotency_key. Coverage Cat replays the cached successful result for 24 hours and rejects a changed payload under the same key."New value: +"Key you generate to identify one logical consumer_intake_patch request, so a retry cannot apply it twice. After a timeout or transport failure, retry with the same key and identical arguments to get the original result back; Coverage Cat keeps that result for 24 hours and rejects different arguments sent under a used key." - changed
Input schema / properties / intake / properties / current_auto_coverages / descriptionPrevious value: -"Band for the shopper's current underlying auto liability limits: `unsure` means I'm not sure; `500k/1m` means $500k/$1 Million/$100k or higher; `500k/500k` means $500k/$500k/$100k or $500k CSL; `300k/300k` means $250k/$500k/$100k or $300k/$300k/$100k or $300k CSL; `100k/300k` means $100k/$300k/$100k or lower. Choose the strongest band the shopper's actual limits fully satisfy. Underlying auto limits gate umbrella eligibility, so reserve `unsure` for limits the shopper genuinely does not know."New value: +"Which band the shopper's current underlying auto liability limits fall into: `500k/1m` covers $500k/$1 Million/$100k or higher; `500k/500k` covers $500k/$500k/$100k or $500k CSL; `300k/300k` covers $250k/$500k/$100k or $300k/$300k/$100k or $300k CSL; `100k/300k` covers $100k/$300k/$100k or lower. Pick the strongest band the shopper's actual limits fully satisfy. Underlying auto limits gate umbrella eligibility, so use `unsure` only when the shopper genuinely does not know their limits."
- Changed
docs_get_resource4 fields changed- added
Output schema / properties / href / descriptionAdded value: +"Public web URL for the same content, or null when the resource has no public page." - added
Output schema / properties / mime_type / descriptionAdded value: +"Format of text, such as `text/markdown`, `application/json`, or `text/yaml`." - added
Output schema / properties / text / descriptionAdded value: +"The full resource body in mime_type format." - added
Output schema / properties / uri / descriptionAdded value: +"The resource URI that was read."
- Changed
docs_list_topics11 fields changed- changed
Input schema / properties / category / descriptionPrevious value: -"Optional docs category to browse. Use `all` for the full catalog or narrow to developers, api, or skills."New value: +"Docs category to browse: `developers` for guides such as quickstart, auth, sandbox, and MCP setup, `api` for discovery and OpenAPI documents, `skills` for runtime skill guides, or `all`. Omit it to browse every category." - changed
Input schema / properties / limit / descriptionPrevious value: -"Maximum number of topic entries to return from the filtered catalog."New value: +"How many topics to return from the start of the filtered catalog. Omit it to get up to 25." - added
Output schema / properties / category / descriptionAdded value: +"Category filter that was applied." - added
Output schema / properties / topics / descriptionAdded value: +"Topics in catalog order." - added
Output schema / properties / topics / items / properties / category / descriptionAdded value: +"Docs category: `developers`, `api`, or `skills`." - added
Output schema / properties / topics / items / properties / href / descriptionAdded value: +"Public web URL for the same content." - added
Output schema / properties / topics / items / properties / mime_type / descriptionAdded value: +"Format of the resource body, such as `text/markdown` or `text/yaml`." - added
Output schema / properties / topics / items / properties / summary / descriptionAdded value: +"What the topic covers." - added
Output schema / properties / topics / items / properties / title / descriptionAdded value: +"Human-readable topic title." - added
Output schema / properties / topics / items / properties / uri / descriptionAdded value: +"Resource URI to pass to docs_get_resource." - added
Output schema / properties / total / descriptionAdded value: +"Number of topics in this response after limit, not the size of the whole catalog."
- Changed
docs_search10 fields changed- changed
Input schema / properties / limit / descriptionPrevious value: -"Maximum number of matching documentation topics to return."New value: +"How many of the best-ranked topics to return. Omit it to get the top 5." - added
Output schema / properties / matches / descriptionAdded value: +"Matching topics, best match first." - added
Output schema / properties / matches / items / properties / category / descriptionAdded value: +"Docs category: `developers`, `api`, or `skills`." - added
Output schema / properties / matches / items / properties / href / descriptionAdded value: +"Public web URL for the same content." - added
Output schema / properties / matches / items / properties / mime_type / descriptionAdded value: +"Format of the resource body, such as `text/markdown` or `text/yaml`." - added
Output schema / properties / matches / items / properties / summary / descriptionAdded value: +"What the topic covers." - added
Output schema / properties / matches / items / properties / title / descriptionAdded value: +"Human-readable topic title." - added
Output schema / properties / matches / items / properties / uri / descriptionAdded value: +"Resource URI to pass to docs_get_resource." - added
Output schema / properties / query / descriptionAdded value: +"The search query after trimming whitespace." - added
Output schema / properties / total / descriptionAdded value: +"Number of matches in this response after limit, not every topic that matched."
- Changed
file_a_claim29 fields changed- changed
Input schema / properties / age / descriptionPrevious value: -"Driver age for the quote scenario."New value: +"Age in years of the driver being priced; the model converts it to a birth year." - changed
Input schema / properties / collision_deductible / descriptionPrevious value: -"Collision deductible to use for the estimate scenario."New value: +"Dollars the driver pays toward a collision repair before collision coverage pays the rest. Omitted means $1,000." - changed
Input schema / properties / comprehensive_deductible / descriptionPrevious value: -"Comprehensive deductible to use for the estimate scenario."New value: +"Dollars the driver pays toward non-collision damage, such as theft, hail, or vandalism, before comprehensive coverage pays the rest. Omitted means $1,000." - changed
Input schema / properties / gender / descriptionPrevious value: -"Driver gender value used by the underlying pricing model."New value: +"Driver gender code the pricing model rates on: `M` for male, `F` for female, or `N` when not specified." - changed
Input schema / properties / year / descriptionPrevious value: -"Vehicle model year when you want the estimate to use a specific car."New value: +"Vehicle model year. With make and model it prices a specific car; omit it to price a generic vehicle instead." - added
Output schema / properties / claim_monthly / descriptionAdded value: +"Monthly premium spread after filing one claim. Whole US dollars per month." - added
Output schema / properties / claim_monthly / properties / lower / descriptionAdded value: +"Lower end of the typical range." - added
Output schema / properties / claim_monthly / properties / max / descriptionAdded value: +"Highest modeled premium." - added
Output schema / properties / claim_monthly / properties / median / descriptionAdded value: +"Median modeled premium." - added
Output schema / properties / claim_monthly / properties / min / descriptionAdded value: +"Lowest modeled premium." - added
Output schema / properties / claim_monthly / properties / upper / descriptionAdded value: +"Upper end of the typical range." - added
Output schema / properties / deductible / descriptionAdded value: +"Collision deductible paid when filing." - added
Output schema / properties / disclaimer / descriptionAdded value: +"Notice that these figures are informational estimates, not binding quotes; relay it with the numbers." - added
Output schema / properties / estimate_unit / descriptionAdded value: +"Currency of every dollar figure: `usd`." - added
Output schema / properties / inputs / descriptionAdded value: +"Driver, vehicle, and deductible values the model used, with defaults filled in for omitted inputs." - added
Output schema / properties / monthly_increase / descriptionAdded value: +"Median monthly premium increase after the claim." - added
Output schema / properties / no_claim_monthly / descriptionAdded value: +"Monthly premium spread with no claim on record. Whole US dollars per month." - added
Output schema / properties / no_claim_monthly / properties / lower / descriptionAdded value: +"Lower end of the typical range." - added
Output schema / properties / no_claim_monthly / properties / max / descriptionAdded value: +"Highest modeled premium." - added
Output schema / properties / no_claim_monthly / properties / median / descriptionAdded value: +"Median modeled premium." - added
Output schema / properties / no_claim_monthly / properties / min / descriptionAdded value: +"Lowest modeled premium." - added
Output schema / properties / no_claim_monthly / properties / upper / descriptionAdded value: +"Upper end of the typical range." - added
Output schema / properties / premium_impact_years / descriptionAdded value: +"Years the higher premium is assumed to last." - added
Output schema / properties / premium_increase / descriptionAdded value: +"Total extra premium over premium_impact_years." - added
Output schema / properties / recommendation / descriptionAdded value: +"Whether filing or paying out of pocket costs less; null when no repair estimate was read." - added
Output schema / properties / recommendation / properties / action / descriptionAdded value: +"`file_claim` when repair_estimate exceeds total_claim_cost, otherwise `pay_out_of_pocket`." - added
Output schema / properties / recommendation / properties / estimated_savings / descriptionAdded value: +"Dollars saved by taking action instead of the alternative." - added
Output schema / properties / repair_estimate / descriptionAdded value: +"The repair estimate you sent." - added
Output schema / properties / total_claim_cost / descriptionAdded value: +"Total cost of filing: deductible plus premium_increase."
- Changed
home_calculator21 fields changed- added
Output schema / properties / available_risk_factors / descriptionAdded value: +"Every risk factor you can pass in risk_factors, whether or not it was applied." - added
Output schema / properties / available_risk_factors / items / properties / id / descriptionAdded value: +"Value to send in risk_factors." - added
Output schema / properties / available_risk_factors / items / properties / impact_pct / descriptionAdded value: +"Percent the factor adds to the premium." - added
Output schema / properties / available_risk_factors / items / properties / label / descriptionAdded value: +"Shopper-facing name of the factor." - added
Output schema / properties / disclaimer / descriptionAdded value: +"Notice that these figures are informational estimates, not binding quotes; relay it with the numbers." - added
Output schema / properties / estimate / descriptionAdded value: +"Premium range for the home, in US dollars." - added
Output schema / properties / estimate / properties / annual_high / descriptionAdded value: +"High end of the annual premium range." - added
Output schema / properties / estimate / properties / annual_low / descriptionAdded value: +"Low end of the annual premium range." - added
Output schema / properties / estimate / properties / annual_mid / descriptionAdded value: +"Typical annual premium." - added
Output schema / properties / estimate / properties / monthly_high / descriptionAdded value: +"High end of the monthly premium range." - added
Output schema / properties / estimate / properties / monthly_low / descriptionAdded value: +"Low end of the monthly premium range." - added
Output schema / properties / estimate / properties / monthly_mid / descriptionAdded value: +"Typical monthly premium." - added
Output schema / properties / estimate / properties / risk_factor_count / descriptionAdded value: +"How many recognized risk factors were applied." - added
Output schema / properties / estimate / properties / zip / descriptionAdded value: +"ZIP code the estimate priced." - added
Output schema / properties / estimate / properties / zip_risk / descriptionAdded value: +"ZIP-level premium tier before risk factors: `Standard`, `Moderate`, `Elevated`, or `High`." - added
Output schema / properties / estimate_unit / descriptionAdded value: +"Currency of every estimate figure: `usd`." - added
Output schema / properties / inputs / descriptionAdded value: +"The ZIP, square footage, and risk-factor ids the estimate used." - added
Output schema / properties / inputs / properties / home_sqft / descriptionAdded value: +"Living area in square feet." - added
Output schema / properties / inputs / properties / risk_factors / descriptionAdded value: +"Risk-factor ids as sent, including any the estimator did not recognize." - added
Output schema / properties / inputs / properties / zip / descriptionAdded value: +"ZIP code that was priced." - added
Output schema / properties / zip_facts / descriptionAdded value: +"Context notes that explain the ZIP's premium tier."
- Changed
homeowners_agent_finder24 fields changed- changed
Input schema / properties / limit / descriptionPrevious value: -"Maximum number of matching agent records to return."New value: +"How many agent records to return. Omit it to get up to 25; Coverage Cat returns at most 50 even when asked for more." - changed
Input schema / properties / lines / descriptionPrevious value: -"Optional insurance lines to match, such as `homeowners`, `condominium`, or `dwelling_fire`."New value: +"Insurance lines the agent should handle, such as `homeowners`, `condominium`, `dwelling_fire`, or `renters`; an agent listed for any of them matches, and synonyms such as `condo` are normalized. Omit it to search homeowners agents." - added
Output schema / properties / agents / descriptionAdded value: +"Matching agents and agencies, up to the requested limit." - added
Output schema / properties / agents / items / properties / agency / descriptionAdded value: +"Agency the agent works for." - added
Output schema / properties / agents / items / properties / company / descriptionAdded value: +"Agency and carrier affiliations, such as represented insurers." - added
Output schema / properties / agents / items / properties / contact / descriptionAdded value: +"Published phone, email, and address." - added
Output schema / properties / agents / items / properties / insurer / descriptionAdded value: +"California only: insurer the agent is appointed with." - added
Output schema / properties / agents / items / properties / languages / descriptionAdded value: +"Languages the agent lists, when the state publishes them." - added
Output schema / properties / agents / items / properties / last_updated_at / descriptionAdded value: +"When Coverage Cat last saw this record in the state data." - added
Output schema / properties / agents / items / properties / license_number / descriptionAdded value: +"State insurance license number." - added
Output schema / properties / agents / items / properties / lines / descriptionAdded value: +"Insurance lines listed for the agent." - added
Output schema / properties / agents / items / properties / links / descriptionAdded value: +"URLs for the source record and, when available, the license lookup." - added
Output schema / properties / agents / items / properties / location / descriptionAdded value: +"Office address, city, state, and zip; California records add coordinates and distance_miles from the searched ZIP." - added
Output schema / properties / agents / items / properties / name / descriptionAdded value: +"Agent or firm name." - added
Output schema / properties / agents / items / properties / source / descriptionAdded value: +"Name of the state dataset the record came from." - added
Output schema / properties / agents / items / properties / state / descriptionAdded value: +"State whose licensing data lists the agent." - added
Output schema / properties / last_updated_at / descriptionAdded value: +"Most recent refresh time across the returned agents; null when none were returned." - added
Output schema / properties / lines / descriptionAdded value: +"Normalized insurance lines the search matched against." - added
Output schema / properties / result_count / descriptionAdded value: +"Number of agents returned." - added
Output schema / properties / source_label / descriptionAdded value: +"Licensing data source, such as `CA Dept of Insurance`; null outside supported states." - added
Output schema / properties / state / descriptionAdded value: +"Two-letter state code for the ZIP." - added
Output schema / properties / state_name / descriptionAdded value: +"Full state name for the ZIP." - added
Output schema / properties / supported_states / descriptionAdded value: +"States the finder has licensing data for." - added
Output schema / properties / zip / descriptionAdded value: +"ZIP code that was searched."
- Changed
homeowners_consumer_bind2 fields changed- changed
Input schema / properties / bind_confirmed / descriptionPrevious value: -"Set this to true only after the shopper approves the previewed homeowners bind terms in chat."New value: +"Attests that the shopper approved the previewed homeowners bind terms in chat, including email delivery of any carrier payment or signing links." - changed
Input schema / properties / idempotency_key / descriptionPrevious value: -"Retry key you generate for one logical homeowners_consumer_bind request. If you retry after a timeout or transport failure, resend the identical arguments with the same idempotency_key. Coverage Cat replays the cached successful result for 24 hours and rejects a changed payload under the same key."New value: +"Key you generate to identify one logical homeowners_consumer_bind request, so a retry cannot apply it twice. After a timeout or transport failure, retry with the same key and identical arguments to get the original result back; Coverage Cat keeps that result for 24 hours and rejects different arguments sent under a used key."
- Changed
homeowners_consumer_prefill5 fields changed- changed
Input schema / properties / credit_consent_pending / descriptionPrevious value: -"Acknowledges that the shopper has not given soft-credit-check consent yet. Coverage Cat collects that consent on the homeowners review turn."New value: +"Declares that this handoff starts before the shopper has given soft-credit-check consent, so do not ask about credit now. Coverage Cat requests that consent on the homeowners review turn." - changed
Input schema / properties / field_estimates / descriptionPrevious value: -"Provenance rows for home values you inferred rather than heard from the shopper, stored on the first `intake.home` row. Each row names the inferred home `field`, its `source`, and a `confidence` of low, medium, or high."New value: +"Provenance for home values you inferred from context or property data rather than heard from the shopper, one row per inferred value. Coverage Cat stores the rows on the first `intake.home` row." - added
Input schema / properties / field_estimates / items / propertiesAdded value: +{ + "confidence": { + "description": "How strongly your source supports the inferred value.", + "enum": [ + "low", + "medium", + "high" + ], + "type": "string" + }, + "field": { + "description": "Name of the inferred field on the `intake.home` row, such as `home_sqft`.", + "type": "string" + }, + "source": { + "description": "Free-form label for where the inferred value came from, such as `policy_declarations`, `email_thread`, or a property-data provider.", + "type": "string" + } +} - added
Input schema / properties / field_estimates / items / requiredAdded value: +[ + "field", + "source", + "confidence" +] - changed
Input schema / properties / idempotency_key / descriptionPrevious value: -"Retry key you generate for one logical homeowners_consumer_prefill request. If you retry after a timeout or transport failure, resend the identical arguments with the same idempotency_key. Coverage Cat replays the cached successful result for 24 hours and rejects a changed payload under the same key."New value: +"Key you generate to identify one logical homeowners_consumer_prefill request, so a retry cannot apply it twice. After a timeout or transport failure, retry with the same key and identical arguments to get the original result back; Coverage Cat keeps that result for 24 hours and rejects different arguments sent under a used key."
- Changed
homeowners_consumer_select2 fields changed- changed
Input schema / properties / idempotency_key / descriptionPrevious value: -"Retry key you generate for one logical homeowners_consumer_select request. If you retry after a timeout or transport failure, resend the identical arguments with the same idempotency_key. Coverage Cat replays the cached successful result for 24 hours and rejects a changed payload under the same key."New value: +"Key you generate to identify one logical homeowners_consumer_select request, so a retry cannot apply it twice. After a timeout or transport failure, retry with the same key and identical arguments to get the original result back; Coverage Cat keeps that result for 24 hours and rejects different arguments sent under a used key." - changed
Input schema / properties / selection_confirmed / descriptionPrevious value: -"Confirms the shopper explicitly chose this offer in chat."New value: +"Attests that the shopper explicitly picked the offer named by selection_token in chat, rather than the agent choosing for them."
- Changed
homeowners_consumer_service3 fields changed- changed
Input schema / properties / idempotency_key / descriptionPrevious value: -"Retry key you generate for one logical homeowners_consumer_service request. If you retry after a timeout or transport failure, resend the identical arguments with the same idempotency_key. Coverage Cat replays the cached successful result for 24 hours and rejects a changed payload under the same key."New value: +"Key you generate to identify one logical homeowners_consumer_service request, so a retry cannot apply it twice. After a timeout or transport failure, retry with the same key and identical arguments to get the original result back; Coverage Cat keeps that result for 24 hours and rejects different arguments sent under a used key." - changed
Input schema / properties / request_type / descriptionPrevious value: -"Post-purchase action to preview or open: `policy_cancellation` asks the carrier to cancel the policy as of requested_effective_date, `refund_request` asks the carrier or billing provider to review a refund or outstanding balance without changing coverage, and `support_case` opens a general support case."New value: +"What the shopper wants done after purchase. `policy_cancellation` asks the carrier to end the policy on requested_effective_date; `refund_request` asks the carrier or billing provider to review a refund or outstanding balance without changing coverage; `support_case` opens a general support case for anything else." - changed
Input schema / properties / requested_effective_date / descriptionPrevious value: -"Date the shopper wants a policy_cancellation to take effect. The carrier reviews it and may approve a different date."New value: +"Day the shopper wants a cancellation to take effect; used only for policy_cancellation. It is a request: the carrier reviews it and may set a different date."
- Changed
umbrella_calculator18 fields changed- changed
Input schema / properties / at_fault_accidents / descriptionPrevious value: -"Recent at-fault accidents that should be reflected in the umbrella risk profile."New value: +"Total at-fault accidents across all household drivers. Omitted counts as none; a high count can move the profile to specialized review or make it ineligible for instant pricing." - changed
Input schema / properties / moving_violations / descriptionPrevious value: -"Recent moving violations that should be reflected in the umbrella risk profile."New value: +"Total moving violations across all household drivers. Omitted counts as none; a high count can move the profile to specialized review or make it ineligible for instant pricing." - added
Output schema / properties / disclaimer / descriptionAdded value: +"Notice that these figures are informational estimates, not binding quotes; relay it with the numbers." - added
Output schema / properties / estimate / descriptionAdded value: +"Risk class and annual premium bands." - added
Output schema / properties / estimate / properties / class / descriptionAdded value: +"Risk class inferred from the household profile, such as `preferred` or `standard`." - added
Output schema / properties / estimate / properties / prices / descriptionAdded value: +"One annual premium band per umbrella limit available in the state." - added
Output schema / properties / estimate / properties / prices / items / properties / coverage_millions / descriptionAdded value: +"Umbrella limit in millions of dollars." - added
Output schema / properties / estimate / properties / prices / items / properties / high / descriptionAdded value: +"High end of the annual premium band." - added
Output schema / properties / estimate / properties / prices / items / properties / low / descriptionAdded value: +"Low end of the annual premium band." - added
Output schema / properties / estimate / properties / prices / items / properties / mid / descriptionAdded value: +"Typical annual premium." - added
Output schema / properties / estimate / properties / umbrella_class / descriptionAdded value: +"Class used for pricing; it adds `_with_youth` to a standard class when any driver is under 22." - added
Output schema / properties / estimate_unit / descriptionAdded value: +"Unit of every price: `annual_premium_usd`, annual premium in US dollars." - added
Output schema / properties / factor_impacts / descriptionAdded value: +"Household factors that moved the profile off the best (`preferred`) class; empty when none did." - added
Output schema / properties / factor_impacts / items / properties / factor / descriptionAdded value: +"Internal factor id, such as `moving_violation_count`." - added
Output schema / properties / factor_impacts / items / properties / impact / descriptionAdded value: +"Class this factor alone puts the profile in." - added
Output schema / properties / factor_impacts / items / properties / label / descriptionAdded value: +"Shopper-facing name of the factor." - added
Output schema / properties / factor_impacts / items / properties / value / descriptionAdded value: +"Count the estimate used for this factor." - added
Output schema / properties / inputs / descriptionAdded value: +"The household counts you sent, parsed to integers; omitted counts are left out."
- Changed
umbrella_consumer_attach7 fields changed- changed
Input schema / properties / attachments / items / properties / content / descriptionPrevious value: -"Full contents of the declarations file named by filename."New value: +"The whole declarations document named by filename, not an excerpt, summary, or extracted text." - changed
Input schema / properties / attachments / items / properties / filename / descriptionPrevious value: -"File name including its extension. Coverage Cat infers the file type from the extension and accepts PDF, JPEG, or PNG."New value: +"Original file name with its extension, such as `home-declarations.pdf`. Coverage Cat reads the file type from the extension and accepts PDF, JPEG, or PNG files." - changed
Input schema / properties / attachments / items / properties / type / descriptionPrevious value: -"Which declarations page the file is: `declarations` for the home, condo, renters, or landlord policy, `auto_declarations` for the auto policy."New value: +"Which policy the declarations page belongs to: `declarations` for the home, condo, renters, or landlord policy, or `auto_declarations` for the auto policy. Match the upload types Coverage Cat listed in `required_upload_types`." - changed
Input schema / properties / content / descriptionPrevious value: -"Full contents of the declarations file named by filename."New value: +"The whole declarations document named by filename, not an excerpt, summary, or extracted text." - changed
Input schema / properties / filename / descriptionPrevious value: -"File name including its extension. Coverage Cat infers the file type from the extension and accepts PDF, JPEG, or PNG."New value: +"Original file name with its extension, such as `home-declarations.pdf`. Coverage Cat reads the file type from the extension and accepts PDF, JPEG, or PNG files." - changed
Input schema / properties / idempotency_key / descriptionPrevious value: -"Retry key you generate for one logical umbrella_consumer_attach request. If you retry after a timeout or transport failure, resend the identical arguments with the same idempotency_key. Coverage Cat replays the cached successful result for 24 hours and rejects a changed payload under the same key."New value: +"Key you generate to identify one logical umbrella_consumer_attach request, so a retry cannot apply it twice. After a timeout or transport failure, retry with the same key and identical arguments to get the original result back; Coverage Cat keeps that result for 24 hours and rejects different arguments sent under a used key." - changed
Input schema / properties / type / descriptionPrevious value: -"Which declarations page the file is: `declarations` for the home, condo, renters, or landlord policy, `auto_declarations` for the auto policy."New value: +"Which policy the declarations page belongs to: `declarations` for the home, condo, renters, or landlord policy, or `auto_declarations` for the auto policy. Match the upload types Coverage Cat listed in `required_upload_types`."
- Changed
umbrella_consumer_bind1 field changed- changed
Input schema / properties / idempotency_key / descriptionPrevious value: -"Retry key you generate for one logical umbrella_consumer_bind request. If you retry after a timeout or transport failure, resend the identical arguments with the same idempotency_key. Coverage Cat replays the cached successful result for 24 hours and rejects a changed payload under the same key."New value: +"Key you generate to identify one logical umbrella_consumer_bind request, so a retry cannot apply it twice. After a timeout or transport failure, retry with the same key and identical arguments to get the original result back; Coverage Cat keeps that result for 24 hours and rejects different arguments sent under a used key."
- Changed
umbrella_consumer_payment2 fields changed- changed
Input schema / properties / idempotency_key / descriptionPrevious value: -"Retry key you generate for one logical umbrella_consumer_payment request. If you retry after a timeout or transport failure, resend the identical arguments with the same idempotency_key. Coverage Cat replays the cached successful result for 24 hours and rejects a changed payload under the same key."New value: +"Key you generate to identify one logical umbrella_consumer_payment request, so a retry cannot apply it twice. After a timeout or transport failure, retry with the same key and identical arguments to get the original result back; Coverage Cat keeps that result for 24 hours and rejects different arguments sent under a used key." - changed
Input schema / properties / payment_collection_requested / descriptionPrevious value: -"Use true on the first payment call to request Stripe publishable_key, client_secret, and setup_intent_id."New value: +"Starts secure card collection: Coverage Cat prepares a Stripe SetupIntent and returns the publishable_key, client_secret, and setup_intent_id the registered payment UI needs. Send it on the first payment call, without setup_intent_id or payment_method_id."
- Changed
umbrella_consumer_prefill6 fields changed- changed
Input schema / properties / credit_consent_pending / descriptionPrevious value: -"Acknowledges that the shopper has not given soft-credit-check consent yet. Coverage Cat collects that consent on `umbrella_consumer_select`, after an umbrella offer is chosen."New value: +"Declares that this handoff starts before the shopper has given soft-credit-check consent, so do not ask about credit now. Coverage Cat requests that consent on `umbrella_consumer_select`, once the shopper picks an offer." - changed
Input schema / properties / field_estimates / descriptionPrevious value: -"Provenance rows for intake values you inferred rather than heard from the shopper. Each row names the inferred `field` path, its `source`, and a `confidence` of low, medium, or high. On the initial umbrella handoff, send rows only when each field path already matches a current umbrella review field."New value: +"Provenance for intake values you inferred from context rather than heard from the shopper, one row per inferred value. On the initial umbrella handoff, add rows only for fields that already appear in the current umbrella review; otherwise send `intake` alone." - added
Input schema / properties / field_estimates / items / propertiesAdded value: +{ + "confidence": { + "description": "How strongly your source supports the inferred value.", + "enum": [ + "low", + "medium", + "high" + ], + "type": "string" + }, + "field": { + "description": "Intake dot-path of the inferred value, matching the key you sent under `intake`, such as `address.zip`.", + "type": "string" + }, + "source": { + "description": "Free-form label for where the inferred value came from, such as `policy_declarations`, `email_thread`, or a property-data provider.", + "type": "string" + } +} - added
Input schema / properties / field_estimates / items / requiredAdded value: +[ + "field", + "source", + "confidence" +] - changed
Input schema / properties / idempotency_key / descriptionPrevious value: -"Retry key you generate for one logical umbrella_consumer_prefill request. If you retry after a timeout or transport failure, resend the identical arguments with the same idempotency_key. Coverage Cat replays the cached successful result for 24 hours and rejects a changed payload under the same key."New value: +"Key you generate to identify one logical umbrella_consumer_prefill request, so a retry cannot apply it twice. After a timeout or transport failure, retry with the same key and identical arguments to get the original result back; Coverage Cat keeps that result for 24 hours and rejects different arguments sent under a used key." - changed
Input schema / properties / intake / properties / current_auto_coverages / descriptionPrevious value: -"Band for the shopper's current underlying auto liability limits: `unsure` means I'm not sure; `500k/1m` means $500k/$1 Million/$100k or higher; `500k/500k` means $500k/$500k/$100k or $500k CSL; `300k/300k` means $250k/$500k/$100k or $300k/$300k/$100k or $300k CSL; `100k/300k` means $100k/$300k/$100k or lower. Choose the strongest band the shopper's actual limits fully satisfy. Underlying auto limits gate umbrella eligibility, so reserve `unsure` for limits the shopper genuinely does not know."New value: +"Which band the shopper's current underlying auto liability limits fall into: `500k/1m` covers $500k/$1 Million/$100k or higher; `500k/500k` covers $500k/$500k/$100k or $500k CSL; `300k/300k` covers $250k/$500k/$100k or $300k/$300k/$100k or $300k CSL; `100k/300k` covers $100k/$300k/$100k or lower. Pick the strongest band the shopper's actual limits fully satisfy. Underlying auto limits gate umbrella eligibility, so use `unsure` only when the shopper genuinely does not know their limits."
- Changed
umbrella_consumer_select5 fields changed- changed
Input schema / properties / credit_consent / properties / answer / descriptionPrevious value: -"The shopper's own answer to Coverage Cat's credit_consent_question."New value: +"Records the shopper's own reply agreeing to Coverage Cat's credit_consent_question. Send it only after the shopper agrees in their own words." - changed
Input schema / properties / credit_consent / properties / collected_from_user / descriptionPrevious value: -"Attests that the shopper gave this answer directly in the conversation rather than the agent inferring it."New value: +"Attests that the shopper personally answered the credit consent question in this conversation, rather than the agent assuming their consent." - changed
Input schema / properties / idempotency_key / descriptionPrevious value: -"Retry key you generate for one logical umbrella_consumer_select request. If you retry after a timeout or transport failure, resend the identical arguments with the same idempotency_key. Coverage Cat replays the cached successful result for 24 hours and rejects a changed payload under the same key."New value: +"Key you generate to identify one logical umbrella_consumer_select request, so a retry cannot apply it twice. After a timeout or transport failure, retry with the same key and identical arguments to get the original result back; Coverage Cat keeps that result for 24 hours and rejects different arguments sent under a used key." - changed
Input schema / properties / selection_confirmed / descriptionPrevious value: -"Confirms the shopper explicitly chose this offer in chat."New value: +"Attests that the shopper explicitly picked the offer named by selection_token in chat, rather than the agent choosing for them." - changed
Input schema / properties / um_uim_election / oneOfPrevious value: -[ - { - "type": "boolean" - }, - { - "enum": [ - "include", - "decline" - ], - "type": "string" - }, - { - "additionalProperties": false, - "properties": { - "elected": { - "description": "true to include the excess UM/UIM option, false to decline it.", - "type": "boolean" - } - }, - "required": [ - "elected" - ], - "type": "object" - } -]New value: +[ + { + "type": "boolean" + }, + { + "enum": [ + "include", + "decline" + ], + "type": "string" + }, + { + "additionalProperties": false, + "properties": { + "elected": { + "description": "Whether the shopper wants the offer's excess UM/UIM option included.", + "type": "boolean" + } + }, + "required": [ + "elected" + ], + "type": "object" + } +]
- Changed
umbrella_consumer_service3 fields changed- changed
Input schema / properties / idempotency_key / descriptionPrevious value: -"Retry key you generate for one logical umbrella_consumer_service request. If you retry after a timeout or transport failure, resend the identical arguments with the same idempotency_key. Coverage Cat replays the cached successful result for 24 hours and rejects a changed payload under the same key."New value: +"Key you generate to identify one logical umbrella_consumer_service request, so a retry cannot apply it twice. After a timeout or transport failure, retry with the same key and identical arguments to get the original result back; Coverage Cat keeps that result for 24 hours and rejects different arguments sent under a used key." - changed
Input schema / properties / request_type / descriptionPrevious value: -"Post-purchase action to preview or open: `policy_cancellation` asks the carrier to cancel the policy as of requested_effective_date, `refund_request` asks the carrier or billing provider to review a refund or outstanding balance without changing coverage, and `support_case` opens a general support case."New value: +"What the shopper wants done after purchase. `policy_cancellation` asks the carrier to end the policy on requested_effective_date; `refund_request` asks the carrier or billing provider to review a refund or outstanding balance without changing coverage; `support_case` opens a general support case for anything else." - changed
Input schema / properties / requested_effective_date / descriptionPrevious value: -"Date the shopper wants a policy_cancellation to take effect. The carrier reviews it and may approve a different date."New value: +"Day the shopper wants a cancellation to take effect; used only for policy_cancellation. It is a request: the carrier reviews it and may set a different date."
23 tool updates
- Changed
auto_estimates12 fields changed- added
Input schema / properties / age / descriptionAdded value: +"Driver age for the quote scenario." - added
Input schema / properties / collision_deductible / descriptionAdded value: +"Collision deductible to use for the estimate scenario." - added
Input schema / properties / comprehensive_deductible / descriptionAdded value: +"Comprehensive deductible to use for the estimate scenario." - added
Input schema / properties / gender / descriptionAdded value: +"Driver gender value used by the underlying pricing model." - added
Input schema / properties / make / descriptionAdded value: +"Vehicle manufacturer, such as `Toyota` or `Honda`." - added
Input schema / properties / model / descriptionAdded value: +"Vehicle model, such as `Camry` or `Civic`." - added
Input schema / properties / seed / descriptionAdded value: +"Optional deterministic seed for the estimate sample when a caller wants stable repeat runs." - added
Input schema / properties / state / descriptionAdded value: +"Two-letter state code for the garaging address or rating state." - added
Input schema / properties / style / descriptionAdded value: +"Vehicle trim, body style, or submodel when you want to narrow the vehicle match." - added
Input schema / properties / year / descriptionAdded value: +"Vehicle model year when you want the estimate to use a specific car." - added
Input schema / properties / zip / descriptionAdded value: +"ZIP code for the driver or garaging location being priced." - changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": false, + "properties": { + "carriers": { + "items": { + "additionalProperties": false, + "properties": { + "carrier": { + "type": "string" + }, + "monthly": { + "additionalProperties": false, + "properties": { + "lower": { + "type": "integer" + }, + "max": { + "type": "integer" + }, + "median": { + "type": "integer" + }, + "min": { + "type": "integer" + }, + "upper": { + "type": "integer" + } + }, + "required": [ + "min", + "lower", + "median", + "upper", + "max" + ], + "type": "object" + }, + "name": { + "type": "string" + } + }, + "required": [ + "carrier", + "name", + "monthly" + ], + "type": "object" + }, + "type": "array" + }, + "disclaimer": { + "type": "string" + }, + "estimate_unit": { + "type": "string" + }, + "inputs": { + "additionalProperties": true, + "type": "object" + } + }, + "required": [ + "inputs", + "carriers", + "estimate_unit", + "disclaimer" + ], + "type": "object" +}
- Changed
collision_and_comprehensive_coverage12 fields changed- added
Input schema / properties / age / descriptionAdded value: +"Driver age for the quote scenario." - added
Input schema / properties / collision_deductible / descriptionAdded value: +"Collision deductible to use for the estimate scenario." - added
Input schema / properties / comprehensive_deductible / descriptionAdded value: +"Comprehensive deductible to use for the estimate scenario." - added
Input schema / properties / gender / descriptionAdded value: +"Driver gender value used by the underlying pricing model." - added
Input schema / properties / make / descriptionAdded value: +"Vehicle manufacturer, such as `Toyota` or `Honda`." - added
Input schema / properties / model / descriptionAdded value: +"Vehicle model, such as `Camry` or `Civic`." - added
Input schema / properties / seed / descriptionAdded value: +"Optional deterministic seed for the estimate sample when a caller wants stable repeat runs." - added
Input schema / properties / state / descriptionAdded value: +"Two-letter state code for the garaging address or rating state." - added
Input schema / properties / style / descriptionAdded value: +"Vehicle trim, body style, or submodel when you want to narrow the vehicle match." - added
Input schema / properties / year / descriptionAdded value: +"Vehicle model year when you want the estimate to use a specific car." - added
Input schema / properties / zip / descriptionAdded value: +"ZIP code for the driver or garaging location being priced." - changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": false, + "properties": { + "cumulative_annual_scenarios": { + "items": { + "additionalProperties": false, + "properties": { + "cumulative_annual_premiums": { + "items": { + "type": "integer" + }, + "type": "array" + }, + "label": { + "type": "string" + }, + "scenario": { + "type": "string" + } + }, + "required": [ + "scenario", + "label", + "cumulative_annual_premiums" + ], + "type": "object" + }, + "type": "array" + }, + "disclaimer": { + "type": "string" + }, + "estimate_unit": { + "type": "string" + }, + "inputs": { + "additionalProperties": true, + "type": "object" + }, + "monthly_estimates": { + "additionalProperties": false, + "properties": { + "both": { + "additionalProperties": false, + "properties": { + "lower": { + "type": "integer" + }, + "max": { + "type": "integer" + }, + "median": { + "type": "integer" + }, + "min": { + "type": "integer" + }, + "upper": { + "type": "integer" + } + }, + "required": [ + "min", + "lower", + "median", + "upper", + "max" + ], + "type": "object" + }, + "both_claim": { + "additionalProperties": false, + "properties": { + "lower": { + "type": "integer" + }, + "max": { + "type": "integer" + }, + "median": { + "type": "integer" + }, + "min": { + "type": "integer" + }, + "upper": { + "type": "integer" + } + }, + "required": [ + "min", + "lower", + "median", + "upper", + "max" + ], + "type": "object" + }, + "collision": { + "additionalProperties": false, + "properties": { + "lower": { + "type": "integer" + }, + "max": { + "type": "integer" + }, + "median": { + "type": "integer" + }, + "min": { + "type": "integer" + }, + "upper": { + "type": "integer" + } + }, + "required": [ + "min", + "lower", + "median", + "upper", + "max" + ], + "type": "object" + }, + "collision_claim": { + "additionalProperties": false, + "properties": { + "lower": { + "type": "integer" + }, + "max": { + "type": "integer" + }, + "median": { + "type": "integer" + }, + "min": { + "type": "integer" + }, + "upper": { + "type": "integer" + } + }, + "required": [ + "min", + "lower", + "median", + "upper", + "max" + ], + "type": "object" + }, + "without": { + "additionalProperties": false, + "properties": { + "lower": { + "type": "integer" + }, + "max": { + "type": "integer" + }, + "median": { + "type": "integer" + }, + "min": { + "type": "integer" + }, + "upper": { + "type": "integer" + } + }, + "required": [ + "min", + "lower", + "median", + "upper", + "max" + ], + "type": "object" + } + }, + "required": [ + "without", + "collision", + "both", + "collision_claim", + "both_claim" + ], + "type": "object" + }, + "projection_years": { + "type": "integer" + } + }, + "required": [ + "inputs", + "monthly_estimates", + "projection_years", + "cumulative_annual_scenarios", + "estimate_unit", + "disclaimer" + ], + "type": "object" +}
- Changed
consumer_intake_issues2 fields changed- changed
Input schema / properties / intake_access_token / descriptionPrevious value: -"Optional bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Reuse the latest token from the previous successful Coverage Cat response and never show it to the shopper."New value: +"Bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Send the intake_access_token from the previous successful Coverage Cat response and never show it to the shopper." - added
Input schema / properties / uid / descriptionAdded value: +"Coverage Cat intake uid returned by `umbrella_consumer_prefill` or `homeowners_consumer_prefill` and echoed on every follow-up response. Reuse it for each follow-up call on the same application."
- Changed
consumer_intake_patch7 fields changed- changed
Input schema / properties / field_estimates / descriptionPrevious value: -"Umbrella-only estimate metadata for inferred values included in the same patch. Omit it unless you are certain each field path matches a current umbrella review field."New value: +"Umbrella provenance rows for inferred values included in the same patch. Each row names the inferred `field` path, its `source`, and a `confidence` of low, medium, or high. Send rows only when you are certain each field path matches a current umbrella review field." - changed
Input schema / properties / idempotency_key / descriptionPrevious value: -"Optional retry key for consumer_intake_patch. If you retry after a timeout or transport failure, resend the identical arguments with the same idempotency_key. Coverage Cat replays the cached successful result for 24 hours and rejects a changed payload under the same key."New value: +"Retry key you generate for one logical consumer_intake_patch request. If you retry after a timeout or transport failure, resend the identical arguments with the same idempotency_key. Coverage Cat replays the cached successful result for 24 hours and rejects a changed payload under the same key." - changed
Input schema / properties / intake / descriptionPrevious value: -"Top-level intake edits. For umbrella, send only missing shopper-owned details, corrections, or canonical umbrella count fixes such as umbrella_details.motorized_vehicle_count. Do not send vehicles rows on this pre-submit patch. current_auto_coverages is a banded enum, not free text: send one of unsure for I'm not sure; 500k/1m for $500k/$1 Million/$100k or higher; 500k/500k for $500k/$500k/$100k or $500k CSL; 300k/300k for $250k/$500k/$100k or $300k/$300k/$100k or $300k CSL; 100k/300k for $100k/$300k/$100k or lower. Coverage Cat rejects the shopper's raw limits, so translate them into the strongest band those limits fully satisfy. Underlying auto limits gate umbrella eligibility, so reserve unsure for limits the shopper genuinely does not know rather than using it to skip the translation."New value: +"Top-level intake edits. For umbrella, send only missing shopper-owned details, corrections, or canonical umbrella count fixes such as umbrella_details.motorized_vehicle_count. Do not send vehicles rows on this pre-submit patch." - changed
Input schema / properties / intake / properties / current_auto_coverages / descriptionPrevious value: -"`current_auto_coverages` is a banded enum, not free text: send one of `unsure` for I'm not sure; `500k/1m` for $500k/$1 Million/$100k or higher; `500k/500k` for $500k/$500k/$100k or $500k CSL; `300k/300k` for $250k/$500k/$100k or $300k/$300k/$100k or $300k CSL; `100k/300k` for $100k/$300k/$100k or lower. Coverage Cat rejects the shopper's raw limits, so translate them into the strongest band those limits fully satisfy. Underlying auto limits gate umbrella eligibility, so reserve `unsure` for limits the shopper genuinely does not know rather than using it to skip the translation."New value: +"Band for the shopper's current underlying auto liability limits: `unsure` means I'm not sure; `500k/1m` means $500k/$1 Million/$100k or higher; `500k/500k` means $500k/$500k/$100k or $500k CSL; `300k/300k` means $250k/$500k/$100k or $300k/$300k/$100k or $300k CSL; `100k/300k` means $100k/$300k/$100k or lower. Choose the strongest band the shopper's actual limits fully satisfy. Underlying auto limits gate umbrella eligibility, so reserve `unsure` for limits the shopper genuinely does not know." - changed
Input schema / properties / intake_access_token / descriptionPrevious value: -"Optional bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Reuse the latest token from the previous successful Coverage Cat response and never show it to the shopper."New value: +"Bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Send the intake_access_token from the previous successful Coverage Cat response and never show it to the shopper." - changed
Input schema / properties / reply_to_message_id / descriptionPrevious value: -"Optional homeowners post-submit target from conversation.messages[].message_id when Coverage Cat returned a specific message to answer in-thread."New value: +"Homeowners post-submit message_id from conversation.messages[] that message_reply answers in-thread, when Coverage Cat returned a specific message to reply to." - added
Input schema / properties / uid / descriptionAdded value: +"Coverage Cat intake uid returned by `umbrella_consumer_prefill` or `homeowners_consumer_prefill` and echoed on every follow-up response. Reuse it for each follow-up call on the same application."
- Changed
docs_get_resource1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": false, + "properties": { + "href": { + "type": [ + "string", + "null" + ] + }, + "mime_type": { + "type": "string" + }, + "text": { + "type": "string" + }, + "uri": { + "type": "string" + } + }, + "required": [ + "uri", + "href", + "mime_type", + "text" + ], + "type": "object" +}
- Changed
docs_list_topics3 fields changed- added
Input schema / properties / category / descriptionAdded value: +"Optional docs category to browse. Use `all` for the full catalog or narrow to developers, api, or skills." - added
Input schema / properties / limit / descriptionAdded value: +"Maximum number of topic entries to return from the filtered catalog." - changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": false, + "properties": { + "category": { + "type": "string" + }, + "topics": { + "items": { + "additionalProperties": false, + "properties": { + "category": { + "type": "string" + }, + "href": { + "type": "string" + }, + "mime_type": { + "type": "string" + }, + "summary": { + "type": "string" + }, + "title": { + "type": "string" + }, + "uri": { + "type": "string" + } + }, + "required": [ + "title", + "uri", + "mime_type", + "summary", + "category", + "href" + ], + "type": "object" + }, + "type": "array" + }, + "total": { + "type": "integer" + } + }, + "required": [ + "category", + "total", + "topics" + ], + "type": "object" +}
- Changed
docs_search3 fields changed- added
Input schema / properties / limit / descriptionAdded value: +"Maximum number of matching documentation topics to return." - changed
Input schema / properties / query / descriptionPrevious value: -"Search terms for the documentation need."New value: +"Search terms describing the documentation need." - changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": false, + "properties": { + "matches": { + "items": { + "additionalProperties": false, + "properties": { + "category": { + "type": "string" + }, + "href": { + "type": "string" + }, + "mime_type": { + "type": "string" + }, + "summary": { + "type": "string" + }, + "title": { + "type": "string" + }, + "uri": { + "type": "string" + } + }, + "required": [ + "title", + "uri", + "mime_type", + "summary", + "category", + "href" + ], + "type": "object" + }, + "type": "array" + }, + "query": { + "type": "string" + }, + "total": { + "type": "integer" + } + }, + "required": [ + "query", + "total", + "matches" + ], + "type": "object" +}
- Changed
file_a_claim13 fields changed- added
Input schema / properties / age / descriptionAdded value: +"Driver age for the quote scenario." - added
Input schema / properties / collision_deductible / descriptionAdded value: +"Collision deductible to use for the estimate scenario." - added
Input schema / properties / comprehensive_deductible / descriptionAdded value: +"Comprehensive deductible to use for the estimate scenario." - added
Input schema / properties / gender / descriptionAdded value: +"Driver gender value used by the underlying pricing model." - added
Input schema / properties / make / descriptionAdded value: +"Vehicle manufacturer, such as `Toyota` or `Honda`." - added
Input schema / properties / model / descriptionAdded value: +"Vehicle model, such as `Camry` or `Civic`." - added
Input schema / properties / repair_estimate / descriptionAdded value: +"Approximate dollar amount you expect to pay to repair the vehicle if you do not file a claim." - added
Input schema / properties / seed / descriptionAdded value: +"Optional deterministic seed for the estimate sample when a caller wants stable repeat runs." - added
Input schema / properties / state / descriptionAdded value: +"Two-letter state code for the garaging address or rating state." - added
Input schema / properties / style / descriptionAdded value: +"Vehicle trim, body style, or submodel when you want to narrow the vehicle match." - added
Input schema / properties / year / descriptionAdded value: +"Vehicle model year when you want the estimate to use a specific car." - added
Input schema / properties / zip / descriptionAdded value: +"ZIP code for the driver or garaging location being priced." - changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": false, + "properties": { + "claim_monthly": { + "additionalProperties": false, + "properties": { + "lower": { + "type": "integer" + }, + "max": { + "type": "integer" + }, + "median": { + "type": "integer" + }, + "min": { + "type": "integer" + }, + "upper": { + "type": "integer" + } + }, + "required": [ + "min", + "lower", + "median", + "upper", + "max" + ], + "type": "object" + }, + "deductible": { + "type": "integer" + }, + "disclaimer": { + "type": "string" + }, + "estimate_unit": { + "type": "string" + }, + "inputs": { + "additionalProperties": true, + "type": "object" + }, + "monthly_increase": { + "type": "integer" + }, + "no_claim_monthly": { + "additionalProperties": false, + "properties": { + "lower": { + "type": "integer" + }, + "max": { + "type": "integer" + }, + "median": { + "type": "integer" + }, + "min": { + "type": "integer" + }, + "upper": { + "type": "integer" + } + }, + "required": [ + "min", + "lower", + "median", + "upper", + "max" + ], + "type": "object" + }, + "premium_impact_years": { + "type": "integer" + }, + "premium_increase": { + "type": "integer" + }, + "recommendation": { + "additionalProperties": false, + "properties": { + "action": { + "type": "string" + }, + "estimated_savings": { + "type": "integer" + } + }, + "required": [ + "action", + "estimated_savings" + ], + "type": [ + "object", + "null" + ] + }, + "repair_estimate": { + "type": "integer" + }, + "total_claim_cost": { + "type": "integer" + } + }, + "required": [ + "inputs", + "no_claim_monthly", + "claim_monthly", + "monthly_increase", + "premium_impact_years", + "premium_increase", + "deductible", + "total_claim_cost", + "repair_estimate", + "estimate_unit", + "disclaimer" + ], + "type": "object" +}
- Changed
home_calculator4 fields changed- added
Input schema / properties / home_sqft / descriptionAdded value: +"Approximate finished living area of the home in square feet." - changed
Input schema / properties / risk_factors / descriptionPrevious value: -"Optional risk factor identifiers."New value: +"Optional Coverage Cat risk-factor ids, such as `pool` or `old_systems`, for property traits that can change premium." - changed
Input schema / properties / zip / descriptionPrevious value: -"Five-digit ZIP code."New value: +"ZIP code for the California property being estimated." - changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": false, + "properties": { + "available_risk_factors": { + "items": { + "additionalProperties": false, + "properties": { + "id": { + "type": "string" + }, + "impact_pct": { + "type": "integer" + }, + "label": { + "type": "string" + } + }, + "required": [ + "id", + "label", + "impact_pct" + ], + "type": "object" + }, + "type": "array" + }, + "disclaimer": { + "type": "string" + }, + "estimate": { + "additionalProperties": false, + "properties": { + "annual_high": { + "type": "integer" + }, + "annual_low": { + "type": "integer" + }, + "annual_mid": { + "type": "integer" + }, + "monthly_high": { + "type": "integer" + }, + "monthly_low": { + "type": "integer" + }, + "monthly_mid": { + "type": "integer" + }, + "risk_factor_count": { + "type": "integer" + }, + "zip": { + "type": "string" + }, + "zip_risk": { + "type": "string" + } + }, + "required": [ + "annual_low", + "annual_mid", + "annual_high", + "monthly_low", + "monthly_mid", + "monthly_high", + "zip", + "zip_risk", + "risk_factor_count" + ], + "type": "object" + }, + "estimate_unit": { + "type": "string" + }, + "inputs": { + "additionalProperties": false, + "properties": { + "home_sqft": { + "type": "integer" + }, + "risk_factors": { + "items": { + "type": "string" + }, + "type": "array" + }, + "zip": { + "type": "string" + } + }, + "required": [ + "zip", + "home_sqft", + "risk_factors" + ], + "type": "object" + }, + "zip_facts": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "inputs", + "estimate", + "available_risk_factors", + "zip_facts", + "estimate_unit", + "disclaimer" + ], + "type": "object" +}
- Changed
homeowners_agent_finder4 fields changed- added
Input schema / properties / limit / descriptionAdded value: +"Maximum number of matching agent records to return." - changed
Input schema / properties / lines / descriptionPrevious value: -"Requested insurance lines."New value: +"Optional insurance lines to match, such as `homeowners`, `condominium`, or `dwelling_fire`." - changed
Input schema / properties / zip / descriptionPrevious value: -"Five-digit ZIP code."New value: +"ZIP code to search for nearby homeowners agents." - changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": false, + "properties": { + "agents": { + "items": { + "additionalProperties": true, + "properties": { + "agency": { + "additionalProperties": true, + "type": "object" + }, + "company": { + "additionalProperties": true, + "type": "object" + }, + "contact": { + "additionalProperties": true, + "type": "object" + }, + "insurer": { + "additionalProperties": true, + "type": "object" + }, + "languages": { + "items": { + "type": "string" + }, + "type": [ + "array", + "null" + ] + }, + "last_updated_at": { + "format": "date-time", + "type": [ + "string", + "null" + ] + }, + "license_number": { + "type": [ + "string", + "null" + ] + }, + "lines": { + "items": { + "type": "string" + }, + "type": "array" + }, + "links": { + "additionalProperties": true, + "type": "object" + }, + "location": { + "additionalProperties": true, + "type": "object" + }, + "name": { + "type": [ + "string", + "null" + ] + }, + "source": { + "type": "string" + }, + "state": { + "type": "string" + } + }, + "required": [ + "state", + "source", + "lines", + "location", + "contact", + "links" + ], + "type": "object" + }, + "type": "array" + }, + "last_updated_at": { + "format": "date-time", + "type": [ + "string", + "null" + ] + }, + "lines": { + "items": { + "type": "string" + }, + "type": "array" + }, + "result_count": { + "type": "integer" + }, + "source_label": { + "type": [ + "string", + "null" + ] + }, + "state": { + "type": "string" + }, + "state_name": { + "type": "string" + }, + "supported_states": { + "items": { + "type": "string" + }, + "type": "array" + }, + "zip": { + "type": "string" + } + }, + "required": [ + "zip", + "state", + "state_name", + "source_label", + "lines", + "agents", + "result_count", + "supported_states" + ], + "type": "object" +}
- Changed
homeowners_consumer_bind5 fields changed- added
Input schema / properties / bind_confirmed / descriptionAdded value: +"Set this to true only after the shopper approves the previewed homeowners bind terms in chat." - changed
Input schema / properties / idempotency_key / descriptionPrevious value: -"Optional retry key for homeowners_consumer_bind. If you retry after a timeout or transport failure, resend the identical arguments with the same idempotency_key. Coverage Cat replays the cached successful result for 24 hours and rejects a changed payload under the same key."New value: +"Retry key you generate for one logical homeowners_consumer_bind request. If you retry after a timeout or transport failure, resend the identical arguments with the same idempotency_key. Coverage Cat replays the cached successful result for 24 hours and rejects a changed payload under the same key." - changed
Input schema / properties / intake_access_token / descriptionPrevious value: -"Optional bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Reuse the latest token from the previous successful Coverage Cat response and never show it to the shopper."New value: +"Bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Send the intake_access_token from the previous successful Coverage Cat response and never show it to the shopper." - added
Input schema / properties / preview_token / descriptionAdded value: +"Preview token returned by `homeowners_consumer_select` in the `ready_to_finalize` response for this exact offer." - added
Input schema / properties / uid / descriptionAdded value: +"Coverage Cat intake uid returned by the earlier homeowners consumer-prefill or follow-up response."
- Changed
homeowners_consumer_policy2 fields changed- changed
Input schema / properties / intake_access_token / descriptionPrevious value: -"Optional bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Reuse the latest token from the previous successful Coverage Cat response and never show it to the shopper."New value: +"Bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Send the intake_access_token from the previous successful Coverage Cat response and never show it to the shopper." - added
Input schema / properties / uid / descriptionAdded value: +"Coverage Cat intake uid returned by `umbrella_consumer_prefill` or `homeowners_consumer_prefill` and echoed on every follow-up response. Reuse it for each follow-up call on the same application."
- Changed
homeowners_consumer_prefill4 fields changed- changed
Input schema / properties / credit_consent_pending / descriptionPrevious value: -"Must be true. Coverage Cat collects soft-credit consent on the direct review turn."New value: +"Acknowledges that the shopper has not given soft-credit-check consent yet. Coverage Cat collects that consent on the homeowners review turn." - added
Input schema / properties / field_estimates / descriptionAdded value: +"Provenance rows for home values you inferred rather than heard from the shopper, stored on the first `intake.home` row. Each row names the inferred home `field`, its `source`, and a `confidence` of low, medium, or high." - changed
Input schema / properties / idempotency_key / descriptionPrevious value: -"Optional retry key for homeowners_consumer_prefill. If you retry after a timeout or transport failure, resend the identical arguments with the same idempotency_key. Coverage Cat replays the cached successful result for 24 hours and rejects a changed payload under the same key."New value: +"Retry key you generate for one logical homeowners_consumer_prefill request. If you retry after a timeout or transport failure, resend the identical arguments with the same idempotency_key. Coverage Cat replays the cached successful result for 24 hours and rejects a changed payload under the same key." - added
Input schema / properties / intake / descriptionAdded value: +"Fullest currently known homeowners application assembled from the user's own context: shopper name and email plus a `home` row (object or one-row array) with the property street, city, state, and zip, and the home_ownership and property_type that distinguish standard homeowners, condo, or landlord coverage."
- Changed
homeowners_consumer_select5 fields changed- changed
Input schema / properties / idempotency_key / descriptionPrevious value: -"Optional retry key for homeowners_consumer_select. If you retry after a timeout or transport failure, resend the identical arguments with the same idempotency_key. Coverage Cat replays the cached successful result for 24 hours and rejects a changed payload under the same key."New value: +"Retry key you generate for one logical homeowners_consumer_select request. If you retry after a timeout or transport failure, resend the identical arguments with the same idempotency_key. Coverage Cat replays the cached successful result for 24 hours and rejects a changed payload under the same key." - changed
Input schema / properties / intake_access_token / descriptionPrevious value: -"Optional bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Reuse the latest token from the previous successful Coverage Cat response and never show it to the shopper."New value: +"Bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Send the intake_access_token from the previous successful Coverage Cat response and never show it to the shopper." - added
Input schema / properties / selection_confirmed / descriptionAdded value: +"Confirms the shopper explicitly chose this offer in chat." - added
Input schema / properties / selection_token / descriptionAdded value: +"selection_token of the shopper's chosen offer from `offers[]` in the latest quoted follow-up response." - added
Input schema / properties / uid / descriptionAdded value: +"Coverage Cat intake uid returned by `umbrella_consumer_prefill` or `homeowners_consumer_prefill` and echoed on every follow-up response. Reuse it for each follow-up call on the same application."
- Changed
homeowners_consumer_service7 fields changed- changed
Input schema / descriptionPrevious value: -"requested_effective_date is required when request_type is policy_cancellation. Omit or send confirm_request: false to preview first."New value: +"requested_effective_date is required when request_type is policy_cancellation." - changed
Input schema / properties / confirm_request / descriptionPrevious value: -"Omit or send false to preview the consequences first. Send true only after the shopper approves opening the request."New value: +"Whether to open the request now. false, the default, returns a preview of the consequences without opening anything; send true only after the shopper approves that preview." - changed
Input schema / properties / details / descriptionPrevious value: -"Optional extra context or dispute details."New value: +"Shopper-approved context beyond the short reason, such as the specifics of a billing dispute, recorded on the request and its preview." - changed
Input schema / properties / idempotency_key / descriptionPrevious value: -"Optional retry key for homeowners_consumer_service. If you retry after a timeout or transport failure, resend the identical arguments with the same idempotency_key. Coverage Cat replays the cached successful result for 24 hours and rejects a changed payload under the same key."New value: +"Retry key you generate for one logical homeowners_consumer_service request. If you retry after a timeout or transport failure, resend the identical arguments with the same idempotency_key. Coverage Cat replays the cached successful result for 24 hours and rejects a changed payload under the same key." - changed
Input schema / properties / intake_access_token / descriptionPrevious value: -"Optional bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Reuse the latest token from the previous successful Coverage Cat response and never show it to the shopper."New value: +"Bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Send the intake_access_token from the previous successful Coverage Cat response and never show it to the shopper." - changed
Input schema / properties / request_type / descriptionPrevious value: -"Which post-purchase action Coverage Cat should preview or open."New value: +"Post-purchase action to preview or open: `policy_cancellation` asks the carrier to cancel the policy as of requested_effective_date, `refund_request` asks the carrier or billing provider to review a refund or outstanding balance without changing coverage, and `support_case` opens a general support case." - changed
Input schema / properties / requested_effective_date / descriptionPrevious value: -"Required for policy_cancellation. Desired cancellation date for carrier review."New value: +"Date the shopper wants a policy_cancellation to take effect. The carrier reviews it and may approve a different date."
- Changed
umbrella_calculator12 fields changed- added
Input schema / properties / antique_vehicles / descriptionAdded value: +"How many collector or antique vehicles should be counted in the risk profile." - added
Input schema / properties / at_fault_accidents / descriptionAdded value: +"Recent at-fault accidents that should be reflected in the umbrella risk profile." - added
Input schema / properties / auto_count / descriptionAdded value: +"How many cars, trucks, or SUVs are in the household auto profile." - added
Input schema / properties / drivers_over_70 / descriptionAdded value: +"Number of drivers in the household who are 70 or older." - added
Input schema / properties / drivers_under_22 / descriptionAdded value: +"Number of drivers in the household who are younger than 22." - added
Input schema / properties / jet_skis / descriptionAdded value: +"Count of personal watercraft such as jet skis." - added
Input schema / properties / large_watercraft / descriptionAdded value: +"Count of boats or other large watercraft that add umbrella liability exposure." - added
Input schema / properties / motorcycles / descriptionAdded value: +"How many motorcycles should be added to the total vehicle exposure." - added
Input schema / properties / moving_violations / descriptionAdded value: +"Recent moving violations that should be reflected in the umbrella risk profile." - added
Input schema / properties / property_count / descriptionAdded value: +"How many residential properties the household owns or carries liability for." - changed
Input schema / properties / zip / descriptionPrevious value: -"Five-digit ZIP code."New value: +"ZIP code for the household being priced." - changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": false, + "properties": { + "disclaimer": { + "type": "string" + }, + "estimate": { + "additionalProperties": false, + "properties": { + "class": { + "type": "string" + }, + "prices": { + "items": { + "additionalProperties": false, + "properties": { + "coverage_millions": { + "type": "integer" + }, + "high": { + "type": "integer" + }, + "low": { + "type": "integer" + }, + "mid": { + "type": "integer" + } + }, + "required": [ + "coverage_millions", + "low", + "mid", + "high" + ], + "type": "object" + }, + "type": "array" + }, + "umbrella_class": { + "type": "string" + } + }, + "required": [ + "class", + "umbrella_class", + "prices" + ], + "type": "object" + }, + "estimate_unit": { + "type": "string" + }, + "factor_impacts": { + "items": { + "additionalProperties": false, + "properties": { + "factor": { + "type": "string" + }, + "impact": { + "type": "string" + }, + "label": { + "type": "string" + }, + "value": { + "type": "integer" + } + }, + "required": [ + "factor", + "label", + "value", + "impact" + ], + "type": "object" + }, + "type": "array" + }, + "inputs": { + "additionalProperties": true, + "type": "object" + } + }, + "required": [ + "inputs", + "estimate", + "factor_impacts", + "estimate_unit", + "disclaimer" + ], + "type": "object" +}
- Changed
umbrella_consumer_attach11 fields changed- added
Input schema / properties / attachments / items / properties / content / contentEncodingAdded value: +"base64" - changed
Input schema / properties / attachments / items / properties / content / descriptionPrevious value: -"Base64-encoded file bytes."New value: +"Full contents of the declarations file named by filename." - added
Input schema / properties / attachments / items / properties / filename / descriptionAdded value: +"File name including its extension. Coverage Cat infers the file type from the extension and accepts PDF, JPEG, or PNG." - added
Input schema / properties / attachments / items / properties / type / descriptionAdded value: +"Which declarations page the file is: `declarations` for the home, condo, renters, or landlord policy, `auto_declarations` for the auto policy." - added
Input schema / properties / content / contentEncodingAdded value: +"base64" - changed
Input schema / properties / content / descriptionPrevious value: -"Base64-encoded file bytes."New value: +"Full contents of the declarations file named by filename." - added
Input schema / properties / filename / descriptionAdded value: +"File name including its extension. Coverage Cat infers the file type from the extension and accepts PDF, JPEG, or PNG." - changed
Input schema / properties / idempotency_key / descriptionPrevious value: -"Optional retry key for umbrella_consumer_attach. If you retry after a timeout or transport failure, resend the identical arguments with the same idempotency_key. Coverage Cat replays the cached successful result for 24 hours and rejects a changed payload under the same key."New value: +"Retry key you generate for one logical umbrella_consumer_attach request. If you retry after a timeout or transport failure, resend the identical arguments with the same idempotency_key. Coverage Cat replays the cached successful result for 24 hours and rejects a changed payload under the same key." - changed
Input schema / properties / intake_access_token / descriptionPrevious value: -"Optional bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Reuse the latest token from the previous successful Coverage Cat response and never show it to the shopper."New value: +"Bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Send the intake_access_token from the previous successful Coverage Cat response and never show it to the shopper." - added
Input schema / properties / type / descriptionAdded value: +"Which declarations page the file is: `declarations` for the home, condo, renters, or landlord policy, `auto_declarations` for the auto policy." - added
Input schema / properties / uid / descriptionAdded value: +"Coverage Cat intake uid returned by `umbrella_consumer_prefill` or `homeowners_consumer_prefill` and echoed on every follow-up response. Reuse it for each follow-up call on the same application."
- Changed
umbrella_consumer_bind4 fields changed- changed
Input schema / properties / idempotency_key / descriptionPrevious value: -"Optional retry key for umbrella_consumer_bind. If you retry after a timeout or transport failure, resend the identical arguments with the same idempotency_key. Coverage Cat replays the cached successful result for 24 hours and rejects a changed payload under the same key."New value: +"Retry key you generate for one logical umbrella_consumer_bind request. If you retry after a timeout or transport failure, resend the identical arguments with the same idempotency_key. Coverage Cat replays the cached successful result for 24 hours and rejects a changed payload under the same key." - added
Input schema / properties / intake / descriptionAdded value: +"Answers to the current bind-stage next_question, keyed by the field names Coverage Cat asked for, such as vehicle details for a selected Markel offer." - changed
Input schema / properties / intake_access_token / descriptionPrevious value: -"Optional bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Reuse the latest token from the previous successful Coverage Cat response and never show it to the shopper."New value: +"Bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Send the intake_access_token from the previous successful Coverage Cat response and never show it to the shopper." - added
Input schema / properties / uid / descriptionAdded value: +"Coverage Cat intake uid returned by `umbrella_consumer_prefill` or `homeowners_consumer_prefill` and echoed on every follow-up response. Reuse it for each follow-up call on the same application."
- Changed
umbrella_consumer_payment2 fields changed- changed
Input schema / properties / idempotency_key / descriptionPrevious value: -"Optional retry key for umbrella_consumer_payment. If you retry after a timeout or transport failure, resend the identical arguments with the same idempotency_key. Coverage Cat replays the cached successful result for 24 hours and rejects a changed payload under the same key."New value: +"Retry key you generate for one logical umbrella_consumer_payment request. If you retry after a timeout or transport failure, resend the identical arguments with the same idempotency_key. Coverage Cat replays the cached successful result for 24 hours and rejects a changed payload under the same key." - changed
Input schema / properties / intake_access_token / descriptionPrevious value: -"Optional bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Reuse the latest token from the previous successful Coverage Cat response and never show it to the shopper."New value: +"Bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Send the intake_access_token from the previous successful Coverage Cat response and never show it to the shopper."
- Changed
umbrella_consumer_policy2 fields changed- changed
Input schema / properties / intake_access_token / descriptionPrevious value: -"Optional bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Reuse the latest token from the previous successful Coverage Cat response and never show it to the shopper."New value: +"Bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Send the intake_access_token from the previous successful Coverage Cat response and never show it to the shopper." - added
Input schema / properties / uid / descriptionAdded value: +"Coverage Cat intake uid returned by `umbrella_consumer_prefill` or `homeowners_consumer_prefill` and echoed on every follow-up response. Reuse it for each follow-up call on the same application."
- Changed
umbrella_consumer_prefill6 fields changed- changed
Input schema / properties / credit_consent_pending / descriptionPrevious value: -"Must be true. Coverage Cat collects consent for a soft credit check only after an umbrella offer is chosen."New value: +"Acknowledges that the shopper has not given soft-credit-check consent yet. Coverage Cat collects that consent on `umbrella_consumer_select`, after an umbrella offer is chosen." - changed
Input schema / properties / field_estimates / descriptionPrevious value: -"Optional estimate metadata. On the initial consumer umbrella handoff, prefer omitting this unless each field path already matches a current umbrella review field."New value: +"Provenance rows for intake values you inferred rather than heard from the shopper. Each row names the inferred `field` path, its `source`, and a `confidence` of low, medium, or high. On the initial umbrella handoff, send rows only when each field path already matches a current umbrella review field." - changed
Input schema / properties / idempotency_key / descriptionPrevious value: -"Optional retry key for umbrella_consumer_prefill. If you retry after a timeout or transport failure, resend the identical arguments with the same idempotency_key. Coverage Cat replays the cached successful result for 24 hours and rejects a changed payload under the same key."New value: +"Retry key you generate for one logical umbrella_consumer_prefill request. If you retry after a timeout or transport failure, resend the identical arguments with the same idempotency_key. Coverage Cat replays the cached successful result for 24 hours and rejects a changed payload under the same key." - changed
Input schema / properties / intake / descriptionPrevious value: -"Fullest currently known consumer umbrella application patch. Use canonical keys such as address.street/city/state/zip, license_state, license_number, approximate_asset_value or net_worth_numeric, desired_coverage_limit, required_coverage_e_limit, and vehicle_count or umbrella_details.motorized_vehicle_count for umbrella counts. Do not send vehicles rows before submission. current_auto_coverages is a banded enum, not free text: send one of unsure for I'm not sure; 500k/1m for $500k/$1 Million/$100k or higher; 500k/500k for $500k/$500k/$100k or $500k CSL; 300k/300k for $250k/$500k/$100k or $300k/$300k/$100k or $300k CSL; 100k/300k for $100k/$300k/$100k or lower. Coverage Cat rejects the shopper's raw limits, so translate them into the strongest band those limits fully satisfy. Underlying auto limits gate umbrella eligibility, so reserve unsure for limits the shopper genuinely does not know rather than using it to skip the translation."New value: +"Fullest currently known consumer umbrella application patch. Use canonical keys such as address.street/city/state/zip, license_state, license_number, approximate_asset_value or net_worth_numeric, desired_coverage_limit, required_coverage_e_limit, and vehicle_count or umbrella_details.motorized_vehicle_count for umbrella counts. Do not send vehicles rows before submission." - changed
Input schema / properties / intake / properties / current_auto_coverages / descriptionPrevious value: -"`current_auto_coverages` is a banded enum, not free text: send one of `unsure` for I'm not sure; `500k/1m` for $500k/$1 Million/$100k or higher; `500k/500k` for $500k/$500k/$100k or $500k CSL; `300k/300k` for $250k/$500k/$100k or $300k/$300k/$100k or $300k CSL; `100k/300k` for $100k/$300k/$100k or lower. Coverage Cat rejects the shopper's raw limits, so translate them into the strongest band those limits fully satisfy. Underlying auto limits gate umbrella eligibility, so reserve `unsure` for limits the shopper genuinely does not know rather than using it to skip the translation."New value: +"Band for the shopper's current underlying auto liability limits: `unsure` means I'm not sure; `500k/1m` means $500k/$1 Million/$100k or higher; `500k/500k` means $500k/$500k/$100k or $500k CSL; `300k/300k` means $250k/$500k/$100k or $300k/$300k/$100k or $300k CSL; `100k/300k` means $100k/$300k/$100k or lower. Choose the strongest band the shopper's actual limits fully satisfy. Underlying auto limits gate umbrella eligibility, so reserve `unsure` for limits the shopper genuinely does not know." - changed
Input schema / properties / sandbox / descriptionPrevious value: -"Optional. Set true only on the first consumer umbrella prefill call when you want a fully synthetic shopper rehearsal that continues on the same consumer tool set."New value: +"Set true on this first prefill call to run a fully synthetic shopper rehearsal instead of a live application. The returned sandbox uid continues through the same consumer tool set."
- Changed
umbrella_consumer_select10 fields changed- added
Input schema / properties / credit_consent / properties / answer / descriptionAdded value: +"The shopper's own answer to Coverage Cat's credit_consent_question." - added
Input schema / properties / credit_consent / properties / collected_from_user / descriptionAdded value: +"Attests that the shopper gave this answer directly in the conversation rather than the agent inferring it." - changed
Input schema / properties / idempotency_key / descriptionPrevious value: -"Optional retry key for umbrella_consumer_select. If you retry after a timeout or transport failure, resend the identical arguments with the same idempotency_key. Coverage Cat replays the cached successful result for 24 hours and rejects a changed payload under the same key."New value: +"Retry key you generate for one logical umbrella_consumer_select request. If you retry after a timeout or transport failure, resend the identical arguments with the same idempotency_key. Coverage Cat replays the cached successful result for 24 hours and rejects a changed payload under the same key." - changed
Input schema / properties / intake / descriptionPrevious value: -"Optional bind-stage answers for the current next_question when Coverage Cat asked for consent and bind details in the same shopper-facing turn."New value: +"Bind-stage answers for the current next_question, or the chosen offer's selection_guidance.same_reply_requirements, keyed by the field names Coverage Cat asked for. Send them when Coverage Cat asked for consent and bind details in the same shopper-facing turn." - changed
Input schema / properties / intake_access_token / descriptionPrevious value: -"Optional bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Reuse the latest token from the previous successful Coverage Cat response and never show it to the shopper."New value: +"Bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Send the intake_access_token from the previous successful Coverage Cat response and never show it to the shopper." - added
Input schema / properties / selection_confirmed / descriptionAdded value: +"Confirms the shopper explicitly chose this offer in chat." - added
Input schema / properties / selection_token / descriptionAdded value: +"selection_token of the shopper's chosen offer from `offers[]` in the latest quoted follow-up response." - added
Input schema / properties / uid / descriptionAdded value: +"Coverage Cat intake uid returned by `umbrella_consumer_prefill` or `homeowners_consumer_prefill` and echoed on every follow-up response. Reuse it for each follow-up call on the same application." - changed
Input schema / properties / um_uim_election / descriptionPrevious value: -"Optional. Use this when the shopper wants to include or decline the offer's $1M excess UM/UIM option in the same selection reply."New value: +"The shopper's choice to include or decline the offer's $1M excess UM/UIM option, when they make it in the same selection reply." - changed
Input schema / properties / um_uim_election / oneOfPrevious value: -[ - { - "type": "boolean" - }, - { - "enum": [ - "include", - "decline" - ], - "type": "string" - }, - { - "additionalProperties": false, - "properties": { - "elected": { - "type": "boolean" - } - }, - "required": [ - "elected" - ], - "type": "object" - } -]New value: +[ + { + "type": "boolean" + }, + { + "enum": [ + "include", + "decline" + ], + "type": "string" + }, + { + "additionalProperties": false, + "properties": { + "elected": { + "description": "true to include the excess UM/UIM option, false to decline it.", + "type": "boolean" + } + }, + "required": [ + "elected" + ], + "type": "object" + } +]
- Changed
umbrella_consumer_service7 fields changed- changed
Input schema / descriptionPrevious value: -"requested_effective_date is required when request_type is policy_cancellation. Omit or send confirm_request: false to preview first."New value: +"requested_effective_date is required when request_type is policy_cancellation." - changed
Input schema / properties / confirm_request / descriptionPrevious value: -"Omit or send false to preview the consequences first. Send true only after the shopper approves opening the request."New value: +"Whether to open the request now. false, the default, returns a preview of the consequences without opening anything; send true only after the shopper approves that preview." - changed
Input schema / properties / details / descriptionPrevious value: -"Optional extra context or dispute details."New value: +"Shopper-approved context beyond the short reason, such as the specifics of a billing dispute, recorded on the request and its preview." - changed
Input schema / properties / idempotency_key / descriptionPrevious value: -"Optional retry key for umbrella_consumer_service. If you retry after a timeout or transport failure, resend the identical arguments with the same idempotency_key. Coverage Cat replays the cached successful result for 24 hours and rejects a changed payload under the same key."New value: +"Retry key you generate for one logical umbrella_consumer_service request. If you retry after a timeout or transport failure, resend the identical arguments with the same idempotency_key. Coverage Cat replays the cached successful result for 24 hours and rejects a changed payload under the same key." - changed
Input schema / properties / intake_access_token / descriptionPrevious value: -"Optional bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Reuse the latest token from the previous successful Coverage Cat response and never show it to the shopper."New value: +"Bearer fallback for this same MCP follow-up tool when your host cannot preserve Coverage Cat's hidden shopper session. Send the intake_access_token from the previous successful Coverage Cat response and never show it to the shopper." - changed
Input schema / properties / request_type / descriptionPrevious value: -"Which post-purchase action Coverage Cat should preview or open."New value: +"Post-purchase action to preview or open: `policy_cancellation` asks the carrier to cancel the policy as of requested_effective_date, `refund_request` asks the carrier or billing provider to review a refund or outstanding balance without changing coverage, and `support_case` opens a general support case." - changed
Input schema / properties / requested_effective_date / descriptionPrevious value: -"Required for policy_cancellation. Desired cancellation date for carrier review."New value: +"Date the shopper wants a policy_cancellation to take effect. The carrier reviews it and may approve a different date."
23 tool updates
- First observed
auto_estimates - First observed
collision_and_comprehensive_coverage - First observed
consumer_intake_issues - First observed
consumer_intake_patch - First observed
docs_get_resource - First observed
docs_list_topics - First observed
docs_search - First observed
file_a_claim - First observed
home_calculator - First observed
homeowners_agent_finder - First observed
homeowners_consumer_bind - First observed
homeowners_consumer_policy - First observed
homeowners_consumer_prefill - First observed
homeowners_consumer_select - First observed
homeowners_consumer_service - First observed
umbrella_calculator - First observed
umbrella_consumer_attach - First observed
umbrella_consumer_bind - First observed
umbrella_consumer_payment - First observed
umbrella_consumer_policy - First observed
umbrella_consumer_prefill - First observed
umbrella_consumer_select - First observed
umbrella_consumer_service
Related MCP Connectors
Real insurance quotes from licensed local insurance agents you pick, side by side in your chat. One request reaches the agents you choose and the carriers they write. No spam: agents cannot call, text or email you outside PolicyVera until you accept one as your new agent or ask them to contact you. Home, auto, renters, condo, umbrella, flood, motorcycle, boat, valuables and life, in the US. Free for consumers. Sign in once on policyvera.com, and nothing is sent until you say so. PolicyVera never ranks or recommends agents, and it cannot buy, bind or pay for a policy.
Clients: let your AI manage your Hutsenpiller account. Shoppers: compare TN auto, home, flood, life.
Let AI assistants shop for home and auto insurance: compare quote estimates across every carrier.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables insurance policy analysis, risk assessment, and policy comparison with support for multiple editions (Lite free, Solo and Pro paid).41MIT
- FlicenseNot gradedqualityDmaintenanceEnables management of insurance claims, inspections, and contractors through interactive UI widgets and data tools. Users can view claim dashboards, update statuses, and query service provider information using natural language.-
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to get real home & auto insurance quotes and start binding through a network of licensed independent agencies.2Apache 2.0
- FlicenseNot gradedqualityDmaintenanceProvides an AI-powered insurance assistant with tools for customer, policy, claim, premium, fraud detection, and policy renewal operations.-
Glama MCP Gateway
Add one secure layer between your agents and this server.