Skip to main content
Glama

Quotor — Home & Auto Insurance Quotes

Server Details

Real, bindable home & auto insurance quotes via MCP (Texas, expanding); human-completed bind.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
quotor/home-auto-insurance-quotes
GitHub Stars
0
Server Listing
Quotor

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.6/5 across 11 of 11 tools scored.

Server CoherenceA
Disambiguation4/5

Tools are mostly distinct, but `check_late_arrivals` and `check_quote_status` have some overlap in purpose (both deal with quote progress). `get_bind_link` and `request_bind_inline` are closely related, though descriptions clarify their different use cases. Overall, ambiguity is low.

Naming Consistency5/5

All tool names follow a consistent `verb_noun` snake_case pattern (e.g., `check_eligibility`, `get_option_details`), making it easy to predict the action and target.

Tool Count5/5

11 tools cover the full home/auto insurance quoting process without unnecessary bloat. Each tool serves a clear step in the workflow, from eligibility to bind and lead capture.

Completeness4/5

The tool set covers the main lifecycle: quoting, updating, checking status, late-arrival improvements, details, binding, and resume. Minor gaps exist (e.g., no tool to cancel a bind request or retrieve historical quotes), but these are not critical for typical flows.

Available Tools

11 tools
check_eligibilityA
Read-only
Inspect

Confirm whether Libertas can quote and bind insurance for the customer in their state. Call this first — before collecting any personal details — when the customer asks about insurance prices, switching carriers, or shopping for coverage. State is supplied automatically from the request context (the platform's location consent flow); you don't need to ask the customer for state to call this. Returns whether quoting is available, whether binding is available, and a plain-language explanation the customer can read.

ParametersJSON Schema
NameRequiredDescriptionDefault
intentNoWhether you're checking ability to 'quote' or to 'bind' (default 'quote').quote
productYesLine of business: 'auto', 'home', or 'bundle' (home + auto).

Output Schema

ParametersJSON Schema
NameRequiredDescription
stateNo
can_bindNo
can_quoteNo
next_stepNo
explanationNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations provide readOnlyHint and openWorldHint. Description adds return values (quoting/binding availability, explanation) and auto-state behavior, adding context beyond annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three concise sentences: purpose, usage, return summary. Front-loaded with key info, no wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Simple tool with good annotations and full schema; description covers all essential aspects for an agent to correctly invoke it. Output schema exists, so return details are covered.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so parameters are well-documented. Description adds value by noting that state is supplied automatically, explaining the absence of a state parameter, which is useful extra semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it 'confirm[s] whether Libertas can quote and bind insurance for the customer in their state', with a specific verb and resource. It distinguishes from siblings by being the first call to make before personal details.

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?

Explicitly says 'Call this first — before collecting any personal details — when the customer asks about insurance prices, switching carriers, or shopping for coverage.' Also clarifies that state is auto-supplied, so no need to ask customer.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

check_late_arrivalsA
Read-only
Inspect

Save-the-sale tool — call when the customer signals dissatisfaction with the current options ("too expensive", "let me think", "what else do you have", "is this the best you can do", "I'll check elsewhere", "can you do better"). Some carriers (Foremost STAR, etc.) run slower than the initial set and may have come back with a better rate while the customer was deliberating. This tool:

  1. Pulls a fresh read of all rated carriers.

  2. Compares the current cheapest bundle/LOB price to the original first-quoted best.

  3. Returns has_improvement=true ONLY if a late carrier beats the original by >= $100/yr OR >= 5% — a threshold meaningful enough to justify interrupting the customer.

CALL THIS ONLY WHEN:

  • check_quote_status has returned 'quoted' at least once (there's a baseline to compare).

  • The customer just expressed price resistance or hesitation (not a closed positive).

  • You have NOT called check_late_arrivals in the last 2 turns (don't spam).

DO NOT CALL WHEN:

  • The customer is actively committing ("yeah let's go with A") — that's a close moment, not a wavering moment.

  • The customer hasn't seen the initial options yet.

WHAT TO DO WITH THE RESULT:

  • has_improvement=true → narrate the improvement naturally ("Quick update — one more carrier just came in $X/yr cheaper. Want me to refresh your options?") and the iframe auto-updates with the new state.

  • has_improvement=false → acknowledge the customer's concern, pivot to value positioning against the options on the table. Don't bluff a "better one is coming" if it isn't. Use the carriers_still_pending count if relevant ("a couple more carriers are still finalizing in the background — I'll flag if anything comes in lower").

ParametersJSON Schema
NameRequiredDescriptionDefault
quote_idYesThe quote session id to check for late-arriving carrier rates.

Output Schema

ParametersJSON Schema
NameRequiredDescription
new_optionsNo
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnlyHint=true and openWorldHint=true. The description adds substantial behavioral context: it pulls fresh reads, compares to original best, and uses a meaningful threshold ($100/yr or 5%). It also explains result handling with natural language narratives, providing transparency beyond annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is thorough but front-loaded with the core purpose. While longer, each sentence serves a clear role (purpose, prerequisites, exclusions, result handling). Slightly verbose but well-organized, making it effective for a complex decision tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the output schema exists, the description adequately covers the boolean result and how to act on both true/false cases. It also addresses rate limits (2-turn cooldown) and linkage to customer state. The tool's conversational context is fully accounted for, making it complete for an AI agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The sole parameter quote_id is well-described in the schema (100% coverage). The description adds context by tying the quote_id to the session that already has a baseline, reinforcing its purpose. This extra guidance justifies a score above baseline 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose as a 'save-the-sale' mechanism to check for late carrier rates when a customer shows dissatisfaction. It distinguishes itself from sibling tools like check_quote_status (initial quote status) and get_quote_options (showing options) by focusing on detecting improvements from previously slower carriers, using specific language like 'compares the current cheapest... to the original first-quoted best'.

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?

Provides explicit conditions for when to call (after check_quote_status returns 'quoted', customer expresses price resistance, not called in last 2 turns) and when not to call (customer is committing or hasn't seen initial options). This clearly guides the agent on appropriate invocation, differentiating from alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

check_quote_statusA
Read-only
Inspect

Check rating + live-finishing progress. Call between wait-phase questions (every customer turn or two after get_quote_options). Returns one of:

  • 'running' — indicatives still landing; continue the wait-phase conversation, call again next turn.

  • 'quoted' — options[] is populated. CHECK THE 'finishing' BLOCK: when finishing.active=true, the exact bindable rates are STILL being captured live at the carrier portals — present the price ranges confidently as honest estimates (the low end is the carrier's own starting figure; NEVER promise the final number can't exceed the range), keep the conversation going, and keep checking on later turns; cards harden to 'verified' automatically as walks complete. When finishing.active=false, the run is over: cards marked 'verified' are exact bindable numbers; anything still 'estimate' stays a range that a licensed agent confirms at bind.

  • 'timeout' — carriers took too long; offer to retry with get_quote_options.

  • 'needs_data' — carriers can't rate until the customer supplies the fields in needs.prompts (e.g. a driver's license number, a VIN, or an additional driver's name/date of birth — each prompt says who/what it's for). Ask the customer conversationally, apply the answers with update_quote (the prompt 'field' values are the exact patch paths, e.g. drivers[1].date_of_birth), then call get_quote_options to re-run. Repeat as many times as it takes — this is an ask, NOT a failure. needs may also ride along with 'quoted' when one line rated and the other still needs info.

  • 'error' — all carriers errored; flag it honestly and offer to retry. Each option carries rate_state ('verified' | 'verifying' | 'estimate') and, for unverified options, price_range {low, high}. NEVER mention carrier counts or real carrier names in chat.

ParametersJSON Schema
NameRequiredDescriptionDefault
quote_idYesThe quote session id to poll.
max_optionsNoMaximum options to return per line (1-5, default 3).

Output Schema

ParametersJSON Schema
NameRequiredDescription
needsNo
statusNo
optionsNo
quote_idNo
progress_pctNo
carrier_names_revealedNo
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Even though annotations already provide readOnlyHint and openWorldHint, the description greatly expands on behavior: it explains the different states (running, quoted, timeout, needs_data, error), how each affects the workflow, and nuances like 'needs' riding along with 'quoted'. This goes well beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is relatively long but well-structured, with a clear initial statement followed by enumerated return statuses. Every sentence provides value, and the structure helps readability. It could be slightly more concise, but it earns its length.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of the tool (multiple return statuses, integration with other tools like update_quote and get_quote_options), the description covers all necessary scenarios and provides complete guidance for handling each case. The presence of an output schema does not reduce the need for this thorough explanation.

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?

The input schema already describes both parameters with 100% coverage. The description does not add significant new information about the parameters beyond what the schema provides, so it meets the baseline but does not exceed it.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states the tool checks rating and live-finishing progress. It distinguishes itself from siblings like get_quote_options by specifying it is called between wait-phase questions and provides detailed return statuses, making its purpose very clear.

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?

The description gives explicit when-to-use guidance: 'Call between wait-phase questions (every customer turn or two after get_quote_options).' It also provides detailed instructions for each return status (e.g., how to handle 'needs_data' with update_quote), effectively guiding the agent on when and how to use the tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_option_detailsA
Read-only
Inspect

Pull the full coverage breakdown, deductibles, applied discounts, and payment plan options for a single masked option (Home Carrier A, Auto Carrier B, etc.). Use when the customer wants to dig into a specific quote before deciding. Carrier name remains masked.

ParametersJSON Schema
NameRequiredDescriptionDefault
quote_idYesThe quote session id.
option_idYesThe option to detail, e.g. 'opt_home_a' from get_quote_options.

Output Schema

ParametersJSON Schema
NameRequiredDescription
coveragesNo
premium_annualNo
premium_monthlyNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, indicating safe read operation. The description adds value by stating 'Carrier name remains masked' and enumerating the information returned (coverage breakdown, deductibles, etc.), which goes beyond annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, zero fluff. The first sentence lists the output contents, the second provides usage guidance and a behavioral note. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of an output schema, the description appropriately avoids detailing return values. It covers purpose, usage context, and a key behavioral note (masking). Parameter examples are provided. No gaps remain for this tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with both parameters documented. The description adds an example for option_id ('e.g. 'opt_home_a' from get_quote_options'), which clarifies the expected format and relationship to a sibling tool, enhancing understanding beyond the schema alone.

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 description clearly states it pulls detailed information for a single masked option, using specific terms like coverage breakdown, deductibles, discounts, and payment plan options. However, it does not explicitly differentiate from the sibling tool get_quote_options, which likely lists options; the context implies but does not state the distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says 'Use when the customer wants to dig into a specific quote before deciding,' providing clear context for when to invoke the tool. It does not mention when not to use it or contrast with alternatives, but the guidance is sufficient.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_quote_optionsAInspect

Fire all eligible A-rated carriers in parallel AND kick off live rate-finishing. RETURNS IMMEDIATELY — does NOT wait.

TWO STAGES follow:

  1. First numbers land in 30–90 seconds. Options surface as honest price RANGES — the low end is the carrier's indicative, so the final verified rate usually lands AT OR BELOW the low end.

  2. The system keeps working for 2–10 minutes after that, logging into carrier portals and walking each competitive quote to its exact bindable rate. Option cards harden from "estimated range" to "verified" as each carrier completes. check_quote_status reports this via its 'finishing' block.

What you do during the wait: KEEP THE CONVERSATION GOING with the wait-phase playbook in the system prompt (waters first, then current premium — top priority — then claims color, pets, pool, start date, payment preference). Narrate the real finishing work honestly in ONE short line when relevant; never quantify carriers or name them.

Call get_quote_options again ONLY if a rating-changing input changes (waters toggle locally — never re-fire for those).

ParametersJSON Schema
NameRequiredDescriptionDefault
quote_idYesThe quote session id returned by start_quote.
max_optionsNoMaximum options to return per line (1-5, default 3).

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusNo
messageNo
quote_idNo
expected_secondsNo
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate non-read-only and open world; description adds rich detail: immediate return, two-stage timing (30–90s first numbers, 2–10 minutes finishing), option range nature (indicative low end, final at or below), and hardening to verified. No contradictions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is relatively long but well-structured with line breaks and bold key phrases. Main action is front-loaded. Could be more concise, but information is efficiently organized.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given complexity, schema and output schema coverage, description fully covers the asynchronous process, stages, and how to check status via sibling tool. No gaps identified.

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 coverage is 100%, so baseline is 3. Description does not elaborate on parameters beyond what schema provides, but context implies their roles. No additional semantic depth added.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's core action: firing carriers in parallel and kicking off rate-finishing, returning immediately. It distinguishes from siblings like check_quote_status which reports on the process.

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?

Explicitly advises when to call (only if a rating-changing input changes) and what to do during the wait (conversation playbook). Also specifies not to re-fire for waters toggle, providing clear usage boundaries.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

request_bind_inlineAInspect

Submit the customer's bind request from the chat. Triggers an internal task for our licensed team to follow up. THIS IS NOT INSTANT BIND — no payment is collected and no coverage starts from this call; a licensed agent completes underwriting verification, payment, and carrier confirmation afterward, and the customer can still change or cancel the request. Because this step is non-binding and reversible, the customer's own clear choice ("I'd like to go with Carrier A", "let's do A and A", "I'll take Carrier B") is sufficient confirmation to submit — an additional "are you sure?" prompt is not required, though you should always honor your own platform's confirmation practices. NEVER name a real carrier in chat output — stay in "Carrier A/B/C" labels.

ParametersJSON Schema
NameRequiredDescriptionDefault
pay_planNoPay plan: 'monthly_eft' or 'pay_in_full' (required when an auto line is included).
quote_idYesThe quote session id.
best_timeNoBest time to reach the customer, e.g. 'weekday afternoons'.
option_idNoThe single option to bind (or use option_ids for a bundle/split).
option_idsNoMulti-option bind. Either option_id or option_ids must be provided.
contact_prefNoHow the customer prefers to be reached: 'call', 'text', or 'email'.
customer_notesNoOptional free-text notes from the customer for the agent.
water_selectionsNoCustomer-selected water-coverage add-ons for home options (service line, water seepage, foundation water, sewer backup); the agent configures these at the carrier portal at bind.

Output Schema

ParametersJSON Schema
NameRequiredDescription
bind_urlNo
quote_idNo
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond annotations, the description reveals that the tool triggers a licensed team task, is non-binding and reversible, and does not collect payment or start coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with front-loaded purpose and clear caveats, but is slightly verbose with some repeated concepts.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity and presence of output schema, the description covers all necessary context: asynchronous nature, non-binding, confirmation threshold, and naming constraints.

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 coverage is 100%, so baseline is 3. The description does not add further parameter meaning, but schema descriptions are sufficient.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Submit' and the resource 'customer's bind request', and differentiates from sibling tools like get_bind_link by specifying it triggers an internal task.

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?

The description explicitly tells when to use (customer's clear choice) and when not to use (not instant bind), and provides specific guidance on carrier naming and confirmation prompts.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

resume_quoteA
Read-only
Inspect

Pick up an existing quote that was started in a previous session or on a different platform. The customer supplies a quote ID. Verification: if the same authenticated user (OAuth user_id matches across sessions), no extra verification is needed; otherwise the customer needs to provide an email code that was sent at quote start. Returns the current status, a summary of what's collected so far, and whether rate options are already available to review.

ParametersJSON Schema
NameRequiredDescriptionDefault
quote_idYesThe quote session id to resume.
verificationNoOwnership verification (email code, platform identity, or magic link); required to return PII.

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusNo
quote_idNo
verification_requiredNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond annotations (readOnlyHint, openWorldHint), the description explains verification logic (same user vs. different user requiring code) and specifies return values: status, summary, rate option availability. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences front-load purpose, then detail verification, then describe output. No redundant or unnecessary information; each sentence earns its place.

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?

Covers core functionality, verification scenarios, and return content. With an output schema present, the description does not need to detail exact return format. Minor gaps like error handling are acceptable given schema coverage and output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with clear descriptions for both quote_id and verification. The description adds value by explaining the conditional nature of verification and the context of email codes, enhancing understanding beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific verb 'resume' (pick up) and the resource 'existing quote' with context of previous session or different platform. It distinguishes from siblings like start_quote and check_quote_status by focusing on continuation rather than creation or status check alone.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage context: when a user has an existing quote from a prior session or platform. It provides prerequisites (quote ID) and conditions (verification needed if different user). However, it does not explicitly name alternatives or say when not to use it, leaving some ambiguity against siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

start_quoteAInspect

Begin a new home, auto, or bundled insurance quote. Returns a quote ID to use on every following call. Call this when the customer wants to get an insurance price.

INTAKE ORDER (Kyle 2026-06-11 — collect in this order, ONE coherent chunk per turn):

  1. HOME/BUNDLE: full name + date of birth for EVERYONE on the policy (relationship for non-PNI).

  2. Address of the home + "is this a new purchase, or one you've owned a while?" (new purchase → ALSO capture current_address — where they live today; property.address stays the home being bought). Then mortgage + escrow + "roughly how old is the roof? — 'I don't know' is a fine answer" ride along (roof unknown → move on, never probe; roof REPLACED → one follow-up: hail-resistant / Class 1–4? → property.hail_resistant_roof + property.ul_impact_type). The home address doubles as auto garaging unless the cars live elsewhere.

  3. AUTO/BUNDLE: year/make/model of every vehicle.

  4. Any drivers NOT already named in step 1 — names + DOBs + relationship.

  5. Email + phone, framed as "where should I send your final numbers?" — the consent line is REQUIRED on this turn.

  6. ONE open question before firing: "Any coverages you want to tell me about before I run it?" Capture whatever they volunteer via update_quote and move on — do NOT turn this into a coverage consultation. Scheduled valuables (jewelry, art, guns, collections) are a POST-BIND follow-up: record them under the follow_ups patch branch and tell the customer "our team will add that right after we get this policy locked" — never try to add them mid-quote.

Then call get_quote_options immediately. Don't over-collect — the customer should reach prices fast.

ParametersJSON Schema
NameRequiredDescriptionDefault
productYesLine of business to quote: 'auto', 'home', or 'bundle'.
meta_codesNoOptional internal meta codes; ignored unless recognized.
referral_sourceNoOptional referral/partner source tag for attribution.

Output Schema

ParametersJSON Schema
NameRequiredDescription
quote_idNo
session_expires_atNo
next_required_inputsNo
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses that it returns a quote ID for subsequent calls. Provides an extensive, structured intake script detailing how to collect information. Annotations do not contradict; openWorldHint is reflected in flexible intake.

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 description is quite long with multiple paragraphs and a detailed ordered list. While informative, it is not concise; the first sentence is clear but the rest could be trimmed.

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?

Given the output schema exists, return values need not be explained. The description provides extensive context on the intake process, making it complete for an agent.

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 covers all 3 parameters with 100% description coverage. Description does not add significant new meaning beyond schema; baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it begins a new quote for home, auto, or bundle, and returns a quote ID. It distinguishes from siblings like resume_quote and get_quote_options.

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?

Explicitly says 'Call this when the customer wants to get an insurance price.' Also provides a detailed intake order and instructs to call get_quote_options immediately after.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

submit_leadAInspect

Capture a lead for an insurance product Libertas doesn't quote inline (renters, life, commercial, motorcycle, boat, RV, umbrella, condo, landlord, etc.) — OR any home/auto customer who asks to be contacted later instead of finishing the quote in chat. Creates a row in the CRM Leads bucket so a licensed agent can follow up.

CALL THIS WHEN:

  • The customer asks about an insurance type other than home/auto/bundle, AND has shared a name + email or phone. Confirm with the customer that you're going to have someone reach out, then call this tool.

  • The customer says "have someone call me later" or similar even on a home/auto inquiry.

  • The customer mentions an unusual circumstance and wants a human follow-up.

DO NOT CALL WHEN:

  • The customer is still actively answering questions in the home/auto intake flow — keep going through the regular intake.

  • You don't have any contact info yet — ask for name + email/phone first.

What it does: writes a Leads row tagged with the line of interest, contact info, preferred follow-up time, and any notes you supply. A licensed Libertas agent will reach out within one business day. Returns a confirmation message you can paraphrase to the customer ("you're on our list — someone from the team will reach out about [interest]").

ParametersJSON Schema
NameRequiredDescriptionDefault
emailNoCustomer email.
notesNoOptional notes for the follow-up.
phoneNoCustomer phone number.
interestYesWhat the customer wants us to follow up about (e.g. 'renters insurance', 'life insurance', 'commercial auto')
quote_idNoOptional quote id to associate the lead with.
last_nameNoCustomer last name.
first_nameNoCustomer first name.
preferred_contact_timeNoe.g. 'weekday afternoons', 'after 5pm', 'tomorrow morning'
preferred_contact_methodNoHow the customer prefers to be reached: 'phone', 'email', 'text', or 'any'.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate readOnlyHint=false and openWorldHint=true, and the description explains the side effect (creates a row in CRM, triggers agent follow-up within one business day) without contradicting annotations. No destructive behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is long but well-structured: it starts with a summary, then uses bullet points for usage guidelines, and ends with additional details. Every sentence is relevant, though slightly verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (9 parameters, output schema exists), the description covers prerequisites (contact info needed), return value (confirmation message), and follow-up timeline, making it fully actionable.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptions for all 9 parameters. The description adds context beyond the schema, such as the purpose of 'interest' and that 'notes' are optional, but does not significantly expand on each parameter's meaning.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool captures leads for insurance products not quoted inline or when a customer requests follow-up, specifying the action (create CRM row) and resource (Leads bucket). It distinguishes from sibling tools like start_quote which handle inline quoting.

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?

Explicitly lists when to call (e.g., non-home/auto inquiries with contact info, customer asks for call later) and when not to call (active intake, missing contact info), providing clear context and exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

update_quoteA
Idempotent
Inspect

Set or refine any quote parameter except regulated enrichment fields (credit score, MVR, CLUE, VIN-decoded vehicle attributes, public-record property attributes). Idempotent — call as many times as needed; the most recent value wins. Returns which fields were applied, which were rejected (with reasons), and whether the quote has enough info to run.

WHEN TO CALL:

  • After collecting the required-minimum from the customer in start_quote

  • Whenever the customer changes their mind about any coverage, deductible, discount, payment plan, or term length

  • When the customer shares a declarations page and you have new values to sync

CONVERSATION STYLE for coverages (per Kyle, the agency principal): After the first rates land, walk through major coverages one-or-two-at-a-time with a soft-sell framing. Example: "You have $200,000 of personal property coverage on this quote — that's the carrier's minimum and you can only go up. Does that sound like enough for your stuff?" Let the customer pick. Then call update_quote with the new value and get_quote_options again — re-quoting is free and fast (10–60 seconds).

REGULATED FIELDS (will be rejected with structured reason): drivers[].license_number, .ssn, .mvr_, .credit_score; payment fields; carrier name; vin_decoded_attributes. The system pulls these directly from the bureaus at quote time or collects them at bind on libertasinsurance.com.

ParametersJSON Schema
NameRequiredDescriptionDefault
patchYesFree-form patch onto the quote. Top-level branches: pni, drivers[], vehicles[], property, coverages, discounts, policy_terms, prior_insurance, has_mortgagee, mortgage_billed_by_lender, mortgagee, is_new_purchase, current_address (only when is_new_purchase=true — customer's address TODAY; property.address remains the home being insured), follow_ups[] (post-bind follow-up flags: {interest, note} — scheduled valuables like jewelry/art, umbrella interest, etc.; recorded for the licensed team, NEVER added to the in-flight quote). See the override matrix in the Libertas MCP docs for the full overridable field list.
quote_idYesThe quote session id returned by start_quote.
meta_codesNoOptional internal meta codes; ignored unless recognized.

Output Schema

ParametersJSON Schema
NameRequiredDescription
appliedNo
quote_idNo
rejectedNo
completenessNo
ready_to_quoteNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations provide idempotentHint=true, readOnlyHint=false, destructiveHint=false. The description adds context by stating idempotency, return fields (applied/rejected), and regulation details. It could mention error handling more explicitly, but overall adds value beyond annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with sections and front-loaded purpose. While slightly lengthy, every section serves a purpose. Could be slightly more concise but maintains clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (nested patch object, regulated fields) and presence of an output schema, the description is comprehensive, covering purpose, usage, parameters, and behavioral nuances adequately.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, providing baselines. However, the description significantly augments schema with detailed structure of the 'patch' parameter, examples, and references to an override matrix, making parameters much clearer.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Set or refine any quote parameter except regulated enrichment fields.' It specifies idempotent behavior, return values, and differentiates from siblings by detailing when to call it, such as after start_quote or when customers change their minds.

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?

The description includes an explicit 'WHEN TO CALL' section listing three distinct scenarios, and also notes that regulated fields will be rejected, providing clear guidance on appropriate usage versus alternatives like get_quote_options.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Progressive Insurance MCP connector for personal AI agents. Provides tools to get quotes, look up policies, check claims, manage payments, retrieve ID cards, get coverage recommendations, and request roadside assistance.
    7
    16
    MIT
  • A
    license
    -
    quality
    D
    maintenance
    An MCP server that enables AI agents to interact with GEICO insurance services, including getting quotes, managing policies, filing claims, making payments, retrieving ID cards, requesting roadside assistance, and reporting accidents.
    16
    1
    MIT

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.