swisslivingindex avatar

Swiss Living Index

ch.swisslivingindex/swiss-living-index

This connects Claude to official Swiss government data on living costs across all 26 cantons, backed by Mirabello Consultancy. You get structured access to tax rates, rental prices, health insurance premiums, and employment statistics broken down by region. Reach for this when you're helping someone compare relocation options within Switzerland, calculating cost of living differences between cantons, or analyzing regional economic data. The server exposes queries through a streamable HTTP transport, so you can pull real-time comparative data without scraping government sites or maintaining your own Swiss statistical database. Useful for financial planning, HR relocation packages, or research that needs authoritative Swiss regional data.

tools
72
transport
HTTP
last updated
Oct 29, 2026

Install

From registry metadata
$ npx add-mcp https://swisslivingindex.ch/mcp --name swiss-living-index

Run in your terminal. add-mcp asks which agents to add it to (Claude Code, Codex, Cursor and more). Add -g to install it for every project.

Review the command, arguments and environment values before installing. MCP servers run with your local permissions.

Other ways

Claude Code

$ claude mcp add --transport http swiss-living-index https://swisslivingindex.ch/mcp

Run in your terminal. Add --scope user to make it available in every project.

Tools

Verified live · 72 tools

Verified live against the running server on Nov 6, 2026.

list_metricsList every metric available for the 26 Swiss cantons: key, label, unit, official source and whether higher or lower is better. Call this first to find the metric key for rank_by_metric, get_canton or get_trend.

List every metric available for the 26 Swiss cantons: key, label, unit, official source and whether higher or lower is better. Call this first to find the metric key for rank_by_metric, get_canton or get_trend.

No parameters. Call it with no arguments.

rent_indexRent index per Swiss canton: BFS average rent of occupied rented flats (structural survey, existing rents, not asking rents) by canton and number of rooms with the 95% confidence interval, 2010 onwards, plus a size-standardised rent (DERIVED by Swiss Living Index: each canton...1 params

Rent index per Swiss canton: BFS average rent of occupied rented flats (structural survey, existing rents, not asking rents) by canton and number of rooms with the 95% confidence interval, 2010 onwards, plus a size-standardised rent (DERIVED by Swiss Living Index: each canton...

Parameters* required
cantonstring
2-letter abbreviation, optional
ahv_pensionSwiss AHV/AVS old-age pension (1st pillar, AHV-Rente, rente AVS, rendita AVS). ALWAYS call this for any question about the state pension, including «how much AHV pension will I get?»: never answer a personal amount from memory. Returns the official minimum and maximum (2026, 2...15 params

Swiss AHV/AVS old-age pension (1st pillar, AHV-Rente, rente AVS, rendita AVS). ALWAYS call this for any question about the state pension, including «how much AHV pension will I get?»: never answer a personal amount from memory. Returns the official minimum and maximum (2026, 2...

Parameters* required
ageinteger
Current age in years, e.g. 55 (use when the user gives an age, not a birth year).
average_incomenumber
This person’s OWN average gross yearly income in Switzerland over the working life (AHV-liable, today’s CHF), e.g. 85000. A combined household income must be split between the spouses.
birth_yearinteger
Year of birth, e.g. 1968 (only if the user gave it).
cantonstring
2-letter abbreviation, optional: that canton's pension statistics
children_yearsnumber
Years with a child under 16 (child-rearing credits), e.g. 16.
contribution_yearsnumber
TOTAL AHV contribution years at retirement, including the years still to come (age 21 to retirement; 44 = complete, no gaps). A 55-year-old with no gaps who works to 65 has 44, not 34. Omit if unkn...
marriedboolean
true if married or in a registered partnership.
monthly_pensionnumber
monthly old-age pension in CHF, optional
monthsnumber
months with an old-age pension in the year, 1 to 12, default 12
retirement_agenumber
Planned pension start age, e.g. 64 (early) or 67 (deferred).
sexstring
female or male (reference age, AHV 21 supplement).one of female · male
spouse_average_incomenumber
Spouse’s average gross yearly income, today’s CHF, e.g. 40000.
spouse_contribution_yearsnumber
Spouse’s full contribution years, e.g. 44.
statisticsboolean
true to add the average pension of every canton.
years_marriednumber
Contribution years spent married, e.g. 25; omit if not stated.
school_holidaysSchool holidays of the compulsory schools (Volksschule) in the 26 Swiss cantons for the current and next school year, read from each canton's own sources (not the EDK list): autumn, Christmas, sports/carnival, spring/Easter as first and last weekday off, summer start, who sets...1 params

School holidays of the compulsory schools (Volksschule) in the 26 Swiss cantons for the current and next school year, read from each canton's own sources (not the EDK list): autumn, Christmas, sports/carnival, spring/Easter as first and last weekday off, summer start, who sets...

Parameters* required
cantonstring
2-letter abbreviation, optional
tax_deadlinesTax return filing rules for natural persons in the 26 Swiss cantons, read from each cantonal tax administration: ordinary filing deadline (or that the date printed on the return applies), deadline for the self-employed, free extension until, latest extension, extension fee, th...1 params

Tax return filing rules for natural persons in the 26 Swiss cantons, read from each cantonal tax administration: ordinary filing deadline (or that the date printed on the return applies), deadline for the self-employed, free extension until, latest extension, extension fee, th...

Parameters* required
cantonstring
2-letter abbreviation, optional
pollenPollen in Switzerland from the MeteoSwiss pollen network (open data, CC BY 4.0; credit «Source: MeteoSwiss»): daily mean concentration (grains per m³, 6 to 6 UTC) of hazel, alder, birch, ash, beech, oak and grasses at the 15 stations for the last 14 days, and a pollen calendar...1 params

Pollen in Switzerland from the MeteoSwiss pollen network (open data, CC BY 4.0; credit «Source: MeteoSwiss»): daily mean concentration (grains per m³, 6 to 6 UTC) of hazel, alder, birch, ash, beech, oak and grasses at the 15 stations for the last 14 days, and a pollen calendar...

Parameters* required
cantonstring
2-letter abbreviation, optional
federal_votesResults of every Swiss federal vote since 1981 (FSO open data; official titles in DE FR IT RM EN): without arguments the list of vote days with every proposal and its national result (yes %, turnout, cantons for and against, accepted); with date (YYYY-MM-DD) that day with the...3 params

Results of every Swiss federal vote since 1981 (FSO open data; official titles in DE FR IT RM EN): without arguments the list of vote days with every proposal and its national result (yes %, turnout, cantons for and against, accepted); with date (YYYY-MM-DD) that day with the...

Parameters* required
cantonstring
2-letter abbreviation, optional
communestring
commune name or BFS number, optional
datestring
vote day YYYY-MM-DD, optional
parliament_memberMembers of the Swiss Federal Parliament (National Council 200, Council of States 46) from the Parliamentary Services' open data web service ws.parlament.ch, refreshed daily: council, canton, party, parliamentary group and function, seat number, career in both chambers since jo...6 params

Members of the Swiss Federal Parliament (National Council 200, Council of States 46) from the Parliamentary Services' open data web service ws.parlament.ch, refreshed daily: council, canton, party, parliamentary group and function, seat number, career in both chambers since jo...

Parameters* required
cantonstring
2-letter abbreviation, optional
councilstring
NR or SR, optional
idinteger
parlament.ch person number, optional
langstring
de, fr or it for committee and interest labels (default de)
namestring
name or part of it, optional
partystring
party abbreviation (e.g. SP, SVP, FDP-Liberale, M-E, GRÜNE, glp), optional
parliament_voteVotes of the Swiss National Council since 2007 (legislatures 48–52; Parliamentary Services, ws.parlament.ch; current legislature daily): every electronic vote with business number and title, bill, subject, what yes and no meant, time, totals (yes, no, abstain, excused, did not...6 params

Votes of the Swiss National Council since 2007 (legislatures 48–52; Parliamentary Services, ws.parlament.ch; current legislature daily): every electronic vote with business number and title, bill, subject, what yes and no meant, time, totals (yes, no, abstain, excused, did not...

Parameters* required
businessstring
business number like 26.033, optional
final_onlyboolean
only final votes (default true without id/query/business)
idinteger
vote id, optional
legislatureinteger
limit a search to one legislature (52 = 2023–2027, 51 = 2019–2023, 50, 49, 48 = 2007–2011); default: all downloaded
memberstring
member name, optional
querystring
words of the title, optional
parliament_and_peopleParliament next to the people: for every National Council final vote of the current legislature whose bill later went to a popular vote, the chamber's result (yes, no, abstain, by group) next to the national popular result (yes %, accepted). Matched only on the exact title (th...

Parliament next to the people: for every National Council final vote of the current legislature whose bill later went to a popular vote, the chamber's result (yes, no, abstain, by group) next to the national popular result (yes %, accepted). Matched only on the exact title (th...

No parameters. Call it with no arguments.

parliament_sessionSessions of the Swiss Parliament in the current legislature (Parliamentary Services, ws.parlament.ch): dates, sittings of each chamber, number of speeches, speaking time in total and by parliamentary group per chamber (Federal Council separately), the items debated longest, an...1 params

Sessions of the Swiss Parliament in the current legislature (Parliamentary Services, ws.parlament.ch): dates, sittings of each chamber, number of speeches, speaking time in total and by parliamentary group per chamber (Federal Council separately), the items debated longest, an...

Parameters* required
sessioninteger
session id (e.g. 5215), optional
parliament_businessThe path of a Swiss parliamentary item (Geschäft) that reached a National Council final vote in the current legislature: title, type, responsible department, submission date, topics, the dated status history (submitted, in committee, planned, final vote, done), the debate days...2 params

The path of a Swiss parliamentary item (Geschäft) that reached a National Council final vote in the current legislature: title, type, responsible department, submission date, topics, the dated status history (submitted, in committee, planned, final vote, done), the debate days...

Parameters* required
businessstring
business number like 26.033, optional
querystring
words of the title, optional
search_speechesSearch speeches in the Swiss Parliament (both chambers, current legislature, Official Bulletin index): who spoke, in which council, when, for how long, on which item, with a link to the bulletin. Filter by speaker, business number, session or date. For what a whole session dea...4 params

Search speeches in the Swiss Parliament (both chambers, current legislature, Official Bulletin index): who spoke, in which council, when, for how long, on which item, with a link to the bulletin. Filter by speaker, business number, session or date. For what a whole session dea...

Parameters* required
businessstring
Business number of the item, e.g. "26.033".
datestring
Day of the sitting as YYYY-MM-DD, e.g. "2026-09-15".
sessioninteger
Session id from parliament_session, e.g. 5206; omit for all sessions.
speakerstring
Name of the member of parliament who spoke, e.g. "Pfister" or "Gerhard Pfister".
election_resultsSwiss National Council elections from the Federal Statistical Office (open data): for the latest election (2023) party strength in per cent of the vote with the change since the previous election, seats, women elected and turnout for Switzerland, every canton and every commune...3 params

Swiss National Council elections from the Federal Statistical Office (open data): for the latest election (2023) party strength in per cent of the vote with the change since the previous election, seats, women elected and turnout for Switzerland, every canton and every commune...

Parameters* required
cantonstring
2-letter abbreviation, optional
communestring
commune name or BFS number, optional
historyboolean
include the series since 1991 (Switzerland or canton)
cantonal_parliamentCantonal parliaments that publish members and every individual vote as open data: Basel-Stadt (data.bs.ch, CC BY 4.0, 100 seats, votes since 2012), Bern (ogd.parl.apps.be.ch, 160 seats, votes since Nov 2022) and Thurgau (data.tg.ch, CC0, 130 seats, votes since Oct 2022), daily...3 params

Cantonal parliaments that publish members and every individual vote as open data: Basel-Stadt (data.bs.ch, CC BY 4.0, 100 seats, votes since 2012), Bern (ogd.parl.apps.be.ch, 160 seats, votes since Nov 2022) and Thurgau (data.tg.ch, CC0, 130 seats, votes since Oct 2022), daily...

Parameters* required
cantonstring
BS (Basel-Stadt), BE (Bern) or TG (Thurgau): the cantonal parliaments that publish every vote as open data.one of BS · BE · TG
namestring
member name or part of it, optional
votesboolean
include the latest votes
canton_delegationThe members a Swiss canton sends to the Federal Parliament (its National Council seats and its one or two Council of States members), each with party, parliamentary group, seat number, year of birth and profile links; plus the delegation's count by group and by gender. Officia...1 params

The members a Swiss canton sends to the Federal Parliament (its National Council seats and its one or two Council of States members), each with party, parliamentary group, seat number, year of birth and profile links; plus the delegation's count by group and by gender. Officia...

Parameters* required
canton*string
2-letter abbreviation
sunday_shoppingSunday shopping and shop opening hours in the 26 Swiss cantons from the official law texts (re-checked weekly): how many Sundays all shops may open per year (federal Labour Act: at most four without a permit, each canton decides), who decides (canton or commune), weekday and S...1 params

Sunday shopping and shop opening hours in the 26 Swiss cantons from the official law texts (re-checked weekly): how many Sundays all shops may open per year (federal Labour Act: at most four without a permit, each canton decides), who decides (canton or commune), weekday and S...

Parameters* required
cantonstring
2-letter abbreviation, optional
immigration_reasonsWhy foreign nationals move to Switzerland: immigration into the permanent foreign resident population (permits B, C and L of 12 months or more) by reason (employment within / outside quotas, family reunification, education and training, residence without employment, recognised...4 params

Why foreign nationals move to Switzerland: immigration into the permanent foreign resident population (permits B, C and L of 12 months or more) by reason (employment within / outside quotas, family reunification, education and training, residence without employment, recognised...

Parameters* required
cantonstring
2-letter canton code, e.g. ZH
historyboolean
include the Swiss totals for every year (default false)
nationalitystring
country name in German as published by SEM, or its English, French or Italian name, e.g. Germany / Deutschland
yearinteger
year 2008 onwards (default: latest)
mortgage_ratesSwiss National Bank policy rate (current, since when, every change since June 2019), SARON, and the average interest rates Swiss banks publish for new mortgages at month end (SNB data portal): variable, fixed 2 / 5 / 10 years, SARON 3 years, with 0.25 quantile, median and 0.75...1 params

Swiss National Bank policy rate (current, since when, every change since June 2019), SARON, and the average interest rates Swiss banks publish for new mortgages at month end (SNB data portal): variable, fixed 2 / 5 / 10 years, SARON 3 years, with 0.25 quantile, median and 0.75...

Parameters* required
historyboolean
include the monthly mean series (default false)
dog_taxYearly dog tax per Swiss commune from official sources where a canton has a uniform rate or publishes every commune: Vaud (cantonal CHF 100 plus each commune's tax), Lucerne and Aargau (CHF 120 everywhere), Basel-Stadt (CHF 160 / 150 / 120, each further dog double), Basel-Land...1 params

Yearly dog tax per Swiss commune from official sources where a canton has a uniform rate or publishes every commune: Vaud (cantonal CHF 100 plus each commune's tax), Lucerne and Aargau (CHF 120 everywhere), Basel-Stadt (CHF 160 / 150 / 120, each further dog double), Basel-Land...

Parameters* required
communestring
commune name or BFS number, optional
waste_feesWaste, water and wastewater fees of Swiss communes. Official open data where the canton publishes every commune: canton of Zurich (all communes, since 2000: yearly basic fee converted to a 4-room flat and price per 35-litre bag) and Basel-Landschaft (bag price, basic fee per h...1 params

Waste, water and wastewater fees of Swiss communes. Official open data where the canton publishes every commune: canton of Zurich (all communes, since 2000: yearly basic fee converted to a 4-room flat and price per 35-litre bag) and Basel-Landschaft (bag price, basic fee per h...

Parameters* required
communestring
commune name or BFS number, optional
how_manyOfficial answers to «How many … are there in Switzerland?» (the questions that reach Google Switzerland's top 10 every year): cantons, communes and districts (BFS commune register, per canton), permanent residents and foreign nationals (BFS STATPOP), Swiss abroad, cows, dairy...1 params

Official answers to «How many … are there in Switzerland?» (the questions that reach Google Switzerland's top 10 every year): cantons, communes and districts (BFS commune register, per canton), permanent residents and foreign nationals (BFS STATPOP), Swiss abroad, cows, dairy...

Parameters* required
topicstring
optional: register, population, swiss_abroad, cattle, museums, hydropower, hospitals, languages, millionaires, enclaves, centre, cheese
imputed_rental_valueAbolition of the imputed rental value (Eigenmietwert, valeur locative) on owner-occupied homes in Switzerland: in force 1 January 2029 (Federal Council decision of 1 April 2026); timeline from the 2017 parliamentary initiative to entry into force, the changes for owners as the...2 params

Abolition of the imputed rental value (Eigenmietwert, valeur locative) on owner-occupied homes in Switzerland: in force 1 January 2029 (Federal Council decision of 1 April 2026); timeline from the 2017 parliamentary initiative to entry into force, the changes for owners as the...

Parameters* required
cantonstring
2-letter abbreviation, optional
communestring
commune name or BFS number, optional
fire_dangerForest fire danger and fire bans in Switzerland from FOEN open data (waldbrandgefahr.ch; credit «Source: FOEN»): for each of the 143 warning regions the danger level 1–5 and the canton's prevention measure 1–5 (no measures, warning, conditional ban, ban in and near the forest,...1 params

Forest fire danger and fire bans in Switzerland from FOEN open data (waldbrandgefahr.ch; credit «Source: FOEN»): for each of the 143 warning regions the danger level 1–5 and the canton's prevention measure 1–5 (no measures, warning, conditional ban, ban in and near the forest,...

Parameters* required
cantonstring
2-letter abbreviation, optional
water_temperatureWater temperature in Switzerland: every FOEN river station measuring water temperature (raw data, latest reading, and where FOEN publishes it usual_c = median for this calendar day over the station's measuring years with usual_p25_c/usual_p75_c; credit «Surface waters data: Hy...1 params

Water temperature in Switzerland: every FOEN river station measuring water temperature (raw data, latest reading, and where FOEN publishes it usual_c = median for this calendar day over the station's measuring years with usual_p25_c/usual_p75_c; credit «Surface waters data: Hy...

Parameters* required
cantonstring
2-letter abbreviation, optional
births_deathsBirths and deaths in Switzerland or one canton (geo = CH or a 2-letter canton code): yearly births and deaths since 1969, the last 36 months, deaths per week for the last 104 weeks with the BFS expected value and 99% band (mortality monitoring; latest weeks provisional), the m...1 params

Births and deaths in Switzerland or one canton (geo = CH or a 2-letter canton code): yearly births and deaths since 1969, the last 36 months, deaths per week for the last 104 weeks with the BFS expected value and 99% band (mortality monitoring; latest weeks provisional), the m...

Parameters* required
geostring
CH or canton abbreviation, e.g. ZH
get_switzerlandThe country level of the hierarchy Switzerland → 26 cantons → communes: population and foreign share (BFS STATPOP), naturalisations per year 2011 onwards with ordinary vs facilitated and the most common former nationalities (official BFS country names in DE FR IT EN), every ca...

The country level of the hierarchy Switzerland → 26 cantons → communes: population and foreign share (BFS STATPOP), naturalisations per year 2011 onwards with ordinary vs facilitated and the most common former nationalities (official BFS country names in DE FR IT EN), every ca...

No parameters. Call it with no arguments.

get_cantonGet all metric values for one canton. canton = 2-letter abbreviation (e.g. ZH, GE, TI). rank 1 = lowest value for cost metrics (dir 'low', e.g. taxes/rent) and highest value for capacity/benefit metrics (dir 'high', e.g. sunshine/jobs). Ranks describe order under the stated sc...2 params

Get all metric values for one canton. canton = 2-letter abbreviation (e.g. ZH, GE, TI). rank 1 = lowest value for cost metrics (dir 'low', e.g. taxes/rent) and highest value for capacity/benefit metrics (dir 'high', e.g. sunshine/jobs). Ranks describe order under the stated sc...

Parameters* required
canton*string
Canton as 2-letter abbreviation, e.g. "ZH", "GE", "TI".
communesboolean
true to list every commune of the canton (population, tax on CHF 100,000, page); default the 10 largest.
rank_by_metricRank all 26 Swiss cantons by one metric (lowest taxes, highest rents, most sunshine, lowest unemployment …), with the value, unit, year and official source of each canton. metric = a key from list_metrics; order = "high" or "low". For a full profile of one canton use get_canto...2 params

Rank all 26 Swiss cantons by one metric (lowest taxes, highest rents, most sunshine, lowest unemployment …), with the value, unit, year and official source of each canton. metric = a key from list_metrics; order = "high" or "low". For a full profile of one canton use get_canto...

Parameters* required
metric*string
Metric key from list_metrics, e.g. "tax_single", "rent_mean", "unemployment_pct".one of foreigner_pct · net_migration_per_1000 · sunshine_hours · heat_days · tropical_nights · frost_days
orderstring
"high" = largest value first, "low" = smallest first (default high).one of high · low
compare_cantonsCompare 2 to 4 Swiss cantons side by side across every metric of the index (income tax, rent, health premiums, unemployment, sunshine, safety, population and more), each with its value, unit, year and official source, and which canton does better. Use for «Zurich or Zug?» or «...1 params

Compare 2 to 4 Swiss cantons side by side across every metric of the index (income tax, rent, health premiums, unemployment, sunshine, safety, population and more), each with its value, unit, year and official source, and which canton does better. Use for «Zurich or Zug?» or «...

Parameters* required
cantons*array
2 to 4 canton abbreviations, e.g. ["ZH","ZG","GE"].
commune_taxLive income and wealth tax (federal, cantonal and communal, without church tax) for ONE household in ONE Swiss commune, from the official ESTV tax calculator (tax year 2026): any income, wealth, married or single, number of children. For the tax on a CHF 100,000 salary in ever...5 params

Live income and wealth tax (federal, cantonal and communal, without church tax) for ONE household in ONE Swiss commune, from the official ESTV tax calculator (tax year 2026): any income, wealth, married or single, number of children. For the tax on a CHF 100,000 salary in ever...

Parameters* required
childrennumber
Number of children in the household, e.g. 2 (default 0).
commune*string
Swiss commune: official name, BFS number or 4-digit postcode, e.g. "Winterthur", "230" or "8400". «8001 Zürich» and «Basel (BS)» also work.
income*number
Taxable gross yearly income in CHF, e.g. 100000.
marriedboolean
true for a married couple (joint taxation), false or omitted for a single person.
wealthnumber
Net wealth in CHF for the wealth tax, e.g. 250000 (default 0).
search_communeFind Swiss communes by name or postcode (official ESTV location register). Returns commune name, canton and postcode — use before commune_tax or estimate_net_move when the spelling is uncertain.1 params

Find Swiss communes by name or postcode (official ESTV location register). Returns commune name, canton and postcode — use before commune_tax or estimate_net_move when the spelling is uncertain.

Parameters* required
query*string
Commune name (or part of it) or postcode, e.g. "Küsnacht" or "8700".
estimate_net_moveNet yearly CHF effect of moving between two Swiss communes for one household: live commune-level tax (official ESTV 2026) plus canton-average rent and health-premium differences; positive savings = the move saves money. For the full move checklist (insurer, school holidays, el...6 params

Net yearly CHF effect of moving between two Swiss communes for one household: live commune-level tax (official ESTV 2026) plus canton-average rent and health-premium differences; positive savings = the move saves money. For the full move checklist (insurer, school holidays, el...

Parameters* required
childrennumber
Number of children in the household, e.g. 2 (default 0).
from_commune*string
current commune name or postcode
income*number
gross household income, CHF/year
marriedboolean
true for a married couple (joint taxation), false or omitted for a single person.
to_commune*string
candidate commune name or postcode
wealthnumber
taxable wealth, CHF
get_trendHistorical year-series for a metric in one canton (e.g. sunshine back to 1884, migration to 1981, rent to 2010). metric = key from list_metrics with history: rent_mean, net_migration_per_1000, foreigner_pct, sunshine_hours, balance_per_capita, beds_per_1000, jobs, unemployment...3 params

Historical year-series for a metric in one canton (e.g. sunshine back to 1884, migration to 1981, rent to 2010). metric = key from list_metrics with history: rent_mean, net_migration_per_1000, foreigner_pct, sunshine_hours, balance_per_capita, beds_per_1000, jobs, unemployment...

Parameters* required
canton*string
Canton as 2-letter abbreviation, e.g. "ZH", "GE", "TI".
from_yearnumber
First year to return, e.g. 2000; omit for the whole series.
metric*string
Metric key with a year series, e.g. "rent_mean", "sunshine_hours", "unemployment_pct".one of rent_mean · net_migration_per_1000 · foreigner_pct · sunshine_hours · population · heat_days
upcoming_votesThe next Swiss federal vote dates and, once the Federal Council has set them, the proposals on the ballot, in German, French, Italian and English (official Federal Chancellery / VoteInfo data). For results of past votes use federal_votes.

The next Swiss federal vote dates and, once the Federal Council has set them, the proposals on the ballot, in German, French, Italian and English (official Federal Chancellery / VoteInfo data). For results of past votes use federal_votes.

No parameters. Call it with no arguments.

recommend_cantonPersonal canton recommendation ("Where should I live in Switzerland?"): weight 5 categories 0–3 (cost = rent/premiums/electricity; tax = income tax/fiscal balance; work = jobs/unemployment/migration; env = sunshine/crime/vacancy; health = hospital capacity) and get all 26 cant...8 params

Personal canton recommendation ("Where should I live in Switzerland?"): weight 5 categories 0–3 (cost = rent/premiums/electricity; tax = income tax/fiscal balance; work = jobs/unemployment/migration; env = sunshine/crime/vacancy; health = hospital capacity) and get all 26 cant...

Parameters* required
costnumber
Weight 0 to 3 for low living costs (rent, health premiums, electricity); default 2.
envnumber
Weight 0 to 3 for environment and climate (sunshine, heat, frost); default 2.
healthnumber
Weight 0 to 3 for health care (hospital beds, premiums); default 2.
infranumber
0-3, connectivity & infrastructure (active once infra metrics ship)
international_communityboolean
include foreigner share, higher preferred
limitnumber
top N with evidence, default 5
taxnumber
Weight 0 to 3 for low taxes (income tax, fiscal balance); default 2.
worknumber
Weight 0 to 3 for the job market (jobs, unemployment, migration); default 2.
get_salaryOfficial gross monthly salaries in Switzerland by ECONOMIC SECTOR (BFS Swiss Earnings Structure Survey LSE): median and P10/P25/P75/P90 for all employees, women and men, by major region. canton (2-letter) is mapped to its major region; sector = NOGA code or words («banking», «...4 params

Official gross monthly salaries in Switzerland by ECONOMIC SECTOR (BFS Swiss Earnings Structure Survey LSE): median and P10/P25/P75/P90 for all employees, women and men, by major region. canton (2-letter) is mapped to its major region; sector = NOGA code or words («banking», «...

Parameters* required
cantonstring
Canton as 2-letter abbreviation, e.g. "ZH", "GE", "TI". Mapped to its BFS major region.
regionstring
major region code 1–7 or -1 for Switzerland
sectorstring
Economic sector as NOGA code or words, e.g. "64", "banking", "software", "construction"; omit for all sectors.
yearnumber
Year of the earnings survey (every two years: 2012 to 2024), e.g. 2026; omit for the latest. An unavailable year returns the list of available years.
get_minimum_wageStatutory cantonal minimum wages in Switzerland (official cantonal pages): hourly amount, valid from, history and the monthly equivalent at 40 hours. Only five cantons have one (BS, GE, JU, NE, TI); without canton the list of all five is returned. Elsewhere minimums apply only...1 params

Statutory cantonal minimum wages in Switzerland (official cantonal pages): hourly amount, valid from, history and the monthly equivalent at 40 hours. Only five cantons have one (BS, GE, JU, NE, TI); without canton the list of all five is returned. Elsewhere minimums apply only...

Parameters* required
cantonstring
Canton as 2-letter abbreviation, e.g. "ZH", "GE", "TI". Only BS, GE, JU, NE and TI have one; omit for all five.
get_payroll_ratesOfficial Swiss social-security payroll deductions for the current year (AHV/IV/EO, unemployment insurance ALV with ceiling, occupational pension BVG coordinated salary and age credits), as used for a gross-to-net salary estimate.

Official Swiss social-security payroll deductions for the current year (AHV/IV/EO, unemployment insurance ALV with ceiling, occupational pension BVG coordinated salary and age credits), as used for a gross-to-net salary estimate.

No parameters. Call it with no arguments.

get_premium_subsidyHealth-insurance premium subsidies (Prämienverbilligung / réduction des primes) per canton (FOPH KVSTAT): share of insured receiving a subsidy, average CHF per beneficiary and per household, subsidy as % of the mean premium, federal vs cantonal funding, plus the responsible ca...1 params

Health-insurance premium subsidies (Prämienverbilligung / réduction des primes) per canton (FOPH KVSTAT): share of insured receiving a subsidy, average CHF per beneficiary and per household, subsidy as % of the mean premium, federal vs cantonal funding, plus the responsible ca...

Parameters* required
canton*string
Canton as 2-letter abbreviation, e.g. "ZH", "GE", "TI".
get_family_tax_deductionsSwiss income-tax deductions for families (ESTV tax folder): maximum childcare (third-party care) deduction per child and the child deduction (Kinderabzug) rule for a canton, plus the federal values. canton = 2-letter abbreviation; omit for federal only.1 params

Swiss income-tax deductions for families (ESTV tax folder): maximum childcare (third-party care) deduction per child and the child deduction (Kinderabzug) rule for a canton, plus the federal values. canton = 2-letter abbreviation; omit for federal only.

Parameters* required
cantonstring
Canton as 2-letter abbreviation, e.g. "ZH", "GE", "TI". Omit for the federal values only.
get_housing_costsAverage monthly housing costs per household in Switzerland (BFS household budget survey HABE): net rent or mortgage interest, ancillary costs (Nebenkosten: flat-rate charges, water, waste water, waste, upkeep), energy (electricity, gas/fuels, heating), with BFS quality grades....1 params

Average monthly housing costs per household in Switzerland (BFS household budget survey HABE): net rent or mortgage interest, ancillary costs (Nebenkosten: flat-rate charges, water, waste water, waste, upkeep), energy (electricity, gas/fuels, heating), with BFS quality grades....

Parameters* required
cantonstring
Canton as 2-letter abbreviation, e.g. "ZH", "GE", "TI". Mapped to its BFS major region; omit for Switzerland.
get_reference_rateSwiss mortgage reference interest rate for rents (BWO/FOH): current rate, valid since, next publication dates, every change since 2008, and the rule for rent adjustments (VMWG Art. 13). Optional lease_rate (the rate in the lease) returns the quarter-point steps since then. Als...1 params

Swiss mortgage reference interest rate for rents (BWO/FOH): current rate, valid since, next publication dates, every change since 2008, and the rule for rent adjustments (VMWG Art. 13). Optional lease_rate (the rate in the lease) returns the quarter-point steps since then. Als...

Parameters* required
lease_ratenumber
reference rate stated in the lease, e.g. 1.75
data_freshnessHow current the Swiss Living Index data is: every scheduled official data source with where it runs (cloud, a Mac on the Swiss network, or the A5000 language-model machine), its cadence in days, the last successful check, the next due date and a status (current, due, overdue =...1 params

How current the Swiss Living Index data is: every scheduled official data source with where it runs (cloud, a Mac on the Swiss network, or the A5000 language-model machine), its cadence in days, the last successful check, the next due date and a status (current, due, overdue =...

Parameters* required
statusstring
optional filterone of current · due · overdue · new
list_datasetsCatalogue of EVERY dataset published by the Swiss Living Index (about 125: migration, births and first names, crime, public finances, cross-border commuters, vehicles, broadband, sustainability, naturalisations, permits, health care, housing, income, education and more), each...3 params

Catalogue of EVERY dataset published by the Swiss Living Index (about 125: migration, births and first names, crime, public finances, cross-border commuters, vehicles, broadband, sustainability, naturalisations, permits, health care, housing, income, education and more), each...

Parameters* required
geographystring
switzerland, canton or commune
querystring
words to match in title, source or id
topicstring
topic key from the topic list, e.g. migration
get_datasetRead one Swiss Living Index dataset (id from list_datasets), exactly as published on the site (official values, unchanged). Filter with canton (2-letter) and/or commune (name or BFS number), section (a top-level key), from_year / to_year. Large datasets return a size summary f...7 params

Read one Swiss Living Index dataset (id from list_datasets), exactly as published on the site (official values, unchanged). Filter with canton (2-letter) and/or commune (name or BFS number), section (a top-level key), from_year / to_year. Large datasets return a size summary f...

Parameters* required
cantonstring
Canton as 2-letter abbreviation, e.g. "ZH", "GE", "TI". Filters the dataset to that canton.
communestring
Swiss commune: official name, BFS number or 4-digit postcode, e.g. "Winterthur", "230" or "8400". «8001 Zürich» and «Basel (BS)» also work. Filters the dataset to that commune.
from_yearnumber
Keep year series from this year, e.g. 2015.
id*string
Dataset id from list_datasets, e.g. "migration/migration-switzerland".
max_kbnumber
reply size limit in KB, default 150, max 600
sectionstring
One top-level section of the dataset (the too_large answer lists them).
to_yearnumber
Keep year series up to this year, e.g. 2025.
get_communeFact sheet for one Swiss commune (by name, BFS number or postcode); for communes with a one-pager also the president, council, administration contacts, departments, upcoming meetings, news, tenders and projects read from the commune website (with source and date): population,...1 params

Fact sheet for one Swiss commune (by name, BFS number or postcode); for communes with a one-pager also the president, council, administration contacts, departments, upcoming meetings, news, tenders and projects read from the commune website (with source and date): population,...

Parameters* required
commune*string
Swiss commune: official name, BFS number or 4-digit postcode, e.g. "Winterthur", "230" or "8400". «8001 Zürich» and «Basel (BS)» also work.
compare_health_insurersEvery approved basic health-insurance premium (FOPH) for a commune or premium region: cheapest offers for an adult (26+), young adult (19–25) or child, by deductible, insurance model (standard, family doctor/HMO, telemedicine, other) and accident cover, with the insurer and pr...8 params

Every approved basic health-insurance premium (FOPH) for a commune or premium region: cheapest offers for an adult (26+), young adult (19–25) or child, by deductible, insurance model (standard, family doctor/HMO, telemedicine, other) and accident cover, with the insurer and pr...

Parameters* required
accidentboolean
true = accident cover included (default false: covered by the employer)
age_groupstring
adult (default), young_adult or child
communestring
Swiss commune: official name, BFS number or 4-digit postcode, e.g. "Winterthur", "230" or "8400". «8001 Zürich» and «Basel (BS)» also work.
deductiblenumber
CHF, e.g. 300 or 2500
limitnumber
number of offers, default 10
modelstring
standard, family_doctor, telemedicine, other or any (default)
regionstring
Premium region as canton plus number, e.g. "ZH-1", "ZH-2", "BE-3" (use instead of commune).
yearnumber
Premium year: 2026 (current) or 2027 (next year, approved by FOPH in September); default the latest.
get_electricity_priceOfficial electricity tariff (ElCom) for a Swiss commune and its grid operator(s): total, energy, grid use, commune charges and federal levy in Rappen per kWh, for 2025–2027, and the yearly bill for a consumption profile (ElCom categories H1–H8, default H4 = 5-room flat, 4500 k...4 params

Official electricity tariff (ElCom) for a Swiss commune and its grid operator(s): total, energy, grid use, commune charges and federal levy in Rappen per kWh, for 2025–2027, and the yearly bill for a consumption profile (ElCom categories H1–H8, default H4 = 5-room flat, 4500 k...

Parameters* required
categorystring
H1–H8, default H4
commune*string
Swiss commune: official name, BFS number or 4-digit postcode, e.g. "Winterthur", "230" or "8400". «8001 Zürich» and «Basel (BS)» also work.
kwhnumber
own yearly consumption (overrides the category volume)
yearnumber
Year of the ElCom tariff (2025 to 2027), e.g. 2026; omit for the latest. An unavailable year returns the list of available years.
fuel_prices_nearIs the drive across the border worth it? Official station prices in France, Austria and Italy (live / daily official sources) near a Swiss place, ranked by net saving vs the official Swiss average price (BFS) after the fuel used for the round trip. place = postcode or locality...8 params

Is the drive across the border worth it? Official station prices in France, Austria and Italy (live / daily official sources) near a Swiss place, ranked by net saving vs the official Swiss average price (BFS) after the fuel used for the round trip. place = postcode or locality...

Parameters* required
consumptionnumber
l/100 km, default 7
fuelstring
unleaded95 (default) or diesel
kmnumber
search radius, 2–40, default 10
latnumber
Latitude in decimal degrees, e.g. 47.56 (with lon).
lonnumber
Longitude in decimal degrees, e.g. 7.59 (with lat).
placestring
Swiss place: postcode, locality or both, e.g. "8001", "Basel", "8001 Zürich" or "Basel (BS)". Alternatively give lat and lon.
postcodestring
Swiss 4-digit postcode, e.g. "4058" (alternative to place).
tanknumber
litres, default 50
ev_charging_nearLive availability of public EV charging points in Switzerland (official SFOE feed, minutes old): national and per-canton availability and fast chargers; with place (postcode or locality) or lat/lon also the nearest points within km with their live status. No prices (no officia...5 params

Live availability of public EV charging points in Switzerland (official SFOE feed, minutes old): national and per-canton availability and fast chargers; with place (postcode or locality) or lat/lon also the nearest points within km with their live status. No prices (no officia...

Parameters* required
kmnumber
radius, default 5, max 25
latnumber
Latitude in decimal degrees, e.g. 46.95 (with lon).
lonnumber
Longitude in decimal degrees, e.g. 7.44 (with lat).
placestring
Swiss place: postcode, locality or both, e.g. "8001", "Basel", "8001 Zürich" or "Basel (BS)". Alternatively give lat and lon. Omit place and coordinates for the national and per-canton summary.
postcodestring
Swiss 4-digit postcode, e.g. "3011" (alternative to place).
commute_costMonthly commute cost between two Swiss places: by car at the official Swiss average fuel price (BFS) and by electric car at the home commune official electricity tariff (ElCom H4), plus the public-transport journey time (Swiss timetable). Distance defaults to straight line × 1...7 params

Monthly commute cost between two Swiss places: by car at the official Swiss average fuel price (BFS) and by electric car at the home commune official electricity tariff (ElCom H4), plus the public-transport journey time (Swiss timetable). Distance defaults to straight line × 1...

Parameters* required
consumption_lnumber
l/100 km, default 7
days_per_monthnumber
Commuting days per month, e.g. 20 (default 20).
ev_kwhnumber
kWh/100 km, default 18
from*string
Home place: Swiss postcode or locality, e.g. "Winterthur" or "8400".
fuelstring
unleaded95 or diesel
km_one_waynumber
Road distance one way in km, e.g. 25; omit to use the routed distance between from and to.
to*string
Work place: Swiss postcode or locality, e.g. "Zürich" or "8001".
household_budgetWhat Swiss households spend per month (BFS household budget survey, official): income, social insurance, taxes, health premiums, food, restaurants, housing and energy, transport, leisure and more, for all households, singles, couples without children, families and retired coup...1 params

What Swiss households spend per month (BFS household budget survey, official): income, social insurance, taxes, health premiums, food, restaurants, housing and energy, transport, leisure and more, for all households, singles, couples without children, families and retired coup...

Parameters* required
householdstring
all, single, couple_no_children, family or retiree_couple; omit for all types
salary_by_occupationOfficial gross monthly salaries by occupation group (ISCO-08) and age band (up to 29, 30–49, 50+), median and P10–P90, for all, women and men, by major region (BFS LSE). occupation = ISCO code or words (e.g. "nurse", "engineer", "teacher", "IT"); canton maps to its major region.5 params

Official gross monthly salaries by occupation group (ISCO-08) and age band (up to 29, 30–49, 50+), median and P10–P90, for all, women and men, by major region (BFS LSE). occupation = ISCO code or words (e.g. "nurse", "engineer", "teacher", "IT"); canton maps to its major region.

Parameters* required
agestring
all (default), under30, 30to49, 50plus
cantonstring
Canton as 2-letter abbreviation, e.g. "ZH", "GE", "TI". Mapped to its BFS major region.
occupationstring
Occupation as ISCO-08 code or words, e.g. "25", "nurse", "software developer", "teacher".
regionstring
BFS major region (NUTS-2): 1 Lake Geneva, 2 Espace Mittelland, 3 Northwestern Switzerland, 4 Zurich, 5 Eastern Switzerland, 6 Central Switzerland, 7 Ticino, -1 Switzerland. Use canton instead to ma...
yearnumber
Year of the earnings survey (every two years: 2012 to 2024), e.g. 2026; omit for the latest. An unavailable year returns the list of available years.
cheapest_health_insurerThe cheapest basic health insurer (FOPH-approved premiums, next year) in every Swiss premium region, or for one canton, region (e.g. ZH-1) or commune: cheapest standard premium (adult 26+, free choice of doctor, CHF 300 deductible, with accident cover) and the lowest possible...3 params

The cheapest basic health insurer (FOPH-approved premiums, next year) in every Swiss premium region, or for one canton, region (e.g. ZH-1) or commune: cheapest standard premium (adult 26+, free choice of doctor, CHF 300 deductible, with accident cover) and the lowest possible...

Parameters* required
cantonstring
2-letter abbreviation, optional
communestring
name, postcode or BFS number, optional
regionstring
premium region code, e.g. ZH-1, optional
permit_typesSwiss residence permits L, B, C, Ci, G, F, N, S (incl. the asylum statuses): what each permit is, the official rules (validity, renewal, C permit after 10 or 5 years, language levels, EU/EFTA 5-year list, moving within Switzerland) each with its law article (AIG, VZAE, BüG) or...2 params

Swiss residence permits L, B, C, Ci, G, F, N, S (incl. the asylum statuses): what each permit is, the official rules (validity, renewal, C permit after 10 or 5 years, language levels, EU/EFTA 5-year list, moving within Switzerland) each with its law article (AIG, VZAE, BüG) or...

Parameters* required
cantonstring
optional canton, e.g. ZH
historyboolean
include all years, default false
leaving_switzerlandLeaving Switzerland: the official steps with their law articles: deregister with the commune at the latest 14 days before departure (VZAE 15), what happens to an L, B or C permit (AIG 61), keeping a C permit for up to 4 years on request (VZAE 79), residence for naturalisation...1 params

Leaving Switzerland: the official steps with their law articles: deregister with the commune at the latest 14 days before departure (VZAE 15), what happens to an L, B or C permit (AIG 61), keeping a C permit for up to 4 years on request (VZAE 79), residence for naturalisation...

Parameters* required
permitstring
current permit, or swiss for Swiss citizensone of L · B · C · swiss
naturalisation_timingChecks the federal residence conditions for ordinary Swiss naturalisation (BüG Art. 9, 33) or facilitated naturalisation of a Swiss citizen's spouse (BüG Art. 21) from the years someone has lived in Switzerland: years between ages 8 and 18 count double (at least 6 actual years...8 params

Checks the federal residence conditions for ordinary Swiss naturalisation (BüG Art. 9, 33) or facilitated naturalisation of a Swiss citizen's spouse (BüG Art. 21) from the years someone has lived in Switzerland: years between ages 8 and 18 count double (at least 6 actual years...

Parameters* required
has_c_permitboolean
true if the person holds a C permit (settlement permit), required for ordinary naturalisation.
spouse_of_swissboolean
true for the spouse of a Swiss citizen (facilitated naturalisation, BüG Art. 21).
years_age_8_to_18number
of those, years between the 8th and 18th birthday
years_in_cantonnumber
Years lived in the current canton, e.g. 3 (cantons ask 2 to 5).
years_in_last_5number
of those, years within the last 5 years
years_married_living_togethernumber
Years married and living together with the Swiss spouse, e.g. 3 (facilitated naturalisation needs 3).
years_temporary_admission_fnumber
years with temporary admission F (count half)
years_total*number
actual years lived in Switzerland with B, C or Ci permit
which_permitWhich Swiss permit fits a person (the Swiss Living Index permit route finder as a tool): from nationality and plan (visit, work, commute from abroad, join family, study, retire, live without working, or already living here on a B permit) returns the permit (L, B, C, G or none)...9 params

Which Swiss permit fits a person (the Swiss Living Index permit route finder as a tool): from nationality and plan (visit, work, commute from abroad, join family, study, retire, live without working, or already living here on a B permit) returns the permit (L, B, C, G or none)...

Parameters* required
agenumber
Age in years, used for plan retire (e.g. 62).
family_member_in_switzerlandstring
family: status of the person in Switzerlandone of swiss · C · B · L
family_member_is_eu_eftaboolean
family: that person is an EU/EFTA national (free movement rules, not covered)
job_lengthstring
work: under 3 months, 3 to 12 months, a year or longer / open-ended (default ge12)one of lt3 · 3to12 · ge12
nationality*string
ISO 3166 alpha-2 code (e.g. DE, PL, GB, US, IN) or a group: eu5, eu, uk, other
plan*string
What the person wants to do in Switzerland: visit, work, commute (live abroad, work here), family (join family), study, retire, nonactive (live without working) or here (already living here).one of visit · work · commute · family · study · retire
qualifiedboolean
work, non-EU: manager, specialist or other qualified worker (default true)
ties_to_switzerlandboolean
retire: earlier long stays or close relatives in Switzerland
years_on_b_permitnumber
here: years on a B permit without interruption
work_permit_quotasSwiss work permit quotas for people from outside the EU/EFTA, set every year by the Federal Council (VZAE annexes 1 and 2): B and L permits per canton plus the federal reserve, and the separate quotas for EU/EFTA service providers over 90 days, UK nationals without acquired ri...2 params

Swiss work permit quotas for people from outside the EU/EFTA, set every year by the Federal Council (VZAE annexes 1 and 2): B and L permits per canton plus the federal reserve, and the separate quotas for EU/EFTA service providers over 90 days, UK nationals without acquired ri...

Parameters* required
cantonstring
2-letter abbreviation, optional
yearnumber
Quota year, e.g. 2026; omit for the latest Federal Council decision.
family_reunificationFamily reunification in Switzerland (AIG Art. 42 to 47, VZAE 73 to 73b): who can bring a spouse and children under 18, entitlement (Swiss citizens, C permit) or discretion (B, L), the conditions (living together, housing, no social assistance, language), the 5-year deadline (1...1 params

Family reunification in Switzerland (AIG Art. 42 to 47, VZAE 73 to 73b): who can bring a spouse and children under 18, entitlement (Swiss citizens, C permit) or discretion (B, L), the conditions (living together, housing, no social assistance, language), the 5-year deadline (1...

Parameters* required
sponsorstring
optional; omit for all fourone of swiss · C · B · L
naturalisation_canton_rulesCantonal conditions for ordinary Swiss naturalisation in each of the 26 cantons, on top of the federal rules (C permit, 10 years): minimum residence in the canton and the commune (2 to 5 years), language level spoken / written (federal minimum B1 / A2; 8 cantons require more),...1 params

Cantonal conditions for ordinary Swiss naturalisation in each of the 26 cantons, on top of the federal rules (C permit, 10 years): minimum residence in the canton and the commune (2 to 5 years), language level spoken / written (federal minimum B1 / A2; 8 cantons require more),...

Parameters* required
cantonstring
2-letter abbreviation, optional
asylum_statisticsOfficial Swiss asylum statistics of the State Secretariat for Migration (SEM, monthly, archived month by month): new asylum applications, completed cases, asylum grants, rejections, Dublin decisions, recognition and protection rates, applications and grants of protection statu...4 params

Official Swiss asylum statistics of the State Secretariat for Migration (SEM, monthly, archived month by month): new asylum applications, completed cases, asylum grants, rejections, Dublin decisions, recognition and protection rates, applications and grants of protection statu...

Parameters* required
indicatorstring
Filter indicators by key or label (German or French), e.g. "asylgesuche", "schutzquote", "dublin"; "all" for all ~200; omit for the 12 headline indicators.
monthstring
Month as YYYY-MM, e.g. "2026-09"; omit for the latest.
nationalitystring
Nationality as SEM writes it in German (or French), e.g. "Afghanistan", "Türkei", "Eritrea"; omit for the top 15 of the last 12 months.
yearsboolean
true to add the yearly series of each indicator.
public_holidaysPublic holidays per Swiss canton (official SECO list of cantonal holidays equated with Sundays, Art. 20a ArG; 1 August federal): for a canton and year the dates with weekday, which fall on working days and the bridge days (Monday before a Tuesday holiday, Friday after a Thursd...2 params

Public holidays per Swiss canton (official SECO list of cantonal holidays equated with Sundays, Art. 20a ArG; 1 August federal): for a canton and year the dates with weekday, which fall on working days and the bridge days (Monday before a Tuesday holiday, Friday after a Thursd...

Parameters* required
cantonstring
2-letter abbreviation, optional
yearnumber
default: current year
capital_withdrawal_taxTax on a lump-sum withdrawal from the pension fund (2nd pillar) or pillar 3a in every Swiss commune, from the official ESTV tax calculator: CHF 100,000, 250,000, 500,000 or 1,000,000, single or married, payment at 65, federal + cantonal + communal tax without church tax. Give...5 params

Tax on a lump-sum withdrawal from the pension fund (2nd pillar) or pillar 3a in every Swiss commune, from the official ESTV tax calculator: CHF 100,000, 250,000, 500,000 or 1,000,000, single or married, payment at 65, federal + cantonal + communal tax without church tax. Give...

Parameters* required
amountnumber
Withdrawn capital in CHF: 100000, 250000, 500000 or 1000000 (default 500000).one of 100000 · 250000 · 500000 · 1000000
cantonstring
Canton as 2-letter abbreviation, e.g. "ZH", "GE", "TI". Lists every commune of the canton.
communestring
Swiss commune: official name, BFS number or 4-digit postcode, e.g. "Winterthur", "230" or "8400". «8001 Zürich» and «Basel (BS)» also work.
householdstring
single (one person) or married (married couple).one of single · married
limitnumber
How many communes to list when ranking a canton or Switzerland, e.g. 10 (default 10).
pension_figuresOfficial Swiss retirement-provision figures for the current year and, once decided, the next year: pillar 3a maximum deduction (with / without pension fund), AHV/IV old-age pension minimum and maximum per month and the married couple cap, BVG entry threshold and coordination d...

Official Swiss retirement-provision figures for the current year and, once decided, the next year: pillar 3a maximum deduction (with / without pension fund), AHV/IV old-age pension minimum and maximum per month and the married couple cap, BVG entry threshold and coordination d...

No parameters. Call it with no arguments.

pillar3a_taxPillar 3a in a specific Swiss commune, from the official ESTV tax calculator: how much income tax a 3a payment saves (federal, cantonal and communal, without church tax) and how much tax a later capital withdrawal costs in the same commune. Defaults: the maximum 3a payment for...8 params

Pillar 3a in a specific Swiss commune, from the official ESTV tax calculator: how much income tax a 3a payment saves (federal, cantonal and communal, without church tax) and how much tax a later capital withdrawal costs in the same commune. Defaults: the maximum 3a payment for...

Parameters* required
age_at_withdrawalnumber
Age when the 3a capital is withdrawn, e.g. 64 (default 65).
amountnumber
3a payment CHF (default: the maximum for the profile)
capitalnumber
capital of a later withdrawal CHF (optional)
childrennumber
Number of children in the household, e.g. 2 (default 0).
commune*string
commune name or postcode
income*number
gross salary CHF per year
marriedboolean
true for a married couple (joint taxation), false or omitted for a single person.
pension_fundboolean
member of a pension fund (default true)
plan_moveWorkflow for "I am moving from A to B in Switzerland: what changes for me?" in one call. Combines: income tax at both places (live ESTV, if income given), the health premium region and cheapest insurer at both places (FOPH), the electricity bill at both places (ElCom), the com...7 params

Workflow for "I am moving from A to B in Switzerland: what changes for me?" in one call. Combines: income tax at both places (live ESTV, if income given), the health premium region and cheapest insurer at both places (FOPH), the electricity bill at both places (ElCom), the com...

Parameters* required
childrennumber
Number of children in the household, e.g. 2 (default 0).
from_commune*string
current commune, name or postcode
incomenumber
gross household income CHF/year (optional, enables the tax comparison)
languagestring
language of the to-do list, default enone of de · fr · it · en
marriedboolean
true for a married couple (joint taxation), false or omitted for a single person.
to_commune*string
new commune, name or postcode
work_placestring
workplace or station (optional, enables the commute comparison)
tax_by_communeIncome tax on a CHF 100,000 gross salary in every Swiss commune (federal + cantonal + communal, no church tax, no wealth), from the official ESTV tax calculator, for two households: single (35) and married couple with two children. Ranks the communes of a canton or Switzerland...4 params

Income tax on a CHF 100,000 gross salary in every Swiss commune (federal + cantonal + communal, no church tax, no wealth), from the official ESTV tax calculator, for two households: single (35) and married couple with two children. Ranks the communes of a canton or Switzerland...

Parameters* required
cantonstring
Canton as 2-letter abbreviation, e.g. "ZH", "GE", "TI". Lists every commune of the canton.
communestring
Swiss commune: official name, BFS number or 4-digit postcode, e.g. "Winterthur", "230" or "8400". «8001 Zürich» and «Basel (BS)» also work.
householdstring
single (35, no children) or family (married couple with two children).one of single · family
limitnumber
how many lowest/highest communes, default 10
health_premium_increaseHow much Swiss health insurance premiums rise next year: the FOPH official mean premium (all models and deductibles, as people chose them) for Switzerland and per canton, for adults, young adults (19–25) and children, previous year vs next year in CHF and %; plus the median ch...2 params

How much Swiss health insurance premiums rise next year: the FOPH official mean premium (all models and deductibles, as people chose them) for Switzerland and per canton, for adults, young adults (19–25) and children, previous year vs next year in CHF and %; plus the median ch...

Parameters* required
cantonstring
Canton as 2-letter abbreviation, e.g. "ZH", "GE", "TI". Omit for Switzerland and every canton.
insurerstring
insurer name, e.g. CSS, optional
health_deductible_adviceWhich health insurance deductible (franchise) pays off: for a commune or premium region, age group, model and expected yearly health costs, the yearly premiums plus cost sharing (deductible + 10 % up to CHF 700, children CHF 350, KVG) for every deductible, the cheapest choice...7 params

Which health insurance deductible (franchise) pays off: for a commune or premium region, age group, model and expected yearly health costs, the yearly premiums plus cost sharing (deductible + 10 % up to CHF 700, children CHF 350, KVG) for every deductible, the cheapest choice...

Parameters* required
accidentboolean
accident cover included (default true; employees 8+ h a week are covered by the employer)
age_groupstring
adult (default), young_adult or child
communestring
Swiss commune: official name, BFS number or 4-digit postcode, e.g. "Winterthur", "230" or "8400". «8001 Zürich» and «Basel (BS)» also work.
expected_costsnumber
expected health costs per year in CHF (doctor, medicines, hospital, therapy), default 1000
insurerstring
one insurer by name, optional (default: the cheapest offer per deductible)
modelstring
standard (default), family_doctor, telemedicine or any
regionstring
Premium region as canton plus number, e.g. "ZH-1", "ZH-2", "BE-3" (use instead of commune).
switch_health_insurerHow to switch basic health insurance in Switzerland: the deadline for next year (receipt by 30 November, the Friday before on a weekend) with the days left, the five steps, when a switch is blocked (debts reminded by 30 November and unpaid by 31 December), the 30 June option (...

How to switch basic health insurance in Switzerland: the deadline for next year (receipt by 30 November, the Friday before on a weekend) with the days left, the five steps, when a switch is blocked (debts reminded by 30 November and unpaid by 31 December), the 30 June option (...

No parameters. Call it with no arguments.

Sponsors

Details

Website
swisslivingindex.ch
Categories
Search & Web Crawling, Data & Analytics
Transport
HTTP
Registry
MCP registry, active
Resources
190
Tools verified
Nov 6, 2026

Related Search & Web Crawling MCP servers

View all
1tetiai avatarpixserptetiai/pixserp-mcpLive AI-native web search with citations. One tool for every MCP client. Flat per-request pricing.0stars
2ski-france avatarski-france.com Agent Searchcom.ski-france/agent-searchSki apartment search with one- or two-week prices, availability, destinations and ski passes.0stars
3huoshuiai42 avatarHuoshui Fetchhuoshuiai42/huoshui-fetchAn MCP server that provides tools for fetching, converting, and extracting data from web pages.0stars
4huoshuiai42 avatarHuoshui File Searchhuoshuiai42/huoshui-file-searchAn MCP server that provides fast Spotlight file search capabilities for macOS0stars
5giskard09 avatarGiskard Searchgiskard09/giskard-searchPay-per-use web search for AI agents. Lightning invoice, Ed25519 signature, karma discounts.0stars
6ofershap avatarNpm Searchofershap/mcp-server-npmnpm search MCP — find packages, view details, compare, check downloads.0stars