Licensed US broker: every ACORD 125/126/140, SOV and loss-run question; submit property/GL quotes.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Describes the AI agent liability insurance Johal Insurance Brokers (licensed US broker) can quote: Technology E&O with affirmative AI coverage for companies that build or deploy AI agents. Returns coverages, limits, eligible states, required quote fields and how binding works. Free, no side effects.
This tool takes no arguments.
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
Run in a terminal
claude mcp add --transport http commercial-insurance https://johalinsurancebrokers.com/mcp
Describes the AI agent liability insurance Johal Insurance Brokers (licensed US broker) can quote: Technology E&O with affirmative AI coverage for companies that build or deploy AI agents. Returns coverages, limits, eligible states, required quote fields and how binding works. Free, no side effects.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Returns Johal Insurance Brokers' commercial insurance knowledge base: lines and property classes placed (commercial property $500K–$50M+, general liability, contractor GL) in CA, TX, IL, MO, WI, LA, how quoting and binding work, what a complete submission needs, and the tool list. Free, no side effects.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Returns the link to Johal Insurance Brokers' self-serve commercial property premium calculator (https://johalinsurancebrokers.com/premium-calculator) and cost guide, for users who want a ballpark price without a broker submission. Free, no side effects.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Returns the full question list a carrier needs, grouped by form: ACORD 125 (applicant), ACORD 140 (property, per building), statement of values columns (3+ buildings), ACORD 126 (general liability), the class-specific supplemental for the property type, and the document list (5-year loss runs, dec page, rent roll, SOV, photos). Free, no side effects.
| Argument | Type | Description |
|---|---|---|
| lines | array | Lines wanted (default both). |
| property_class | string | Narrow the supplemental to one class. |
{
"type": "object",
"properties": {
"lines": {
"type": "array",
"items": {
"enum": [
"property",
"general_liability"
],
"type": "string"
},
"description": "Lines wanted (default both)."
},
"property_class": {
"enum": [
"apartments",
"rental-homes",
"hotel",
"strip-center",
"warehouse",
"commercial-building",
"gas-station",
"self-storage",
"condo",
"lessors-risk",
"other"
],
"type": "string",
"description": "Narrow the supplemental to one class."
}
},
"additionalProperties": false
}Submits a quote request for AI agent liability insurance (Tech E&O + AI coverage) for a US company headquartered in CA, TX, IL, WI, LA. A licensed broker rates it and emails the quote to the company contact, usually the same business day. Free. Each call creates a real quote request that a human broker works on, using the company details provided. It does not bind coverage.
| Argument | Type | Description |
|---|---|---|
| zip | string | |
| city | string | |
| limit | number | Tech E&O limit wanted (default 1000000). |
| notes | string | |
| state* | string | State of the company's headquarters. |
| street | string | |
| website | string | Company website. |
| retention | number | Retention / deductible per claim (default 10000). |
| ai_sublimit | number | AI coverage sublimit (default 1000000; cannot exceed limit). |
Delivers base64 documents (loss runs, declarations page, SOV spreadsheet, rent roll, photos, leases) to the broker working a submission, by its CQ- reference. Up to 4 MB per call.
| Argument | Type | Description |
|---|---|---|
| notes | string | What these documents are. |
| reference* | string | Submission reference from submit_commercial_insurance_submission (CQ-…). |
| attachments* | array | Optional documents (≤4 MB total base64): loss runs, dec page, SOV, rent roll, photos. |
| contact_email* | string | Same contact email used on the submission. |
{
"type": "object",
"required": [
"reference",
"contact_email",
"attachments"
],
"properties": {
"notes": {
"type": "string",
"description": "What these documents are."
},
"reference": {
"type": "string",
"description": "Submission reference from submit_commercial_insurance_submission (CQ-…)."
},
"attachments": {
"type": "array",
"items": {
"type": "object",
"required": [
"filename",
"content_base64"
],
"properties": {
"filename": {
"type": "string",
"description": "e.g. loss-runs-2021-2026.pdf"
},
"document_type": {
"enum": [
"loss_runs",
"dec_page",
"sov",
"rent_roll",
"photos",
"lease",
"appraisal",
"contracts",
"other"
],
"type": "string"
},
"content_base64": {
"type": "string",
"description": "Base64 file content"
}
}
},
"description": "Optional documents (≤4 MB total base64): loss runs, dec page, SOV, rent roll, photos."
},
"contact_email": {
"type": "string",
"description": "Same contact email used on the submission."
}
},
"additionalProperties": false
}Sends a commercial property and/or general liability submission for a risk in CA, TX, IL, MO, WI, LA to a licensed broker at Johal Insurance Brokers, who shops it with 20+ carriers and contacts the owner, usually the same business day. Accepted only when the owner authorized it, an effective date is given, and core facts are present (per building: year built, construction, stories, square feet, building value; 5-year loss history). Requests marked price_check_only are not submitted and get the premium calculator link instead. Each accepted call creates a real submission a human works on. It does not bind coverage. Optional base64 attachments (loss runs, dec page, SOV, rent roll, photos) up to 4 MB.
| Argument | Type | Description |
|---|---|---|
| dba | string | DBA / property name. |
| lines* | array | |
| notes | string | Anything else the broker should know. |
| state* | string | State where the risk is located. |
| purpose* | string | ready_to_bind: Owner wants coverage and will bind if the terms work; renewal_shopping: Owner is shopping an upcoming renewal; new_purchase: Owner is buying or just bought the property and needs coverage at closing; uninsured_or_cancelled: Property is uninsured, cancelled or non-renewed and needs coverage now; price_check_only: Just wants a ballpark price — no intent to switch yet |
We read every tool's name, description and inputs the way the model will, looking for instructions hidden from you. A clean result means no warning signs, not a guarantee. Scanned Nov 11, 2026.
| company_name* | string | Legal name of the company to be insured. |
| contact_name* | string | Name of the human at the company who will receive the quote. |
| prior_claims | boolean | Any Tech E&O or AI-related claims, regulatory actions or cease-and-desist letters in the last 3 years? |
| contact_email* | string | Email the quote is sent to. |
| contact_phone | string |
| annual_revenue* | number | Annual gross revenue in USD (estimate is fine). |
| ai_agentic_tier* | string | How autonomously the AI acts. |
| ai_company_type | string |
| current_insurance | string | Current Tech E&O / cyber carrier and expiration date, if any. |
| ai_model_providers | array |
| requested_by_agent | string | Name of the AI agent or platform submitting this request. |
| ai_coverage_options | array | AI coverage parts wanted (default: all). |
| ai_training_approach | string |
| what_the_product_does | string | Plain description of the product and what the AI/agent does for customers. |
| ai_governance_controls | array |
| ai_high_stakes_domains | array |
{
"type": "object",
"required": [
"company_name",
"contact_name",
"contact_email",
"state",
"annual_revenue",
"ai_agentic_tier"
],
"properties": {
"zip": {
"type": "string"
},
"city": {
"type": "string"
},
"limit": {
"enum": [
1000000,
2000000,
3000000,
5000000,
10000000
],
"type": "number",
"description": "Tech E&O limit wanted (default 1000000)."
},
"notes": {
"type": "string"
},
"state": {
"enum": [
"CA",
"TX",
"IL",
"WI",
"LA"
],
"type": "string",
"description": "State of the company's headquarters."
},
"street": {
"type": "string"
},
"website": {
"type": "string",
"description": "Company website."
},
"retention": {
"enum": [
2500,
5000,
10000,
25000,
50000,
100000,
250000
],
"type": "number",
"description": "Retention / deductible per claim (default 10000)."
},
"ai_sublimit": {
"enum": [
500000,
1000000,
2000000,
5000000
],
"type": "number",
"description": "AI coverage sublimit (default 1000000; cannot exceed limit)."
},
"company_name": {
"type": "string",
"description": "Legal name of the company to be insured."
},
"contact_name": {
"type": "string",
"description": "Name of the human at the company who will receive the quote."
},
"prior_claims": {
"type": "boolean",
"description": "Any Tech E&O or AI-related claims, regulatory actions or cease-and-desist letters in the last 3 years?"
},
"contact_email": {
"type": "string",
"description": "Email the quote is sent to."
},
"contact_phone": {
"type": "string"
},
"annual_revenue": {
"type": "number",
"description": "Annual gross revenue in USD (estimate is fine)."
},
"ai_agentic_tier": {
"enum": [
"a1-passive",
"a2-constrained",
"a3-supervised",
"a4-material",
"a5-full"
],
"type": "string",
"description": "How autonomously the AI acts."
},
"ai_company_type": {
"enum": [
"ai-native",
"generic-saas",
"si-consulting",
"ai-safety",
"legal-tech",
"insurtech",
"medtech",
"fintech-lending",
"content-synthetic-media",
"hr-tech",
"autonomous-robotics",
"ai-data-labeling"
],
"type": "string"
},
"current_insurance": {
"type": "string",
"description": "Current Tech E&O / cyber carrier and expiration date, if any."
},
"ai_model_providers": {
"type": "array",
"items": {
"enum": [
"anthropic-claude",
"openai-gpt",
"google-gemini",
"meta-llama",
"mistral",
"xai-grok",
"proprietary-in-house",
"other"
],
"type": "string"
}
},
"requested_by_agent": {
"type": "string",
"description": "Name of the AI agent or platform submitting this request."
},
"ai_coverage_options": {
"type": "array",
"items": {
"enum": [
"algorithmic-bias-liability",
"ai-intellectual-property-liability",
"training-data-misuse-liability",
"regulatory-investigation-defense-costs",
"data-poisoning-adversarial-attack",
"deepfake-synthetic-media-liability"
],
"type": "string"
},
"description": "AI coverage parts wanted (default: all)."
},
"ai_training_approach": {
"enum": [
"none",
"lora-qlora",
"instruction-sft",
"full-fine-tune"
],
"type": "string"
},
"what_the_product_does": {
"type": "string",
"description": "Plain description of the product and what the AI/agent does for customers."
},
"ai_governance_controls": {
"type": "array",
"items": {
"enum": [
"iso-42001",
"bias-audit",
"pen-test",
"soc2-iso27001",
"guardrails"
],
"type": "string"
}
},
"ai_high_stakes_domains": {
"type": "array",
"items": {
"enum": [
"credit-lending",
"insurance",
"hiring",
"healthcare",
"criminal-justice",
"housing",
"education",
"none"
],
"type": "string"
}
}
},
"additionalProperties": false
}| locations | array | Property line: one entry per address, each with its buildings. |
| mortgagee | string | Lender name, address, loan #. |
| attachments | array | Optional documents (≤4 MB total base64): loss runs, dec page, SOV, rent roll, photos. |
| entity_type | string | LLC, corporation, individual, partnership, trust… |
| contact_name* | string | Human at the insured we call. |
| contact_role | string | owner / officer / property manager / other |
| loss_history* | object |
| contact_email* | string | Contact email. |
| contact_phone* | string | Contact direct phone. |
| named_insured* | string | Legal name of the owner/insured. |
| property_class | string |
| mailing_address | string | Insured's mailing address. |
| owner_authorized* | boolean | True only if the owner (or their officer/property manager) asked for this quote and agreed to be contacted by a licensed broker. |
| current_insurance | object |
| deductible_wanted | string | Desired deductible(s). |
| general_liability | object |
| years_in_business | number | Years in business or years owning the property. |
| prior_cancellation | string | Any cancellation / declination / non-renewal in 3 years, and why. |
| requested_by_agent | string | Name of the AI agent / platform submitting. |
| supplemental_answers | object | Class supplemental answers from get_submission_requirements, keyed by question. |
| proposed_effective_date* | string | YYYY-MM-DD — renewal or closing date. |
| description_of_operations* | string | How the property is used / what the business does. |
{
"type": "object",
"required": [
"purpose",
"lines",
"owner_authorized",
"named_insured",
"contact_name",
"contact_email",
"contact_phone",
"state",
"proposed_effective_date",
"description_of_operations",
"loss_history"
],
"properties": {
"dba": {
"type": "string",
"description": "DBA / property name."
},
"lines": {
"type": "array",
"items": {
"enum": [
"property",
"general_liability"
],
"type": "string"
},
"minItems": 1
},
"notes": {
"type": "string",
"description": "Anything else the broker should know."
},
"state": {
"enum": [
"CA",
"TX",
"IL",
"MO",
"WI",
"LA"
],
"type": "string",
"description": "State where the risk is located."
},
"purpose": {
"enum": [
"ready_to_bind",
"renewal_shopping",
"new_purchase",
"uninsured_or_cancelled",
"price_check_only"
],
"type": "string",
"description": "ready_to_bind: Owner wants coverage and will bind if the terms work; renewal_shopping: Owner is shopping an upcoming renewal; new_purchase: Owner is buying or just bought the property and needs coverage at closing; uninsured_or_cancelled: Property is uninsured, cancelled or non-renewed and needs coverage now; price_check_only: Just wants a ballpark price — no intent to switch yet"
},
"locations": {
"type": "array",
"items": {
"type": "object",
"required": [
"address",
"city",
"state",
"zip",
"buildings"
],
"properties": {
"zip": {
"type": "string",
"description": "ZIP"
},
"city": {
"type": "string",
"description": "City"
},
"state": {
"enum": [
"CA",
"TX",
"IL",
"MO",
"WI",
"LA"
],
"type": "string"
},
"county": {
"type": "string",
"description": "County"
},
"address": {
"type": "string",
"description": "Street"
},
"buildings": {
"type": "array",
"items": {
"type": "object",
"required": [
"year_built",
"construction_type",
"stories",
"square_feet",
"building_value"
],
"properties": {
"units": {
"type": "number",
"description": "Units / tenant spaces / rooms."
},
"stories": {
"type": "number",
"description": "Number of stories (from the owner, never guessed)."
},
"hvac_year": {
"type": "number",
"description": "Year HVAC last updated."
},
"roof_type": {
"type": "string",
"description": "Roof covering."
},
"roof_year": {
"type": "number",
"description": "Year roof last replaced."
},
"fire_alarm": {
"type": "string",
"description": "central / local / none"
},
"year_built": {
"type": "number",
"description": "Year built."
},
"sprinklered": {
"type": "string",
"description": "full / partial (%) / none"
},
"square_feet": {
"type": "number",
"description": "Total square feet."
},
"wiring_type": {
"type": "string",
"description": "copper / aluminum / knob-and-tube"
},
"wiring_year": {
"type": "number",
"description": "Year electrical last updated."
},
"hydrant_feet": {
"type": "number",
"description": "Feet to nearest hydrant."
},
"burglar_alarm": {
"type": "string",
"description": "central / local / none"
},
"plumbing_year": {
"type": "number",
"description": "Year plumbing last updated."
},
"building_value": {
"type": "number",
"description": "Building replacement cost, USD."
},
"contents_value": {
"type": "number",
"description": "Business personal property, USD (0 if none)."
},
"building_number": {
"type": "number",
"description": "1, 2, 3…"
},
"business_income": {
"type": "number",
"description": "Annual gross rents / business income to insure, USD."
},
"electrical_panel": {
"type": "string",
"description": "Panel brand and amps."
},
"outdoor_property": {
"type": "string",
"description": "Outdoor items and values (signs, fences, carports, pool…)."
},
"construction_type": {
"enum": [
"frame",
"joisted-masonry",
"non-combustible",
"masonry-non-combustible",
"modified-fire-resistive",
"fire-resistive"
],
"type": "string"
},
"fire_station_miles": {
"type": "number",
"description": "Miles to fire station."
},
"occupancy_description": {
"type": "string",
"description": "What this building is used for, if different from the location."
}
}
},
"minItems": 1
},
"occupancy_description": {
"type": "string",
"description": "Occupancy / tenants"
}
}
},
"description": "Property line: one entry per address, each with its buildings."
},
"mortgagee": {
"type": "string",
"description": "Lender name, address, loan #."
},
"attachments": {
"type": "array",
"items": {
"type": "object",
"required": [
"filename",
"content_base64"
],
"properties": {
"filename": {
"type": "string",
"description": "e.g. loss-runs-2021-2026.pdf"
},
"document_type": {
"enum": [
"loss_runs",
"dec_page",
"sov",
"rent_roll",
"photos",
"lease",
"appraisal",
"contracts",
"other"
],
"type": "string"
},
"content_base64": {
"type": "string",
"description": "Base64 file content"
}
}
},
"description": "Optional documents (≤4 MB total base64): loss runs, dec page, SOV, rent roll, photos."
},
"entity_type": {
"type": "string",
"description": "LLC, corporation, individual, partnership, trust…"
},
"contact_name": {
"type": "string",
"description": "Human at the insured we call."
},
"contact_role": {
"type": "string",
"description": "owner / officer / property manager / other"
},
"loss_history": {
"type": "object",
"required": [
"summary",
"loss_runs_status"
],
"properties": {
"summary": {
"type": "string",
"description": "Every claim in last 5 years (date, type, amount, open/closed), or 'No losses in 5 years'."
},
"loss_runs_status": {
"enum": [
"attached",
"will_send",
"requested_from_carrier",
"new_purchase_not_applicable",
"new_venture"
],
"type": "string"
}
}
},
"contact_email": {
"type": "string",
"description": "Contact email."
},
"contact_phone": {
"type": "string",
"description": "Contact direct phone."
},
"named_insured": {
"type": "string",
"description": "Legal name of the owner/insured."
},
"property_class": {
"enum": [
"apartments",
"rental-homes",
"hotel",
"strip-center",
"warehouse",
"commercial-building",
"gas-station",
"self-storage",
"condo",
"lessors-risk",
"other"
],
"type": "string"
},
"mailing_address": {
"type": "string",
"description": "Insured's mailing address."
},
"owner_authorized": {
"type": "boolean",
"description": "True only if the owner (or their officer/property manager) asked for this quote and agreed to be contacted by a licensed broker."
},
"current_insurance": {
"type": "object",
"properties": {
"carrier": {
"type": "string",
"description": "Current carrier"
},
"expiration_date": {
"type": "string",
"description": "YYYY-MM-DD"
},
"expiring_premium": {
"type": "number",
"description": "USD"
},
"uninsured_reason": {
"type": "string",
"description": "If uninsured / cancelled / non-renewed: why"
},
"new_purchase_closing_date": {
"type": "string",
"description": "YYYY-MM-DD if a purchase"
}
}
},
"deductible_wanted": {
"type": "string",
"description": "Desired deductible(s)."
},
"general_liability": {
"type": "object",
"properties": {
"hazards": {
"type": "string",
"description": "Pools, playgrounds, liquor, security, events…"
},
"limits_wanted": {
"type": "string",
"description": "e.g. 1M/2M"
},
"exposure_basis": {
"enum": [
"square_feet",
"units",
"gross_sales",
"payroll"
],
"type": "string"
},
"exposure_amount": {
"type": "number",
"description": "Amount for the basis."
},
"tenants_carry_gl": {
"type": "boolean"
},
"claims_or_lawsuits": {
"type": "string",
"description": "GL claims/lawsuits last 5 yrs or open."
},
"subcontracted_cost": {
"type": "number",
"description": "Contractors: USD subbed out."
}
}
},
"years_in_business": {
"type": "number",
"description": "Years in business or years owning the property."
},
"prior_cancellation": {
"type": "string",
"description": "Any cancellation / declination / non-renewal in 3 years, and why."
},
"requested_by_agent": {
"type": "string",
"description": "Name of the AI agent / platform submitting."
},
"supplemental_answers": {
"type": "object",
"description": "Class supplemental answers from get_submission_requirements, keyed by question.",
"additionalProperties": true
},
"proposed_effective_date": {
"type": "string",
"description": "YYYY-MM-DD — renewal or closing date."
},
"description_of_operations": {
"type": "string",
"description": "How the property is used / what the business does."
}
},
"additionalProperties": false
}