Skip to main content
Glama

Coverage Cat

Preview or open homeowners service request

homeowners_consumer_service
DestructiveIdempotent

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.

Input Schema

NameRequiredDescriptionDefault
uidYesCoverage Cat intake uid for the current shopper session.
reasonYesShort shopper-approved reason for the request.
detailsNoShopper-approved context beyond the short reason, such as the specifics of a billing dispute, recorded on the request and its preview.
request_typeYesWhat 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_requestNoWhether 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_keyNoKey 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_tokenNoSend 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_dateNoDay 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

NameRequiredDescriptionDefault
uidYesCoverage Cat intake uid for the current handoff.
lineNo
offersNo
policyNo
reviewNoStructured review card or selected-offer review block.
schemaNoSupplemental schema hints for homeowners review payloads.
statusYes
sandboxNoTrue when Coverage Cat is returning consumer sandbox test data rather than a live shopper workflow.
supportNo
uploadedNo
documentsNo
expires_atNoWhen the current consumer handoff expires.
offers_urlNoCoverage Cat browser URL for the selected offer or offer-tracking page.
payment_uiNo
next_actionNoA structured hint for the next allowed tool or endpoint action.
payment_urlNoCoverage Cat browser URL for secure payment fallback.
post_chooseNoStructured post-choose state after a quoted umbrella offer is selected.
conversationNo
review_itemsNo
review_tokenNoOpaque review token for delegated review-style submit paths.
verificationNo
detail_statusNo
known_summaryNoStructured facts Coverage Cat can safely summarize at this stage.
next_questionNoThe current shopper-owned question bundle or bind-stage question.
offer_summaryNo
payment_setupNo
preview_tokenNoOpaque bind-preview token for the next homeowners bind confirmation.
missing_fieldsNoStructured missing-value hints for homeowners pre-submit review.
payment_statusNo
pending_fieldsNoStructured missing-value hints for umbrella pre-submit review.
selected_offerNo
uploaded_countNo
field_estimatesNo
service_previewNo
service_requestNo
purchase_previewNo
response_summaryNo
review_estimatesNo
service_requestsNo
agent_instructionsNo
poll_after_secondsNo
selection_guidanceNoGuidance for completing an offer choice in one shopper-facing reply.
compare_details_urlNoCoverage Cat browser URL for compare-details follow-up.
intake_access_tokenNoShort-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_channelNo
user_action_requiredNo
application_submittedNo
required_upload_typesNo
credit_consent_questionNo
credit_consent_disclosureNoVersioned canonical text that must be shown verbatim; echo version and text_hash with the user's response.
payment_collection_supportedNo
monoline_mvr_consent_questionNo
contact_preferences_disclosuresNoOptional versioned service-contact disclosures for the phone number on file; no marketing consent and no purchase requirement.
monoline_mvr_consent_disclosureNoVersioned Monoline-specific text that must be shown verbatim with its source URL; echo version and text_hash with the user's response.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed10 schema fields changed
    • addedOutput schema / properties / contact_preferences_disclosures / properties / service_call / properties / source_updated_at
      Added value: +{
      +  "format": "date",
      +  "type": "string"
      +}
    • addedOutput schema / properties / contact_preferences_disclosures / properties / service_call / properties / source_url
      Added value: +{
      +  "format": "uri",
      +  "type": "string"
      +}
    • addedOutput schema / properties / contact_preferences_disclosures / properties / service_sms / properties / source_updated_at
      Added value: +{
      +  "format": "date",
      +  "type": "string"
      +}
    • addedOutput schema / properties / contact_preferences_disclosures / properties / service_sms / properties / source_url
      Added value: +{
      +  "format": "uri",
      +  "type": "string"
      +}
    • addedOutput schema / properties / credit_consent_disclosure / properties / source_updated_at
      Added value: +{
      +  "format": "date",
      +  "type": "string"
      +}
    • addedOutput schema / properties / credit_consent_disclosure / properties / source_url
      Added value: +{
      +  "format": "uri",
      +  "type": "string"
      +}
    • changedOutput schema / properties / detail_status / enum
      Previous 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"
      +]
    • addedOutput schema / properties / monoline_mvr_consent_disclosure
      Added 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"
      +}
    • addedOutput schema / properties / monoline_mvr_consent_question
      Added value: +{
      +  "type": "string"
      +}
    • changedOutput schema / properties / status / enum
      Previous 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"
      +]
  2. Changed2 schema fields changed
    • addedOutput schema / properties / contact_preferences_disclosures
      Added 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"
      +}
    • addedOutput schema / properties / credit_consent_disclosure
      Added 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"
      +}
  3. Changed1 schema field changed
    • addedOutput schema / properties / verification
      Added 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"
      +}
  4. Changed1 schema field changed
    • changedInput schema / properties / intake_access_token / description
      Previous 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."
  5. Changed3 schema fields changed
    • changedInput schema / properties / idempotency_key / description
      Previous 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."
    • changedInput schema / properties / request_type / description
      Previous 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."
    • changedInput schema / properties / requested_effective_date / description
      Previous 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."
  6. Changed7 schema fields changed
    • changedInput schema / description
      Previous 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."
    • changedInput schema / properties / confirm_request / description
      Previous 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."
    • changedInput schema / properties / details / description
      Previous 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."
    • changedInput schema / properties / idempotency_key / description
      Previous 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."
    • changedInput schema / properties / intake_access_token / description
      Previous 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."
    • changedInput schema / properties / request_type / description
      Previous 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."
    • changedInput schema / properties / requested_effective_date / description
      Previous 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."
  7. First observed

TDQS

A4/5.0
Behavior4/5

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.

Conciseness3/5

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.

Completeness4/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines5/5

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.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources