← WebMCP Directory

tuio.com

tuio.com

live Unverified (seed import) Finance & Crypto 4 tools imperative implementation

Spanish digital insurance advisor for comparing and buying home, life, car and pet insurance online in minutes.

First seen 2026-10-12 · Last seen 2026-10-12 · Source: webmcp.com

Answer 3 · Act 1 · Transact 0 · Score: Not yet scored

Tool inspector

quote_auto_insurance

act imperative

Get a Tuio car (auto) insurance quote for a Spanish vehicle, comparing two tiers (Terceros and Terceros Ampliado). This server quotes TWO different products: car insurance (this tool) and home insurance (get_price_estimate). Only start this flow once the user has made clear they want to insure a CAR. If they just say something ambiguous like "I need insurance" / "get me a quote" / "insurance for me" without naming the product, do NOT start this flow — first ask whether they want car or home insurance. Never assume car. Once car insurance is confirmed (or the user mentions a car, plate, driving, etc.): the flow asks for everything it needs a few questions at a time, so start it right away — do not pre-collect data yourself. If the user already mentioned details (plate, how they use the car, etc.), pass them in stateUpdates so those questions are skipped. LANGUAGE: the comparison card is rendered in the language you pass as `stateUpdates.locale`. This one is NOT collected from the user — never ask about it. Set it yourself from the language the user writes to you in: `"en"` only when they are writing in English, otherwise omit it and the card renders in Spanish. ## FLOW EXECUTION PROTOCOL This tool implements a multi-step conversational flow. Follow this protocol exactly: 1. Call with `action: "start"` to begin and include `intent`. `intent` must be a brief summary of the user's goal for this flow. Do NOT invent missing intent. Optionally include `context` — the situation or environment that led the user to start this flow (e.g. what page they are on, what they were doing, or what triggered the request). Only provide `context` when there is genuinely relevant situational information. Do NOT invent missing context. If the user's message already contains answers to likely questions, extract them into `stateUpdates` as `{ field: value }` pairs (see the `stateUpdates` schema for the list of writable fields). The engine will auto-skip steps whose fields are already filled…

Input schema

PropertyTypeRequiredDescription
action string yes "start" to begin the flow, "continue" to resume after a pause (interrupt or widget), "reset" to restart from the beginning with a correction to a previously-collected field
intent string no Required when action is "start". Provide a brief summary of the user's goal for this flow. Do not invent missing intent.
context string no Optional when action is "start". Describe the situation or environment that led the user to start this flow — e.g. what page they are on, what they were doing, or what triggered the request. Do not invent missing context.
stateUpdates object no State field values to set before processing the next node. Pass the user's answer (keyed by the field name from the response) and any other values the user mentioned. For nested state fields, use dot-paths like "driver.name".
sessionId string no Session identifier. If the response includes a `sessionId`, pass it back on every subsequent "continue" and "reset" call for this flow.
Raw JSON schema
{
  "type": "object",
  "properties": {
    "action": {
      "type": "string",
      "enum": [
        "start",
        "continue",
        "reset"
      ],
      "description": "\"start\" to begin the flow, \"continue\" to resume after a pause (interrupt or widget), \"reset\" to restart from the beginning with a correction to a previously-collected field"
    },
    "intent": {
      "description": "Required when action is \"start\". Provide a brief summary of the user's goal for this flow. Do not invent missing intent.",
      "type": "string"
    },
    "context": {
      "description": "Optional when action is \"start\". Describe the situation or environment that led the user to start this flow — e.g. what page they are on, what they were doing, or what triggered the request. Do not invent missing context.",
      "type": "string"
    },
    "stateUpdates": {
      "description": "State field values to set before processing the next node. Pass the user's answer (keyed by the field name from the response) and any other values the user mentioned. For nested state fields, use dot-paths like \"driver.name\".",
      "type": "object",
      "properties": {
        "plate": {
          "type": "string",
          "description": "The car's Spanish license plate, e.g. '1234BCD'."
        },
        "b7VersionId": {
          "type": "string",
          "description": "Internal Tuio vehicle-version id. Resolved automatically from the plate — never ask the user for this."
        },
        "versionLabel": {
          "type": "string",
          "description": "Human-readable vehicle version (make/model/trim). Resolved from the plate."
        },
        "versionChoices": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "b7VersionId": {
                "type": "string"
              },
              "label": {
                "type": "string"
              }
            },
            "required": [
              "b7VersionId"
            ]
          },
          "description": "Internal — candidate vehicle versions for the plate. Set automatically; never ask the user."
        },
        "firstPlateDate": {
          "type": "string",
          "description": "First registration date of the car (yyyy-MM-dd). Usually resolved from the plate; only asked if the lookup didn't return it."
        },
        "annualKm": {
          "type": "string",
          "enum": [
            "UpTo4000km",
            "From4000To6000km",
            "From6000To8000km",
            "From8000To10000km",
            "From10000To12000km",
            "From12000To16000km",
            "From16000To20000km",
            "From20000To30000km",
            "From30000To50000km",
            "MoreThan50000km"
          ],
          "description": "Approximate kilometres driven per year, as one of Tuio's mileage brackets. Pick the bracket the stated yearly distance falls INTO, upper bound inclusive — e.g. 6,000 km/year → From4000To6000km, 7,000 → From6000To8000km, 11,000 → From10000To12000km, 12,000 → From10000To12000km."
        },
        "garageType": {
          "type": "string",
          "enum": [
            "PrivateGarage",
            "PublicGarage",
            "NoGarage"
          ],
          "description": "Where the car is usually parked overnight: PrivateGarage (a private/individual garage, OR a building's shared/communal residents' garage — anything covered and secure), PublicGarage (a paid public car park open to anyone, e.g. a rotational/monthly parking structure) or NoGarage (on the street). A residents' communal garage is PrivateGarage, NOT PublicGarage."
        },
        "use": {
          "type": "string",
          "enum": [
            "Private",
            "Professional",
            "PublicService"
          ],
          "description": "How the car is used: Private (personal/commute), Professional (work) or PublicService."
        },
        "licenseDate": {
          "type": "string",
          "description": "Date the driver got their driving licence (yyyy-MM or yyyy-MM-dd)."
        },
        "birthDate": {
          "type": "string",
          "description": "Driver's date of birth (yyyy-MM-dd)."
        },
        "atFaultClaims": {
          "type": "number",
          "description": "Number of at-fault claims in the last 5 years."
        },
        "lastAtFaultClaim": {
          "description": "When the driver's MOST RECENT at-fault accident happened: WithinLast12Months or MoreThan12MonthsAgo. Only relevant when atFaultClaims > 0 — the flow asks for it automatically in that case. Leave unset when there are no at-fault claims.",
          "type": "string",
          "enum": [
            "WithinLast12Months",
            "MoreThan12MonthsAgo"
          ]
        },
        "penalties": {
          "type": "number",
          "description": "Number of driving penalties in the last 3 years."
        },
        "previouslyInsured": {
          "type": "boolean",
          "description": "Whether the car has been insured in the driver's name in the last 60 days."
        },
        "yearsInsured": {
          "type": "number",
          "description": "Total full years the driver has held car insurance (0 if never insured)."
        },
        "previousInsuranceCompany": {
          "description": "The company the car is currently/was last insured with, as the user names it (e.g. 'Mapfre'). OPTIONAL — only relevant when the car is currently insured; leave unset if the car isn't insured or the user doesn't know.",
          "type": "string"
        },
        "documentNumber": {
          "type": "string",
          "description": "Policyholder's ID document number (DNI/NIE/passport)."
        },
        "postalCode": {
          "type": "string",
          "description": "Policyholder's postal code (this alone determines the price)."
        },
        "city": {
          "description": "Policyholder's town/city. Optional — auto-derived from the postal code when not given; never ask for it, but set it if the user volunteers their town.",
          "type": "string"
        },
        "startDate": {
          "type": "string",
          "description": "When the customer wants the policy to take effect (yyyy-MM-dd). ALWAYS ask for this — the effective date materially changes the price, so it must be collected and sent, never defaulted. Must be today or a future date."
        },
        "locale": {
          "type": "string",
          "enum": [
            "en",
            "es"
          ],
          "description": "Internal — the language THE USER is writing in, so the comparison card renders in it: 'es' if they write in Spanish, 'en' if they write in English. NEVER ask the user about it: judge it from their own messages (not from your replies, this schema, or the host's interface language) and pass it in stateUpdates when you start the flow. Omit it when unsure; the card then renders in Spanish."
        },
        "quoteResult": {
          "type": "array",
          "items": {},
          "description": "Internal — the computed two-tier quote result. Set automatically by the flow."
        }
      },
      "additionalProperties": {}
    },
    "sessionId": {
      "description": "Session identifier. If the response includes a `sessionId`, pass it back on every subsequent \"continue\" and \"reset\" call for this flow.",
      "type": "string"
    }
  },
  "required": [
    "action"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Similar websites

dashboard.orderly.network

dashboard.orderly.network

Orderly dashboard

live Unverified Finance & Crypto
45 tools A40 / Act5 / T0 Not yet scored Seen 2026-10-12
get_site_overview get_dashboard_main get_tvl_by_chain get_tvl_by_token get_weekly_symbol_volume
Inspect tools
stockpilot-indol-chi.vercel.app

stockpilot-indol-chi.vercel.app

A WebMCP-powered trading terminal where humans and AI agents research markets, analyze SEC filings, and trade together — on real data.

demo Unverified Finance & Crypto Transact tools
37 tools A16 / Act18 / T3 Not yet scored Seen 2026-10-12
search_stock get_stock_details open_company_analysis get_stock_news analyze_sec_filings
Inspect tools
app.ramp.com

app.ramp.com

Sign-in page for Ramp's finance platform, used to manage corporate cards, expenses and accounts payable.

live Unverified Finance & Crypto Transact tools
28 tools A11 / Act16 / T1 Not yet scored Seen 2026-10-12
get_current_page_context list_page_tables get_table_state read_table_rows list_table_filters
Inspect tools
famabook.com

famabook.com

famabook

live Unverified Finance & Crypto Transact tools
25 tools A1 / Act19 / T5 Not yet scored Seen 2026-10-12
navigate_to_page create_sales_contract export_sales_contract_docx create_sales_quotation create_sales_order
Inspect tools

Related on Influzer