swiss-living-index
Official Swiss living-cost & relocation data for all 26 cantons — taxes, rent, premiums, jobs.
Should I use this
Quality & Safety
Findings (1)
- LOWin compare_cantons
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"swiss-living-index": {
"url": "https://swisslivingindex.ch/mcp"
}
}
}Remote endpoints
https://swisslivingindex.ch/mcpstreamable-httpWhat it can do
Tool inventory
Tools (11)
🟢list_metrics
List available metrics for the 26 Swiss cantons (key, label, unit, source, what higher/lower means).
Input Schema
{
"type": "object",
"properties": {}
}🟢get_canton(canton)
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 scenario, not universal suitability.
Input Schema
{
"type": "object",
"properties": {
"canton": {
"type": "string"
}
},
"required": [
"canton"
]
}🟢rank_by_metric(metric, order)
Rank all cantons by a metric. metric = a key from list_metrics; order = "high" or "low" (default high).
Input Schema
{
"type": "object",
"properties": {
"metric": {
"type": "string"
},
"order": {
"type": "string"
}
},
"required": [
"metric"
]
}⚪compare_cantons(cantons)
Compare 2–4 cantons across all metrics. cantons = array of abbreviations.
Input Schema
{
"type": "object",
"properties": {
"cantons": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"cantons"
]
}⚪commune_tax(commune, income, married, children, wealth)
Live income+wealth tax for a specific commune & household (official ESTV, year 2026). commune = name or postcode; income in CHF; married bool; children count; wealth in CHF.
Input Schema
{
"type": "object",
"properties": {
"commune": {
"type": "string"
},
"income": {
"type": "number"
},
"married": {
"type": "boolean"
},
"children": {
"type": "number"
},
"wealth": {
"type": "number"
}
},
"required": [
"commune",
"income"
]
}🟢search_commune(query)
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.
Input Schema
{
"type": "object",
"properties": {
"query": {
"type": "string"
}
},
"required": [
"query"
]
}⚪estimate_net_move(from_commune, to_commune, income, married, children, ...)
Estimate the net yearly CHF impact of moving between two Swiss communes for a household: live commune-level tax (official ESTV 2026) plus canton-average rent and health-premium differences. Positive savings = the move saves money. The flagship relocation calculation as a tool.
Input Schema
{
"type": "object",
"properties": {
"from_commune": {
"type": "string",
"description": "current commune name or postcode"
},
"to_commune": {
"type": "string",
"description": "candidate commune name or postcode"
},
"income": {
"type": "number",
"description": "gross household income, CHF/year"
},
"married": {
"type": "boolean"
},
"children": {
"type": "number"
},
"wealth": {
"type": "number",
"description": "taxable wealth, CHF"
}
},
"required": [
"from_commune",
"to_commune",
"income"
]
}🟢get_trend(canton, metric, from_year)
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_pct (SECO yearly averages to 1993). Optional from_year.
Input Schema
{
"type": "object",
"properties": {
"canton": {
"type": "string"
},
"metric": {
"type": "string"
},
"from_year": {
"type": "number"
}
},
"required": [
"canton",
"metric"
]
}⚪upcoming_votes
The next Swiss federal vote dates and (once announced) the subjects on the ballot, in DE/FR/IT/EN (official Federal Chancellery / VoteInfo data).
Input Schema
{
"type": "object",
"properties": {}
}🟢recommend_canton(cost, tax, work, env, health, ...)
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 cantons scored by the transparent percentile method of the Swiss Living Quality Index. Every evidence figure carries value, unit, rank, source and year. Scores describe order under the stated weights, not universal suitability.
Input Schema
{
"type": "object",
"properties": {
"cost": {
"type": "number",
"description": "0-3, default 2"
},
"tax": {
"type": "number"
},
"work": {
"type": "number"
},
"env": {
"type": "number"
},
"health": {
"type": "number"
},
"infra": {
"type": "number",
"description": "0-3, connectivity & infrastructure (active once infra metrics ship)"
},
"international_community": {
"type": "boolean",
"description": "include foreigner share, higher preferred"
},
"limit": {
"type": "number",
"description": "top N with evidence, default 5"
}
}
}⚪book_consultation(name, email, phone, topic, message, ...)
Request a personal consultation with Mirabello Consultancy (Swiss relocation & investment-migration specialists) for questions beyond the data — international moves, residency, lump-sum taxation, wealth planning. Requires explicit consent to share contact details.
Input Schema
{
"type": "object",
"properties": {
"name": {
"type": "string"
},
"email": {
"type": "string"
},
"phone": {
"type": "string"
},
"topic": {
"type": "string"
},
"message": {
"type": "string"
},
"consent": {
"type": "boolean",
"description": "must be true: the person explicitly consents to their contact details being shared with Mirabello Consultancy"
}
},
"required": [
"name",
"email",
"consent"
]
}Recommended Prompts
search_communesearch_communelist_metricsget_cantonget_cantonCommunity
Evidence