Server definition
- Hash
- sha256:2fb407851b05e71846cded2dff1259e3755945a3d74ede99b05f23a710e6097e
- What it is
- What a remote MCP server returned when asked what it offers: 5 tools
The blob, as servednamed by its sha256
{
"instructions": "BizInsured gives US small businesses general commercial insurance information: class codes, coverage suggestions, market budget estimates (not quotes) and, on request, a referral to a licensed agent. Call classify_business first with only the business activity (e.g. \"bakery\"), not a name or city. If needsClarification is true or a tool returns classification_required, ask the distinguishing question; never pick the first match. Never invent prices, carrier eligibility, discounts or quote outcomes.\n\nInputs: pass the confirmed naics_code and iso_gl_code to later tools. Keep unknown values unknown: never infer payroll from revenue, assume no losses, or invent employee or vehicle counts; keep zero where given. Ask only for inputs that estimateIssues or missingInputs name. Pennsylvania workers' comp needs PCRB classes. For landlords, ask how many buildings and units they own, whether any unit is owner-occupied, and whether the properties are held in an LLC; 1-4 unit rentals and 5+ unit buildings are different classes.\n\nEstimates: call get_carrier_recommendations with the confirmed class, the business's state, annual revenue and at least one of BOP, GL, WC or commercial_auto. Before stating a price, read estimateIssues, missingCoverages, coverageComplete, coverageNotes, assumptions and caveats. Compare estimatedPremium totals only when coverageComplete is true for the same package; never add standalone GL to a BOP or fill a missing line with zero. Suitability rank is not a price ranking, and a market_benchmark is not that carrier's price. Do not call modeled data filed rates, present ranges as validated confidence intervals, or claim accuracy from data volume. If recommendations is empty, say BizInsured has no current carrier match. Say: \"These are market budget estimates, not carrier quotes. Actual premiums require underwriting and may fall outside the displayed ranges.\"\n\nState funds: workers' comp in OH, WA, ND and WY comes from the state fund and appears only in stateFundEstimates; present it separately and never add it to a carrier total. An Ohio estimate is BizInsured's estimate from published BWC rates for the stated policy year, not a BWC premium or quote: base-rated when experienceModifier is null, experience-modified when set. Mention the caveats that apply: the $120 minimum, construction and officer payroll limits, and the BWC application fee. For payroll_required, ask for actual Ohio payroll by BWC class. Never estimate group-rating savings or imply affiliation with Ohio BWC or the State of Ohio. Ohio BWC excludes employers liability; mention stop-gap coverage. BizInsured does not estimate dwelling fire or commercial property premiums.\n\nAgent referral: call connect_with_agent only when the user asks for an agent, real quotes or a coverage review. If you have the estimate inputs but no recommendationId, call get_carrier_recommendations first and pass its recommendationId; if the user declines or no estimate comes back, make the referral anyway with only the details the user gave. List every coverage the user asked for in risk_profile.desired_coverages, including ones BizInsured cannot estimate, and include the current carrier and renewal date there if the user gave them. Never ask for names, emails, phone numbers or addresses; the user adds contact details on the returned page. A saved referral does not mean an agent was contacted or a quote requested; never promise response times. If a tool returns rate_limited, tell the user to try again after retryAfterSeconds; do not retry automatically.",
"tools": [
{
"description": "Use this first when the user describes what their business does, to find its insurance classification before suggesting coverages or estimating premiums. Pass only the business activity, for example 'bakery' or 'HVAC contractor'; leave out the business name, city and other details. Returns up to five candidate NAICS, ISO general liability and NCCI workers' comp code sets with a text-similarity score (not an underwriting confidence) and needsClarification. When needsClarification is true, ask the user which activity fits instead of choosing one.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"business_description": {
"description": "The business activity only, e.g. 'bakery' or 'HVAC contractor'",
"maxLength": 500,
"minLength": 2,
"type": "string"
},
"state": {
"description": "Two-letter code of the US state where the business operates, not the user's current location",
"type": "string"
}
},
"required": [
"business_description"
],
"type": "object"
},
"name": "classify_business",
"outputSchema": null
},
{
"description": "Use this only when the user asks to speak with an agent, get real quotes or have their coverage reviewed. Saves a referral with the business details, and the linked estimate when you pass recommendation_id, for review by a licensed agent: the BizInsured team for Ohio businesses, or a partner agent elsewhere when one is available. Returns a bizinsured.ai link where the user can choose to submit contact details. The tool does not contact anyone or request a quote, and nothing is shared with an agent until the user submits that form. Do not ask for names, emails or phone numbers in chat. Each call creates a new referral, so call it once per request.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"recommendation_id": {
"description": "recommendationId from get_carrier_recommendations, when you have one",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"type": "string"
},
"risk_profile": {
"properties": {
"annual_revenue": {
"minimum": 0,
"type": "number"
},
"business_description": {
"maxLength": 500,
"type": "string"
},
"current_carrier": {
"maxLength": 200,
"type": "string"
},
"current_policy_expiration": {
"description": "When the current policy expires or renews (YYYY-MM-DD), if known. Omit dates more than 365 days past or 730 days ahead",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"type": "string"
},
"desired_coverages": {
"description": "Every coverage the user asked for, including ones BizInsured cannot estimate",
"items": {
"maxLength": 50,
"minLength": 1,
"type": "string"
},
"maxItems": 20,
"type": "array"
},
"employee_count": {
"maximum": 1000000,
"minimum": 0,
"type": "integer"
},
"iso_gl_code": {
"pattern": "^\\d{3,6}$",
"type": "string"
},
"naics_code": {
"description": "Confirmed NAICS code from classify_business",
"pattern": "^\\d{6}$",
"type": "string"
},
"ncci_wc_code": {
"pattern": "^\\d{3,6}$",
"type": "string"
},
"prior_losses": {
"type": "boolean"
},
"vertical": {
"maxLength": 50,
"type": "string"
},
"years_in_business": {
"maximum": 300,
"minimum": 0,
"type": "number"
}
},
"type": "object"
},
"user_contact_preference": {
"default": "either",
"enum": [
"email",
"phone",
"either"
],
"type": "string"
},
"user_state": {
"description": "Two-letter code of the US state where the business operates, not the user's current location",
"type": "string"
}
},
"required": [
"risk_profile",
"user_state"
],
"type": "object"
},
"name": "connect_with_agent",
"outputSchema": null
},
{
"description": "Use this when the user asks what a commercial insurance coverage is or how two coverages differ. Returns a plain-language explanation of one coverage type; call it once per coverage. It cannot tell whether a specific policy covers a specific claim.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"coverage_type": {
"description": "general liability = GL, workers comp = WC, business owners policy = BOP, errors and omissions = professional_liability, employment practices = EPLI, liquor = liquor_liability",
"enum": [
"BOP",
"GL",
"WC",
"commercial_auto",
"liquor_liability",
"cyber",
"professional_liability",
"EPLI",
"umbrella",
"dwelling_fire",
"commercial_property",
"loss_of_rents",
"inland_marine",
"stop_gap_employers_liability",
"food_spoilage"
],
"type": "string"
}
},
"required": [
"coverage_type"
],
"type": "object"
},
"name": "explain_coverage",
"outputSchema": null
},
{
"description": "Use this when the user wants premium estimates or carrier options for BOP, GL, WC or commercial_auto and you have the confirmed classification, the business's state, annual revenue and at least one coverage. Returns carriers whose appetite data matches, market budget estimates (not quotes) with sources, assumptions and caveats, and explicit estimateIssues for missing or unsupported inputs. Workers' comp in OH, WA, ND and WY is returned separately in stateFundEstimates; the Ohio figure is an estimate from published BWC rates, not a BWC quote. Omit any value the user did not give; never infer payroll from revenue. Each call saves the inputs and results in BizInsured's records and returns a recommendationId to pass to connect_with_agent; nothing is sent to carriers or agents.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"annual_payroll": {
"description": "Actual annual payroll; never infer from revenue",
"maximum": 1000000000000,
"minimum": 0,
"type": "number"
},
"annual_revenue": {
"maximum": 1000000000000,
"minimum": 0,
"type": "number"
},
"building_value": {
"maximum": 1000000000000,
"minimum": 0,
"type": "number"
},
"business_description": {
"description": "The business activity, as confirmed with classify_business",
"maxLength": 500,
"type": "string"
},
"business_property_value": {
"maximum": 1000000000000,
"minimum": 0,
"type": "number"
},
"coverage_limits": {
"additionalProperties": {
"maxLength": 100,
"minLength": 1,
"type": "string"
},
"propertyNames": {
"enum": [
"BOP",
"GL",
"WC",
"commercial_auto"
],
"type": "string"
},
"type": "object"
},
"deductibles": {
"additionalProperties": {
"maximum": 1000000000000,
"minimum": 0,
"type": "number"
},
"propertyNames": {
"enum": [
"BOP",
"GL",
"WC",
"commercial_auto"
],
"type": "string"
},
"type": "object"
},
"desired_coverages": {
"items": {
"enum": [
"BOP",
"GL",
"WC",
"commercial_auto"
],
"type": "string"
},
"maxItems": 20,
"minItems": 1,
"type": "array"
},
"effective_date": {
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"type": "string"
},
"employee_count": {
"maximum": 1000000,
"minimum": 0,
"type": "integer"
},
"experience_modifier": {
"exclusiveMinimum": 0,
"maximum": 10,
"type": "number"
},
"has_alcohol": {
"type": "boolean"
},
"has_delivery": {
"type": "boolean"
},
"iso_gl_code": {
"pattern": "^\\d{3,6}$",
"type": "string"
},
"naics_code": {
"pattern": "^\\d{6}$",
"type": "string"
},
"payroll_by_class": {
"description": "Actual payroll split by state and workers compensation classification",
"items": {
"properties": {
"class_code": {
"pattern": "^\\d{1,6}$",
"type": "string"
},
"class_system": {
"maxLength": 30,
"minLength": 1,
"type": "string"
},
"payroll": {
"exclusiveMinimum": 0,
"maximum": 1000000000000,
"type": "number"
},
"state": {
"type": "string"
}
},
"required": [
"state",
"class_code",
"payroll"
],
"type": "object"
},
"maxItems": 100,
"minItems": 1,
"type": "array"
},
"prior_losses": {
"type": "boolean"
},
"square_footage": {
"maximum": 1000000000000,
"minimum": 0,
"type": "number"
},
"state": {
"description": "Two-letter code of the US state where the business operates",
"type": "string"
},
"vehicle_count": {
"maximum": 1000000,
"minimum": 0,
"type": "integer"
},
"years_in_business": {
"maximum": 300,
"minimum": 0,
"type": "number"
}
},
"required": [
"state",
"annual_revenue",
"desired_coverages"
],
"type": "object"
},
"name": "get_carrier_recommendations",
"outputSchema": null
},
{
"description": "Use this when the user asks which commercial insurance coverages their business needs. Returns coverages ranked essential, recommended or optional, each with a reason, based on the confirmed class codes and the facts the user stated. Pass naics_code and iso_gl_code from classify_business after the user confirms them, and leave out facts the user did not give. Returns no prices; use get_carrier_recommendations for estimates.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"business_description": {
"description": "The business activity, as confirmed with classify_business",
"maxLength": 500,
"minLength": 2,
"type": "string"
},
"does_delivery": {
"type": "boolean"
},
"employee_count": {
"maximum": 1000000,
"minimum": 0,
"type": "integer"
},
"handles_customer_data": {
"type": "boolean"
},
"has_physical_location": {
"type": "boolean"
},
"has_vehicles": {
"type": "boolean"
},
"iso_gl_code": {
"description": "Confirmed ISO GL code. For NAICS 531110 it separates 1-4 family rentals (63010) from apartment buildings (60010).",
"pattern": "^\\d{3,6}$",
"type": "string"
},
"naics_code": {
"description": "Confirmed NAICS code from classify_business",
"pattern": "^\\d{6}$",
"type": "string"
},
"serves_alcohol": {
"type": "boolean"
},
"serves_food": {
"type": "boolean"
},
"state": {
"description": "Two-letter code of the US state where the business operates, not the user's current location",
"type": "string"
},
"vertical": {
"description": "topMatch.vertical from classify_business; derived from the class codes when omitted",
"maxLength": 50,
"type": "string"
}
},
"required": [
"business_description",
"state"
],
"type": "object"
},
"name": "suggest_coverages",
"outputSchema": null
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:2fb407851b05e71846cded2dff1259e3755945a3d74ede99b05f23a710e6097e | sha256sum