{"data":{"name":"com.coveragecat/insurance","title":"Coverage Cat","description":"Insurance calculators and umbrella/homeowners shopping, purchase status, policies, and support.","version":"1.0.1","websiteUrl":"https://www.coveragecat.com","repositoryUrl":null,"remotes":[{"type":"streamable-http","url":"https://www.coveragecat.com/api/consumer/mcp"}],"packages":[],"status":"active","isLatest":true,"publishedAt":"2026-10-31T19:42:20.613Z","updatedAt":"2026-10-31T19:42:20.613Z","source":"official-registry","verification":"official","confidence":100,"stars":null,"sources":[{"source":"official-registry","sourceId":"com.coveragecat/insurance","verification":"official","confidence":100,"stars":null,"updatedAt":"2026-10-31T19:42:20.613Z","title":"Coverage Cat","description":"Insurance calculators and umbrella/homeowners shopping, purchase status, policies, and support.","websiteUrl":"https://www.coveragecat.com","repositoryUrl":null}],"toolIndex":{"tools":[{"serverName":"com.coveragecat/insurance","endpointFingerprint":"32434e5d4d32f9f282c3ebf491d5307509277e53f960c4b1c2ac6dd0c78d2168","name":"auto_estimates","title":"Auto insurance estimates","description":"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.","inputSchema":{"type":"object","properties":{"age":{"description":"Age in years of the driver being priced; the model converts it to a birth year.","minimum":16,"type":"integer"},"collision_deductible":{"description":"Dollars the driver pays toward a collision repair before collision coverage pays the rest. Omitted means $1,000.","type":"integer"},"comprehensive_deductible":{"description":"Dollars the driver pays toward non-collision damage, such as theft, hail, or vandalism, before comprehensive coverage pays the rest. Omitted means $1,000.","type":"integer"},"gender":{"description":"Driver gender code the pricing model rates on: `M` for male, `F` for female, or `N` when not specified.","type":"string"},"make":{"description":"Vehicle manufacturer, such as `Toyota` or `Honda`.","type":"string"},"model":{"description":"Vehicle model, such as `Camry` or `Civic`.","type":"string"},"seed":{"description":"Optional deterministic seed for the estimate sample when a caller wants stable repeat runs.","type":"integer"},"state":{"description":"Two-letter state code for the garaging address or rating state.","type":"string"},"style":{"description":"Vehicle trim, body style, or submodel when you want to narrow the vehicle match.","type":"string"},"year":{"description":"Vehicle model year. With make and model it prices a specific car; omit it to price a generic vehicle instead.","type":"integer"},"zip":{"description":"ZIP code for the driver or garaging location being priced.","type":"string"}},"required":["state","zip","age","gender"],"additionalProperties":true},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"definitionHash":"3dce85d07da35372f53d9b4dfa8601adcca096c8ba25f26d8b5da7bde5ec1094","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-03T10:46:27.890Z","metadataTrust":"untrusted"},{"serverName":"com.coveragecat/insurance","endpointFingerprint":"32434e5d4d32f9f282c3ebf491d5307509277e53f960c4b1c2ac6dd0c78d2168","name":"collision_and_comprehensive_coverage","title":"Collision and comprehensive coverage calculator","description":"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.","inputSchema":{"type":"object","properties":{"age":{"description":"Age in years of the driver being priced; the model converts it to a birth year.","minimum":16,"type":"integer"},"collision_deductible":{"description":"Dollars the driver pays toward a collision repair before collision coverage pays the rest. Omitted means $1,000.","type":"integer"},"comprehensive_deductible":{"description":"Dollars the driver pays toward non-collision damage, such as theft, hail, or vandalism, before comprehensive coverage pays the rest. Omitted means $1,000.","type":"integer"},"gender":{"description":"Driver gender code the pricing model rates on: `M` for male, `F` for female, or `N` when not specified.","type":"string"},"make":{"description":"Vehicle manufacturer, such as `Toyota` or `Honda`.","type":"string"},"model":{"description":"Vehicle model, such as `Camry` or `Civic`.","type":"string"},"seed":{"description":"Optional deterministic seed for the estimate sample when a caller wants stable repeat runs.","type":"integer"},"state":{"description":"Two-letter state code for the garaging address or rating state.","type":"string"},"style":{"description":"Vehicle trim, body style, or submodel when you want to narrow the vehicle match.","type":"string"},"year":{"description":"Vehicle model year. With make and model it prices a specific car; omit it to price a generic vehicle instead.","type":"integer"},"zip":{"description":"ZIP code for the driver or garaging location being priced.","type":"string"}},"required":["state","zip","age","gender"],"additionalProperties":true},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"definitionHash":"f56c4884af7067287dbe5a84901454c530d84925d7503e1f72eae3bc58f68b6f","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-03T10:46:27.890Z","metadataTrust":"untrusted"},{"serverName":"com.coveragecat/insurance","endpointFingerprint":"32434e5d4d32f9f282c3ebf491d5307509277e53f960c4b1c2ac6dd0c78d2168","name":"consumer_intake_issues","title":"Get consumer intake status","description":"Continue a consumer-prefill homeowners or umbrella handoff in chat. 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 homeowners, treat `missing_fields` as hidden enrichment backlog, keep recovering context-backed facts, reserve one final review turn, and use `consumer_intake_patch` with `message_reply` when `conversation.reply_pending` surfaces insurer or shopper follow-up. 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.","inputSchema":{"type":"object","properties":{"intake_access_token":{"description":"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.","type":"string"},"uid":{"description":"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.","type":"string"}},"required":["uid"],"additionalProperties":false},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false},"definitionHash":"1949ac9ab9770dc7fbecca2dccf712465893a9bc0b7bdfc26c00efe47f6d931b","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-03T10:46:27.890Z","metadataTrust":"untrusted"},{"serverName":"com.coveragecat/insurance","endpointFingerprint":"32434e5d4d32f9f282c3ebf491d5307509277e53f960c4b1c2ac6dd0c78d2168","name":"consumer_intake_patch","title":"Update consumer intake","description":"Patch or submit a consumer-prefill homeowners or umbrella handoff 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 homeowners, use `intake` to add context-backed or property-backed answers while keeping the user out of a questionnaire until the one-time review, and after submission use `message_reply` plus optional `reply_to_message_id` for insurer or shopper follow-up surfaced under `conversation.messages`. 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.","inputSchema":{"type":"object","properties":{"confirm_submission":{"description":"Set true only on the single final review turn.","type":"boolean"},"field_estimates":{"description":"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.","items":{"additionalProperties":true,"properties":{"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"}},"required":["field","source","confidence"],"type":"object"},"type":"array"},"idempotency_key":{"description":"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.","type":"string"},"intake":{"additionalProperties":true,"description":"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.","properties":{"current_auto_coverages":{"description":"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.","enum":["unsure","500k/1m","500k/500k","300k/300k","100k/300k"],"type":"string"}},"type":"object"},"intake_access_token":{"description":"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.","type":"string"},"message_reply":{"description":"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.","type":"string"},"reply_to_message_id":{"description":"Homeowners post-submit message_id from conversation.messages[] that message_reply answers in-thread, when Coverage Cat returned a specific message to reply to.","type":"integer"},"uid":{"description":"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.","type":"string"}},"required":["uid"],"additionalProperties":false},"annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true,"openWorldHint":false},"definitionHash":"a8fd261cbc30c85da018accfb05dd1cfc9377d70d37ed3d40ba4ef9801ebd3e9","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-03T10:46:27.890Z","metadataTrust":"untrusted"},{"serverName":"com.coveragecat/insurance","endpointFingerprint":"32434e5d4d32f9f282c3ebf491d5307509277e53f960c4b1c2ac6dd0c78d2168","name":"consumer_intake_verify_email","title":"Send shopper email verification","description":"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.","inputSchema":{"type":"object","properties":{"confirm_send":{"const":true,"description":"Confirm that the shopper asked to send a verification link to their application's email on file.","type":"boolean"},"idempotency_key":{"description":"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.","type":"string"},"intake_access_token":{"description":"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.","type":"string"},"uid":{"description":"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.","type":"string"}},"required":["uid","confirm_send"],"additionalProperties":false},"annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true,"openWorldHint":false},"definitionHash":"bb4036ffc963019ab989d958ed4a8b8bd1ead4baa595c90652c9b5e5459c0c95","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-03T10:46:27.890Z","metadataTrust":"untrusted"},{"serverName":"com.coveragecat/insurance","endpointFingerprint":"32434e5d4d32f9f282c3ebf491d5307509277e53f960c4b1c2ac6dd0c78d2168","name":"docs_get_resource","title":"Coverage Cat docs resource reader","description":"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.","inputSchema":{"type":"object","properties":{"uri":{"description":"A coveragecat:// or ui:// resource URI from docs_list_topics or docs_search.","type":"string"}},"required":["uri"],"additionalProperties":false},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"definitionHash":"6e1a31a078fdc95d5f5b97f2b261a1c214130e8336cfb45fd351492ebbb508e4","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-03T10:46:27.890Z","metadataTrust":"untrusted"},{"serverName":"com.coveragecat/insurance","endpointFingerprint":"32434e5d4d32f9f282c3ebf491d5307509277e53f960c4b1c2ac6dd0c78d2168","name":"docs_list_topics","title":"Coverage Cat docs topic index","description":"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.","inputSchema":{"type":"object","properties":{"category":{"description":"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.","enum":["all","developers","api","skills"],"type":"string"},"limit":{"description":"How many topics to return from the start of the filtered catalog. Omit it to get up to 25.","maximum":25,"minimum":1,"type":"integer"}},"additionalProperties":false},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"definitionHash":"fd19f3c19e9d0a61080f15297d840c46942d47151324fb87ed6cfffb426ee7b6","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-03T10:46:27.890Z","metadataTrust":"untrusted"},{"serverName":"com.coveragecat/insurance","endpointFingerprint":"32434e5d4d32f9f282c3ebf491d5307509277e53f960c4b1c2ac6dd0c78d2168","name":"docs_search","title":"Coverage Cat docs search","description":"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.","inputSchema":{"type":"object","properties":{"limit":{"description":"How many of the best-ranked topics to return. Omit it to get the top 5.","maximum":10,"minimum":1,"type":"integer"},"query":{"description":"Search terms describing the documentation need.","type":"string"}},"required":["query"],"additionalProperties":false},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"definitionHash":"967f4fbe7b55283ed90b04ad696641c87d3cacbd594f4ceaa98a418f767ba201","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-03T10:46:27.890Z","metadataTrust":"untrusted"},{"serverName":"com.coveragecat/insurance","endpointFingerprint":"32434e5d4d32f9f282c3ebf491d5307509277e53f960c4b1c2ac6dd0c78d2168","name":"file_a_claim","title":"Auto claim filing break-even calculator","description":"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.","inputSchema":{"type":"object","properties":{"age":{"description":"Age in years of the driver being priced; the model converts it to a birth year.","minimum":16,"type":"integer"},"collision_deductible":{"description":"Dollars the driver pays toward a collision repair before collision coverage pays the rest. Omitted means $1,000.","type":"integer"},"comprehensive_deductible":{"description":"Dollars the driver pays toward non-collision damage, such as theft, hail, or vandalism, before comprehensive coverage pays the rest. Omitted means $1,000.","type":"integer"},"gender":{"description":"Driver gender code the pricing model rates on: `M` for male, `F` for female, or `N` when not specified.","type":"string"},"make":{"description":"Vehicle manufacturer, such as `Toyota` or `Honda`.","type":"string"},"model":{"description":"Vehicle model, such as `Camry` or `Civic`.","type":"string"},"repair_estimate":{"description":"Approximate dollar amount you expect to pay to repair the vehicle if you do not file a claim.","minimum":0,"type":"integer"},"seed":{"description":"Optional deterministic seed for the estimate sample when a caller wants stable repeat runs.","type":"integer"},"state":{"description":"Two-letter state code for the garaging address or rating state.","type":"string"},"style":{"description":"Vehicle trim, body style, or submodel when you want to narrow the vehicle match.","type":"string"},"year":{"description":"Vehicle model year. With make and model it prices a specific car; omit it to price a generic vehicle instead.","type":"integer"},"zip":{"description":"ZIP code for the driver or garaging location being priced.","type":"string"}},"required":["state","zip","age","gender","repair_estimate"],"additionalProperties":true},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"definitionHash":"b5086e0e5caf28c204904df7ff82977907e001b703dbd64521933abf1923c6fc","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-03T10:46:27.890Z","metadataTrust":"untrusted"},{"serverName":"com.coveragecat/insurance","endpointFingerprint":"32434e5d4d32f9f282c3ebf491d5307509277e53f960c4b1c2ac6dd0c78d2168","name":"home_calculator","title":"Home insurance calculator","description":"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.","inputSchema":{"type":"object","properties":{"home_sqft":{"description":"Approximate finished living area of the home in square feet.","maximum":25000,"minimum":1,"type":"integer"},"risk_factors":{"description":"Optional Coverage Cat risk-factor ids, such as `pool` or `old_systems`, for property traits that can change premium.","items":{"type":"string"},"type":"array"},"zip":{"description":"ZIP code for the California property being estimated.","type":"string"}},"required":["zip","home_sqft"],"additionalProperties":false},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"definitionHash":"4009dd0e355b78009a4ecf7d942c363b086007700457dec097694a65f24da4c3","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-03T10:46:27.890Z","metadataTrust":"untrusted"},{"serverName":"com.coveragecat/insurance","endpointFingerprint":"32434e5d4d32f9f282c3ebf491d5307509277e53f960c4b1c2ac6dd0c78d2168","name":"homeowners_agent_finder","title":"Homeowners agent finder","description":"Find licensed homeowners insurance agents near a ZIP code using state department of insurance licensing data. California searches return agents within 75 miles, nearest first; Texas searches return agents in the same ZIP. ZIP codes in other states return an empty agents list alongside supported_states. Each agent record includes name, agency, license, lines, location, contact details, and source links.","inputSchema":{"type":"object","properties":{"limit":{"description":"How many agent records to return. Omit it to get up to 25; Coverage Cat returns at most 50 even when asked for more.","maximum":100,"minimum":1,"type":"integer"},"lines":{"description":"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.","items":{"type":"string"},"type":"array"},"zip":{"description":"ZIP code to search for nearby homeowners agents.","type":"string"}},"required":["zip"],"additionalProperties":false},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"definitionHash":"07753a258a96edda3cee7c3b91ee972684f8f2ee99a9fcf9c98853568909dbae","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-03T10:46:27.890Z","metadataTrust":"untrusted"},{"serverName":"com.coveragecat/insurance","endpointFingerprint":"32434e5d4d32f9f282c3ebf491d5307509277e53f960c4b1c2ac6dd0c78d2168","name":"homeowners_consumer_bind","title":"Confirm homeowners bind","description":"Confirm the previewed homeowners offer after `homeowners_consumer_select` returns `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. Reuse the returned preview_token, set bind_confirmed: true, and stay on the same consumer-operated follow-up tool set. Coverage Cat cannot collect homeowners payment in chat; any carrier payment or signing link is emailed to the customer's email on file.","inputSchema":{"type":"object","properties":{"bind_confirmed":{"const":true,"description":"Attests that the shopper approved the previewed homeowners bind terms in chat, including email delivery of any carrier payment or signing links.","type":"boolean"},"idempotency_key":{"description":"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.","type":"string"},"intake_access_token":{"description":"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.","type":"string"},"preview_token":{"description":"Preview token returned by `homeowners_consumer_select` in the `ready_to_finalize` response for this exact offer.","type":"string"},"uid":{"description":"Coverage Cat intake uid returned by the earlier homeowners consumer-prefill or follow-up response.","type":"string"}},"required":["uid","preview_token","bind_confirmed"],"additionalProperties":false},"annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true,"openWorldHint":false},"definitionHash":"da2c6dd21a287eb7560648178eea77cb4c78271c153517f560f8ab3e049737a1","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-03T10:46:27.890Z","metadataTrust":"untrusted"},{"serverName":"com.coveragecat/insurance","endpointFingerprint":"32434e5d4d32f9f282c3ebf491d5307509277e53f960c4b1c2ac6dd0c78d2168","name":"homeowners_consumer_policy","title":"Get homeowners policy","description":"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.","inputSchema":{"type":"object","properties":{"intake_access_token":{"description":"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.","type":"string"},"uid":{"description":"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.","type":"string"}},"required":["uid"],"additionalProperties":false},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false},"definitionHash":"d508586cbd92b046305271c382eb4744fe7f85a555100d411be36cd034424a0a","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-03T10:46:27.890Z","metadataTrust":"untrusted"},{"serverName":"com.coveragecat/insurance","endpointFingerprint":"32434e5d4d32f9f282c3ebf491d5307509277e53f960c4b1c2ac6dd0c78d2168","name":"homeowners_consumer_prefill","title":"Start homeowners application","description":"Preferred homeowners MCP entry point when a shopper wants Coverage Cat to shop for, compare, or buy homeowners insurance and no operator bearer token is present. On a cold start, ask only for the user's name, email, property address, and whether this should be standard homeowners, condo, or landlord coverage. If that coverage type is still unknown, ask the shopper to reply with exactly one of `standard homeowners`, `condo`, or `landlord`, then enrich from user-controlled context and property sources before handing off to Coverage Cat. Recover core shopper and occupancy facts from that context before relying on estimated review data. Stay on the same consumer-operated subset through review, quote polling, `homeowners_consumer_select`, `homeowners_consumer_bind`, `homeowners_consumer_policy`, and `homeowners_consumer_service`. Homeowners quotes or carrier bind follow-up may take up to 48 hours. If `consumer_intake_issues` returns `conversation.reply_pending`, answer in chat with `consumer_intake_patch` and `message_reply`. 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. Homeowners payment or signing links must be sent to the customer's own email inbox on file. Until submission, tell the shopper the application is not submitted yet.","inputSchema":{"type":"object","properties":{"credit_consent_pending":{"const":true,"description":"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.","type":"boolean"},"field_estimates":{"description":"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.","items":{"additionalProperties":true,"properties":{"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"}},"required":["field","source","confidence"],"type":"object"},"type":"array"},"idempotency_key":{"description":"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.","type":"string"},"intake":{"additionalProperties":true,"description":"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.","type":"object"}},"required":["credit_consent_pending","intake"],"additionalProperties":false},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"definitionHash":"f9dccd13089c7b62d19b7d30a38e86f5fded19527b84327eac69f855046619e7","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-03T10:46:27.890Z","metadataTrust":"untrusted"},{"serverName":"com.coveragecat/insurance","endpointFingerprint":"32434e5d4d32f9f282c3ebf491d5307509277e53f960c4b1c2ac6dd0c78d2168","name":"homeowners_consumer_select","title":"Homeowners consumer offer select","description":"Continue the consumer-prefill homeowners 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, and let Coverage Cat stage the exact selected offer for one final bind approval in chat. This select step does not collect payment and does not start carrier bind follow-up yet.","inputSchema":{"type":"object","properties":{"idempotency_key":{"description":"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.","type":"string"},"intake_access_token":{"description":"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.","type":"string"},"selection_confirmed":{"const":true,"description":"Attests that the shopper explicitly picked the offer named by selection_token in chat, rather than the agent choosing for them.","type":"boolean"},"selection_token":{"description":"selection_token of the shopper's chosen offer from `offers[]` in the latest quoted follow-up response.","type":"string"},"uid":{"description":"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.","type":"string"}},"required":["uid","selection_token","selection_confirmed"],"additionalProperties":false},"annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true,"openWorldHint":false},"definitionHash":"53aa88d8605f19f17754eef2747adbefde9297c705d87339eebf0c6ee266223d","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-03T10:46:27.890Z","metadataTrust":"untrusted"},{"serverName":"com.coveragecat/insurance","endpointFingerprint":"32434e5d4d32f9f282c3ebf491d5307509277e53f960c4b1c2ac6dd0c78d2168","name":"homeowners_consumer_service","title":"Preview or open homeowners service request","description":"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.","inputSchema":{"type":"object","properties":{"confirm_request":{"description":"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.","type":"boolean"},"details":{"description":"Shopper-approved context beyond the short reason, such as the specifics of a billing dispute, recorded on the request and its preview.","type":"string"},"idempotency_key":{"description":"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.","type":"string"},"intake_access_token":{"description":"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.","type":"string"},"reason":{"description":"Short shopper-approved reason for the request.","type":"string"},"request_type":{"description":"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.","enum":["policy_cancellation","refund_request","support_case"],"type":"string"},"requested_effective_date":{"description":"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.","format":"date","type":"string"},"uid":{"description":"Coverage Cat intake uid for the current shopper session.","type":"string"}},"required":["uid","request_type","reason"],"additionalProperties":false,"description":"requested_effective_date is required when request_type is policy_cancellation."},"annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true,"openWorldHint":false},"definitionHash":"3083e9fe0d44ad4fd59292ad277588170204e786bf741365daf138d04f796209","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-03T10:46:27.890Z","metadataTrust":"untrusted"},{"serverName":"com.coveragecat/insurance","endpointFingerprint":"32434e5d4d32f9f282c3ebf491d5307509277e53f960c4b1c2ac6dd0c78d2168","name":"umbrella_bundle_comparison","title":"Standalone umbrella vs. bundle calculator","description":"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.","inputSchema":{"type":"object","properties":{"auto_upgrade_premium":{"default":0,"description":"Additional annual cost to meet standalone umbrella requirements. Whole US dollars.","maximum":1000000,"minimum":0,"title":"Annual auto limit upgrade","type":"integer"},"bundled_auto_premium":{"description":"Annual replacement auto quote, after discounts, with required limits. Double a six-month premium; multiply a monthly premium by 12. Whole US dollars.","maximum":1000000,"minimum":0,"title":"Bundled auto premium","type":"integer"},"bundled_home_premium":{"description":"Annual replacement home quote, after discounts, with required limits. Whole US dollars.","maximum":1000000,"minimum":0,"title":"Bundled home premium","type":"integer"},"bundled_umbrella_premium":{"description":"Annual bundled umbrella quote at the same limit. Whole US dollars.","maximum":1000000,"minimum":0,"title":"Bundled umbrella premium","type":"integer"},"coverage_comparable":{"default":false,"description":"True only after comparing limits, deductibles, exclusions, insured risks, and claims terms.","title":"Coverage terms have been compared","type":"boolean"},"current_auto_premium":{"description":"Annual premium for the auto policies you would keep. Double a six-month premium; multiply a monthly premium by 12. Whole US dollars.","maximum":1000000,"minimum":0,"title":"Current auto premium","type":"integer"},"current_home_premium":{"description":"Annual premium for the home, renters, or rental policies you would keep. Whole US dollars.","maximum":1000000,"minimum":0,"title":"Current home premium","type":"integer"},"home_upgrade_premium":{"default":0,"description":"Additional annual cost to meet standalone umbrella requirements. Whole US dollars.","maximum":1000000,"minimum":0,"title":"Annual home limit upgrade","type":"integer"},"standalone_umbrella_premium":{"description":"Annual standalone umbrella quote at the limit you want. Whole US dollars.","maximum":1000000,"minimum":0,"title":"Standalone umbrella premium","type":"integer"},"switching_cost":{"default":0,"description":"Additional nonrefundable cost of moving to the bundle; exclude refunded or overlapping premiums. Whole US dollars.","maximum":1000000,"minimum":0,"title":"One-time switching cost","type":"integer"},"years":{"default":3,"description":"Assumes unchanged annual premiums across this period.","maximum":30,"minimum":1,"title":"Years to compare","type":"integer"}},"required":["current_auto_premium","current_home_premium","standalone_umbrella_premium","bundled_auto_premium","bundled_home_premium","bundled_umbrella_premium"],"additionalProperties":false},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"definitionHash":"978e0b792adff76466f70ba5a665b5fbfad8e8a90696cb9f2fce59dc783be079","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-03T10:46:27.890Z","metadataTrust":"untrusted"},{"serverName":"com.coveragecat/insurance","endpointFingerprint":"32434e5d4d32f9f282c3ebf491d5307509277e53f960c4b1c2ac6dd0c78d2168","name":"umbrella_calculator","title":"Umbrella insurance calculator","description":"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.","inputSchema":{"type":"object","properties":{"antique_vehicles":{"description":"How many collector or antique vehicles should be counted in the risk profile.","minimum":0,"type":"integer"},"at_fault_accidents":{"description":"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.","minimum":0,"type":"integer"},"auto_count":{"description":"How many cars, trucks, or SUVs are in the household auto profile.","minimum":0,"type":"integer"},"drivers_over_70":{"description":"Number of drivers in the household who are 70 or older.","minimum":0,"type":"integer"},"drivers_under_22":{"description":"Number of drivers in the household who are younger than 22.","minimum":0,"type":"integer"},"jet_skis":{"description":"Count of personal watercraft such as jet skis.","minimum":0,"type":"integer"},"large_watercraft":{"description":"Count of boats of any size; personal watercraft go under jet_skis.","minimum":0,"type":"integer"},"motorcycles":{"description":"How many motorcycles should be added to the total vehicle exposure.","minimum":0,"type":"integer"},"moving_violations":{"description":"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.","minimum":0,"type":"integer"},"property_count":{"description":"How many residential properties the household owns or carries liability for.","minimum":0,"type":"integer"},"zip":{"description":"ZIP code for the household being priced.","type":"string"}},"required":["zip"],"additionalProperties":false},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"definitionHash":"38aedc42d6e2befe225af4ac3babe08d4c01ea906fbafb62577c88dceb83917e","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-03T10:46:27.890Z","metadataTrust":"untrusted"},{"serverName":"com.coveragecat/insurance","endpointFingerprint":"32434e5d4d32f9f282c3ebf491d5307509277e53f960c4b1c2ac6dd0c78d2168","name":"umbrella_consumer_attach","title":"Umbrella consumer attachment upload","description":"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.","inputSchema":{"type":"object","properties":{"attachments":{"description":"Upload multiple declarations in one call when both files are already available.","items":{"additionalProperties":false,"properties":{"content":{"contentEncoding":"base64","description":"The whole declarations document named by filename, not an excerpt, summary, or extracted text.","type":"string"},"filename":{"description":"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.","type":"string"},"type":{"description":"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`.","enum":["declarations","auto_declarations"],"type":"string"}},"required":["type","filename","content"],"type":"object"},"minItems":1,"type":"array"},"content":{"contentEncoding":"base64","description":"The whole declarations document named by filename, not an excerpt, summary, or extracted text.","type":"string"},"filename":{"description":"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.","type":"string"},"idempotency_key":{"description":"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.","type":"string"},"intake_access_token":{"description":"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.","type":"string"},"type":{"description":"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`.","enum":["declarations","auto_declarations"],"type":"string"},"uid":{"description":"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.","type":"string"}},"required":["uid"],"additionalProperties":false,"description":"Provide either type, filename, and content for one upload or attachments for a batch upload, never both modes."},"annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true,"openWorldHint":false},"definitionHash":"71c08d7d75c6a18f3c97c401e437ba6f2eadf262739c54c40c0da2a2c32bf5ac","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-03T10:46:27.890Z","metadataTrust":"untrusted"},{"serverName":"com.coveragecat/insurance","endpointFingerprint":"32434e5d4d32f9f282c3ebf491d5307509277e53f960c4b1c2ac6dd0c78d2168","name":"umbrella_consumer_bind","title":"Continue umbrella bind","description":"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.","inputSchema":{"type":"object","properties":{"idempotency_key":{"description":"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.","type":"string"},"intake":{"additionalProperties":true,"description":"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.","type":"object"},"intake_access_token":{"description":"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.","type":"string"},"uid":{"description":"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.","type":"string"}},"required":["uid"],"additionalProperties":false},"annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true,"openWorldHint":false},"definitionHash":"1a16baab848f922ca19718bfa3ab90d99e11b46434cf211a53a9b7f701a0ad77","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-03T10:46:27.890Z","metadataTrust":"untrusted"},{"serverName":"com.coveragecat/insurance","endpointFingerprint":"32434e5d4d32f9f282c3ebf491d5307509277e53f960c4b1c2ac6dd0c78d2168","name":"umbrella_consumer_payment","title":"Collect umbrella payment","description":"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.","inputSchema":{"type":"object","properties":{"idempotency_key":{"description":"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.","type":"string"},"intake_access_token":{"description":"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.","type":"string"},"payment_collection_requested":{"const":true,"description":"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.","type":"boolean"},"payment_method_id":{"description":"Reusable Stripe PaymentMethod id produced by secure client-side setup confirmation.","type":"string"},"setup_intent_id":{"description":"SetupIntent id returned by the earlier payment_collection_ready response.","type":"string"},"uid":{"description":"Coverage Cat intake uid for the current shopper session.","type":"string"}},"required":["uid"],"additionalProperties":false,"description":"Provide either payment_collection_requested: true or both setup_intent_id and payment_method_id, never both modes."},"annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true,"openWorldHint":false},"definitionHash":"4137cca3e8b9692a6eba292140b27abe943723f91cc3da74876d8e1193091cc8","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-03T10:46:27.890Z","metadataTrust":"untrusted"},{"serverName":"com.coveragecat/insurance","endpointFingerprint":"32434e5d4d32f9f282c3ebf491d5307509277e53f960c4b1c2ac6dd0c78d2168","name":"umbrella_consumer_policy","title":"Get umbrella policy","description":"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.","inputSchema":{"type":"object","properties":{"intake_access_token":{"description":"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.","type":"string"},"uid":{"description":"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.","type":"string"}},"required":["uid"],"additionalProperties":false},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false},"definitionHash":"310bcbcb6d4c03aa63aea57df9a65e2e6acdc041c8b8e6ba7060abd0551cd352","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-03T10:46:27.890Z","metadataTrust":"untrusted"},{"serverName":"com.coveragecat/insurance","endpointFingerprint":"32434e5d4d32f9f282c3ebf491d5307509277e53f960c4b1c2ac6dd0c78d2168","name":"umbrella_consumer_prefill","title":"Umbrella consumer prefill handoff","description":"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.","inputSchema":{"type":"object","properties":{"credit_consent_pending":{"const":true,"description":"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.","type":"boolean"},"field_estimates":{"description":"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.","items":{"additionalProperties":true,"properties":{"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"}},"required":["field","source","confidence"],"type":"object"},"type":"array"},"idempotency_key":{"description":"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.","type":"string"},"intake":{"additionalProperties":true,"description":"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.","properties":{"current_auto_coverages":{"description":"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.","enum":["unsure","500k/1m","500k/500k","300k/300k","100k/300k"],"type":"string"}},"type":"object"},"sandbox":{"description":"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.","type":"boolean"}},"required":["credit_consent_pending","intake"],"additionalProperties":false},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"definitionHash":"88a066575c49c47d19f137841a3d55f616d0368fa30e4722c714bc3c5c38ef69","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-03T10:46:27.890Z","metadataTrust":"untrusted"},{"serverName":"com.coveragecat/insurance","endpointFingerprint":"32434e5d4d32f9f282c3ebf491d5307509277e53f960c4b1c2ac6dd0c78d2168","name":"umbrella_consumer_select","title":"Umbrella consumer offer select","description":"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 consent for a soft credit check here, and let Coverage Cat enter the normal post-choose workflow without switching to delegated tools. 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 still returns credit_consent_required with a bind-stage next_question, ask for both the soft-credit-check consent and those bind details in one shopper-facing turn, then retry this same tool with both credit_consent and intake.","inputSchema":{"type":"object","properties":{"credit_consent":{"additionalProperties":false,"description":"Real-user consent for a soft credit check, collected on the selection turn when Coverage Cat asks for it.","properties":{"answer":{"description":"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.","enum":["Yes"],"type":"string"},"collected_from_user":{"const":true,"description":"Attests that the shopper personally answered the credit consent question in this conversation, rather than the agent assuming their consent.","type":"boolean"}},"required":["answer","collected_from_user"],"type":"object"},"idempotency_key":{"description":"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.","type":"string"},"intake":{"additionalProperties":true,"description":"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.","type":"object"},"intake_access_token":{"description":"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.","type":"string"},"selection_confirmed":{"const":true,"description":"Attests that the shopper explicitly picked the offer named by selection_token in chat, rather than the agent choosing for them.","type":"boolean"},"selection_token":{"description":"selection_token of the shopper's chosen offer from `offers[]` in the latest quoted follow-up response.","type":"string"},"uid":{"description":"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.","type":"string"},"um_uim_election":{"description":"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.","oneOf":[{"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"}]}},"required":["uid","selection_token","selection_confirmed"],"additionalProperties":false},"annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true,"openWorldHint":false},"definitionHash":"636f46f1fed7c37b45aada6e056b3fdb744e1ad444e0f84301f60b2516e6d150","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-03T10:46:27.890Z","metadataTrust":"untrusted"},{"serverName":"com.coveragecat/insurance","endpointFingerprint":"32434e5d4d32f9f282c3ebf491d5307509277e53f960c4b1c2ac6dd0c78d2168","name":"umbrella_consumer_service","title":"Preview or open umbrella service request","description":"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.","inputSchema":{"type":"object","properties":{"confirm_request":{"description":"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.","type":"boolean"},"details":{"description":"Shopper-approved context beyond the short reason, such as the specifics of a billing dispute, recorded on the request and its preview.","type":"string"},"idempotency_key":{"description":"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.","type":"string"},"intake_access_token":{"description":"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.","type":"string"},"reason":{"description":"Short shopper-approved reason for the request.","type":"string"},"request_type":{"description":"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.","enum":["policy_cancellation","refund_request","support_case"],"type":"string"},"requested_effective_date":{"description":"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.","format":"date","type":"string"},"uid":{"description":"Coverage Cat intake uid for the current shopper session.","type":"string"}},"required":["uid","request_type","reason"],"additionalProperties":false,"description":"requested_effective_date is required when request_type is policy_cancellation."},"annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true,"openWorldHint":false},"definitionHash":"78b4eb71306ec2898af46133dce22f571bc217540f6409ff3d5e6c95079cbe44","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-03T10:46:27.890Z","metadataTrust":"untrusted"}],"endpoints":[{"endpointFingerprint":"32434e5d4d32f9f282c3ebf491d5307509277e53f960c4b1c2ac6dd0c78d2168","protocol":"streamable-http","status":"indexed","toolCount":27,"observedAt":"2026-11-03T10:46:27.890Z"}],"authentication":"unknown"},"connectionConfigurations":{"status":"ready","authentication":"not embedded","clients":{"Claude Desktop":{"mcpServers":{"com.coveragecat/insurance":{"url":"https://www.coveragecat.com/api/consumer/mcp"}}},"Cursor":{"mcpServers":{"com.coveragecat/insurance":{"url":"https://www.coveragecat.com/api/consumer/mcp"}}},"VS Code":{"servers":{"com.coveragecat/insurance":{"type":"http","url":"https://www.coveragecat.com/api/consumer/mcp"}}}}},"resourceType":"mcp-server","callable":true,"runtime":{"callable":true,"protocols":["mcp"]},"interfaces":[{"protocol":"mcp","transport":"streamable-http","url":"https://www.coveragecat.com/api/consumer/mcp"}],"profile":{"apiVersion":"1","schemaVersion":"1","id":"mcp-server:com.coveragecat%2Finsurance","resourceType":"mcp-server","canonicalUrl":"https://www.agentsjunction.com/api/v1/servers/com.coveragecat%2Finsurance","name":"com.coveragecat/insurance","description":"Insurance calculators and umbrella/homeowners shopping, purchase status, policies, and support.","interfaces":[{"protocol":"mcp","transport":"streamable-http","url":"https://www.coveragecat.com/api/consumer/mcp"}],"capabilities":[],"identity":{"source":"official-registry","websiteUrl":"https://www.coveragecat.com","repositoryUrl":null,"version":"1.0.1"},"verification":{"state":"official","confidence":100},"operations":{"resourceType":"mcp-server","name":"com.coveragecat/insurance","status":"online","lastCheckedAt":"2026-11-03T20:17:11.837Z","lastSuccessfulCheck":"2026-11-03T20:17:11.837Z","latencyMs":189,"consecutiveFailures":0,"isStale":false,"checks":{"endpointReachable":true,"protocolValid":true,"agentCardValid":null,"mcpHandshakeValid":true},"lastSeen":null,"lastSuccessfulInteraction":null,"lastHealthCheck":"2026-11-03T20:17:11.837Z","source":{"type":"health-check","url":null},"observedAt":"2026-11-03T20:17:11.837Z"},"security":null,"timestamps":{"createdAt":"2026-10-31T19:42:20.613Z","updatedAt":"2026-10-31T19:42:20.613Z","observedAt":"2026-11-03T20:17:11.837Z"},"compatibility":{"serverVersion":"1.0.1","protocolVersions":[{"protocol":"mcp","version":null}]}}}}