{"server":"ExpeditionInsure","version":"1.0.0","tools":[{"name":"server_info","category":"health","description":"Get server metadata, supported destinations, and capabilities.","inputs":{},"outputs":{"name":"string","version":"string","destinations":"string[]","disclaimer":"string"}},{"name":"get_destinations","category":"discovery","description":"List all expedition destinations with coverage requirements.","inputs":{},"outputs":{"destinations":"Array<{ slug, name, tagline, minEvac }>"}},{"name":"list_products","category":"discovery","description":"List insurance plans filtered by destination, residence, age, and trip dates.","inputs":{"destinationSlug":"string (optional)","residence":"string (optional, e.g. 'US')","state":"string (optional, e.g. 'NY')","travelerAges":"number[] (optional)","startDate":"string (optional, ISO date)","durationDays":"number (optional)"},"outputs":{"plans":"Array<{ planId, planName, carrierName, tier, evacCoverage, medicalExpense, tripCancellation, deductible, isRecommended }>"}},{"name":"get_plan_details","category":"discovery","description":"Get full coverage details for a specific insurance plan.","inputs":{"planId":"string (required)"},"outputs":{"plan":"{ name, carrier, tier, coverage, eligibility, highlights }"}},{"name":"get_instant_quote","category":"quoting","description":"Create a quote and get premium estimates for all eligible plans.","inputs":{"destination":"string (required)","startDate":"string (required, ISO date)","durationDays":"number (required)","tripCost":"number (required, USD)","travelers":"number (required)","travelerAges":"number[] (required)","residence":"string (required)","state":"string (optional, for US residents)","operator":"string (optional)","currency":"string (optional, default 'USD')","depositPaidDate":"string (optional, ISO date)","email":"string (optional)"},"outputs":{"quoteId":"string","quoteNumber":"string","plans":"Array<{ planName, estimatedPremium, confidence }>"}},{"name":"calculate_quote","category":"planning","description":"Calculate premium estimates without persisting a quote.","inputs":{"destination":"string (required)","travelerAges":"number[] (required)","durationDays":"number (required)","tripCost":"number (required, USD)","residence":"string (required)","state":"string (optional, for US residents)","startDate":"string (optional, ISO date)"},"outputs":{"tripSummary":"object","recommendedPlan":"string","estimations":"Array<{ planName, estimatedPremium, confidence }>"}},{"name":"get_quote_summary","category":"planning","description":"Retrieve the most recent premium calculation from this session.","inputs":{},"outputs":{"tripSummary":"object","recommendedPlan":"string","estimations":"Array<{ planName, estimatedPremium, confidence }>"}},{"name":"compare_plans","category":"quoting","description":"Side-by-side comparison of 2-4 plans from an existing quote.","inputs":{"quoteId":"string (required)","planNames":"string[] (required, 2-4 plan names)"},"outputs":{"comparison":"Array<{ planName, estimatedPremium, medicalLimit, evacuationCoverage, tripCancellation, deductible }>"}},{"name":"analyze_coverage_gap","category":"coverage","description":"Compare credit card travel benefits against destination requirements.","inputs":{"destination":"string (required)","creditCardName":"string (optional)","tripCost":"number (optional, USD)","tripCostRange":"string (optional, 'under-10k' | '10k-20k' | 'over-20k')"},"outputs":{"gaps":"Array<{ category, severity, cardCoverage, required, shortfall, description }>","summary":"{ totalGaps, recommendation }"}},{"name":"create_checkout_link","category":"checkout","description":"Generate a secure checkout link for a selected plan. The link stays valid until checkout is completed.","inputs":{"quoteId":"string (required)","planName":"string (required)","email":"string (optional)","guestNames":"string[] (optional)","agentSummary":"string (optional)"},"outputs":{"checkoutUrl":"string"}},{"name":"purchase_with_mpp","category":"purchase","description":"Purchase insurance via MPP machine payment. Returns 402 challenge on first call; agent wallet pays and retries to complete purchase.","inputs":{"quoteId":"string (required)","planId":"string (required)"},"outputs":{"status":"string","quoteNumber":"string","planName":"string","amountCharged":"number","currency":"string"}},{"name":"create_purchase_session","category":"acp","description":"Create an ACP checkout session for in-chat insurance purchase.","inputs":{"destination":"string (required)","startDate":"string (required, ISO date)","durationDays":"number (required)","tripCost":"number (required, USD)","travelers":"number (required)","travelerAges":"number[] (required)","residence":"string (required)","state":"string (optional, for US residents)","planId":"string (optional)","buyerEmail":"string (optional)","buyerName":"string (optional)"},"outputs":{"id":"string","status":"string","line_items":"array","totals":"object"}},{"name":"update_purchase_session","category":"acp","description":"Update ACP session with buyer details and selected plan.","inputs":{"sessionId":"string (required)","planId":"string (optional)","buyerEmail":"string (optional)","buyerName":"string (optional)"},"outputs":{"id":"string","status":"string","line_items":"array","totals":"object"}},{"name":"complete_purchase","category":"acp","description":"Complete ACP purchase using a Stripe payment token (spt_*).","inputs":{"sessionId":"string (required)","paymentToken":"string (required)"},"outputs":{"status":"string","order":"object","payment_pending":"boolean?"}},{"name":"get_purchase_status","category":"acp","description":"Retrieve current ACP checkout session status.","inputs":{"sessionId":"string (required)"},"outputs":{"id":"string","status":"string","line_items":"array","totals":"object","order":"object?"}}],"exampleFlows":[{"name":"Quick Quote","steps":["get_destinations","get_instant_quote","compare_plans","create_checkout_link"],"description":"User asks about insurance → get quote → compare options → checkout."},{"name":"ACP Checkout (ChatGPT / Agent Wallets)","steps":["POST /acp/v1/checkout_sessions","GET /acp/v1/checkout_sessions/:id","POST /acp/v1/checkout_sessions/:id/complete"],"description":"Agent creates session with trip details → reviews line items → completes with Stripe SPT."},{"name":"Coverage Analysis","steps":["analyze_coverage_gap","get_instant_quote"],"description":"User has a travel credit card → analyze gaps → recommend plans to fill them."},{"name":"Plan Research","steps":["get_destinations","list_products","get_plan_details"],"description":"User wants to understand what's available before committing to a quote."},{"name":"Agentic Purchase (MPP)","steps":["get_destinations","get_instant_quote","compare_plans","purchase_with_mpp"],"description":"Full machine-to-machine flow: quote → compare → pay via MPP (no human checkout needed)."}],"protocols":{"mcp":{"sse":"/sse","http":"/mcp"},"rest":{"base":"/api/v1/"},"acp":{"base":"/acp/v1/","openapi":"/acp/v1/openapi.json","description":"Agentic Commerce Protocol — structured checkout sessions for ChatGPT and ACP-compatible agents"}}}