Spanish insurance broker: real life-insurance quotes from 10+ insurers, coverage and applications.
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.
Calculates an indicative life-insurance coverage amount for a resident of Spain with PuntoSeguro's published method: five years of net annual income plus outstanding debts, minus existing life cover, rounded up to the nearest 10,000 EUR. Returns the amount and its breakdown. Informational only; not individualized financial advice, premiums or savings products.
Annual net income to protect for dependants, in euros
Outstanding debts, including mortgage balance, in euros
Existing life-insurance cover already in force, in euros
Tool list last changed Oct 23, 2026.
Calculates an indicative life-insurance coverage amount for a resident of Spain with PuntoSeguro's published method: five years of net annual income plus outstanding debts, minus existing life cover, rounded up to the nearest 10,000 EUR. Returns the amount and its breakdown. Informational only; not individualized financial advice, premiums or savings products.
| Argument | Type | Description |
|---|---|---|
| annual_net_income_eur* | number | Annual net income to protect for dependants, in euros |
| outstanding_debts_eur | number | Outstanding debts, including mortgage balance, in euros |
| existing_life_cover_eur | number | Existing life-insurance cover already in force, in euros |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"annual_net_income_eur"
],
"properties": {
"annual_net_income_eur": {
"type": "number",
"maximum": 100000000,
"minimum": 0,
"description": "Annual net income to protect for dependants, in euros"
},
"outstanding_debts_eur": {
"type": "number",
"default": 0,
"maximum": 100000000,
"minimum": 0,
"description": "Outstanding debts, including mortgage balance, in euros"
},
"existing_life_cover_eur": {
"type": "number",
"default": 0,
"maximum": 100000000,
"minimum": 0,
"description": "Existing life-insurance cover already in force, in euros"
}
}
}Returns annual life-insurance protection (vida riesgo) premiums available through PuntoSeguro for a resident of Spain, given an age in whole years and a coverage amount, without a date of birth: insurer ids, insurer names and premiums for death, death and disability, double capital, triple capital and death and disability plus 30,000 EUR for serious illnesses. Each premium is the highest that can apply at that age, so with the exact date of birth (list_life_insurance_quotes) the premium is the same or lower; the date of birth is also needed for the application link. Not a whole-market comparison.
| Argument | Type | Description |
|---|---|---|
| age* | integer | Age of the person to insure, in whole years (18-70) |
| coverage_amount_eur* | number | Requested life-insurance coverage amount in euros |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"age",
"coverage_amount_eur"
],
"properties": {
"age": {
"type": "integer",
"maximum": 70,
"minimum": 18,
"description": "Age of the person to insure, in whole years (18-70)"
},
"coverage_amount_eur": {
"type": "number",
"maximum": 10000000,
"minimum": 10000,
"description": "Requested life-insurance coverage amount in euros"
}
}
}Returns the coverage sections, included and excluded items, payment options and premium variants of one quote, identified by an insurer id from list_life_insurance_quotes for the same date of birth and coverage amount. Residents of Spain only.
| Argument | Type | Description |
|---|---|---|
| birth_day* | integer | Birth day from 1 to 31 |
| birth_year* | integer | Four-digit birth year |
| insurer_id* | integer | Insurer id returned by list_life_insurance_quotes |
| birth_month* | integer | Birth month from 1 to 12 |
| coverage_variant | string | Coverage variant to inspect; use death when the user has not selected another variant |
| coverage_amount_eur* | number | Requested life-insurance coverage amount in euros |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"insurer_id",
"birth_year",
"birth_month",
"birth_day",
"coverage_amount_eur"
],
"properties": {
"birth_day": {
"type": "integer",
"maximum": 31,
"minimum": 1,
"description": "Birth day from 1 to 31"
},
"birth_year": {
"type": "integer",
"maximum": 2026,
"minimum": 1900,
"description": "Four-digit birth year"
},
"insurer_id": {
"type": "integer",
"maximum": 9007199254740991,
"description": "Insurer id returned by list_life_insurance_quotes",
"exclusiveMinimum": 0
},
"birth_month": {
"type": "integer",
"maximum": 12,
"minimum": 1,
"description": "Birth month from 1 to 12"
},
"coverage_variant": {
"enum": [
"death",
"death_and_disability",
"double_capital",
"triple_capital"
],
"type": "string",
"default": "death",
"description": "Coverage variant to inspect; use death when the user has not selected another variant"
},
"coverage_amount_eur": {
"type": "number",
"maximum": 10000000,
"description": "Requested life-insurance coverage amount in euros",
"exclusiveMinimum": 0
}
}
}Returns indicative monthly private health-insurance (seguro de salud) premiums available through PuntoSeguro for residents of Spain, given the age of each person to insure and their province: insurer, product, cover type (full, outpatient or reimbursement), copay, main covers, documentation and a link to apply on puntoseguro.com, and displays the comparison interface where supported. When the ages or the province are missing, it returns PuntoSeguro's quote form and the list of missing details instead of quotes. Uses no medical information. Results are limited to the insurers available through PuntoSeguro and are not a whole-market comparison.
| Argument | Type | Description |
|---|---|---|
| province | string | Spanish province where the insured people live; for the Balearic Islands choose the island option |
| insured_ages | array | Age in whole years (0-99) of each person to insure, one entry per person |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"province": {
"enum": [
"Álava",
"Albacete",
"Alicante",
"Almería",
"Asturias",
"Ávila",
"Badajoz",
"Barcelona",
"Burgos",
"Cáceres",
"Cádiz",
"Cantabria",
"Castellón",
"Ceuta",
"Ciudad Real",
"Córdoba",
"Cuenca",
"Gerona",
"Granada",
"Guadalajara",
"Guipúzcoa",
"Huelva",
"Huesca",
"Islas Baleares (Mallorca)",
"Islas Baleares (Menorca, Ibiza o Formentera)",
"Jaén",
"La Coruña",
"La Rioja",
"Las Palmas",
"León",
"Lérida",
"Lugo",
"Madrid",
"Málaga",
"Melilla",
"Murcia",
"Navarra",
"Orense",
"Palencia",
"Pontevedra",
"Salamanca",
"Santa Cruz de Tenerife",
"Segovia",
"Sevilla",
"Soria",
"Tarragona",
"Teruel",
"Toledo",
"Valencia",
"Valladolid",
"Vizcaya",
"Zamora",
"Zaragoza"
],
"type": "string",
"description": "Spanish province where the insured people live; for the Balearic Islands choose the island option"
},
"insured_ages": {
"type": "array",
"items": {
"type": "integer",
"maximum": 99,
"minimum": 0
},
"maxItems": 10,
"minItems": 1,
"description": "Age in whole years (0-99) of each person to insure, one entry per person"
}
}
}Returns the indicative annual life-insurance protection (vida riesgo) premiums available through PuntoSeguro for a resident of Spain, given an exact date of birth and a coverage amount: insurer ids, insurer names and premiums for death, death and disability, double and triple capital, and displays the comparison interface where supported. When the date of birth or the coverage amount is missing, it returns PuntoSeguro's quote form and the list of missing details instead of quotes. Results are limited to the insurers available through PuntoSeguro and are not a whole-market comparison.
| Argument | Type | Description |
|---|---|---|
| birth_day | integer | Birth day from 1 to 31 |
| birth_year | integer | Four-digit birth year |
| birth_month | integer | Birth month from 1 to 12 |
| coverage_amount_eur | number | Requested life-insurance coverage amount in euros |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"birth_day": {
"type": "integer",
"maximum": 31,
"minimum": 1,
"description": "Birth day from 1 to 31"
},
"birth_year": {
"type": "integer",
"maximum": 2026,
"minimum": 1900,
"description": "Four-digit birth year"
},
"birth_month": {
"type": "integer",
"maximum": 12,
"minimum": 1,
"description": "Birth month from 1 to 12"
},
"coverage_amount_eur": {
"type": "number",
"maximum": 10000000,
"description": "Requested life-insurance coverage amount in euros",
"exclusiveMinimum": 0
}
}
}Displays PuntoSeguro's life-insurance quote form, in which the user types an exact date of birth and chooses a coverage amount; submitting it shows the quotes available through PuntoSeguro. Optionally preselects a coverage amount. Sends and stores no personal data. Residents of Spain only.
| Argument | Type | Description |
|---|---|---|
| coverage_amount_eur | number | Coverage amount in euros to preselect, only if the user already stated or calculated one |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"coverage_amount_eur": {
"type": "number",
"maximum": 10000000,
"description": "Coverage amount in euros to preselect, only if the user already stated or calculated one",
"exclusiveMinimum": 0
}
}
}Returns the secure link to start an application on puntoseguro.com for one quote, identified by an insurer id from list_life_insurance_quotes, a coverage option, the date of birth and the coverage amount. The application, health questionnaire and signature are completed by the user on puntoseguro.com; this tool submits nothing and collects no personal data. The final premium is subject to the insurer's underwriting.
| Argument | Type | Description |
|---|---|---|
| birth_day* | integer | Birth day from 1 to 31 |
| birth_year* | integer | Four-digit birth year |
| insurer_id* | integer | Insurer id returned by list_life_insurance_quotes for the same date of birth and coverage amount |
| birth_month* | integer | Birth month from 1 to 12 |
| coverage_variant | string | Coverage option the user chose; death if the user has not chosen another |
| coverage_amount_eur* | number | Requested life-insurance coverage amount in euros |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"insurer_id",
"birth_year",
"birth_month",
"birth_day",
"coverage_amount_eur"
],
"properties": {
"birth_day": {
"type": "integer",
"maximum": 31,
"minimum": 1,
"description": "Birth day from 1 to 31"
},
"birth_year": {
"type": "integer",
"maximum": 2026,
"minimum": 1900,
"description": "Four-digit birth year"
},
"insurer_id": {
"type": "integer",
"maximum": 9007199254740991,
"description": "Insurer id returned by list_life_insurance_quotes for the same date of birth and coverage amount",
"exclusiveMinimum": 0
},
"birth_month": {
"type": "integer",
"maximum": 12,
"minimum": 1,
"description": "Birth month from 1 to 12"
},
"coverage_variant": {
"enum": [
"death",
"death_and_disability",
"double_capital",
"triple_capital"
],
"type": "string",
"default": "death",
"description": "Coverage option the user chose; death if the user has not chosen another"
},
"coverage_amount_eur": {
"type": "number",
"maximum": 10000000,
"description": "Requested life-insurance coverage amount in euros",
"exclusiveMinimum": 0
}
}
}