# ch.swisslivingindex/swiss-living-index: tool descriptions scored

- tools/list taken: 2026-11-02 (UTC)
- From: [Official MCP Registry](https://registry.modelcontextprotocol.io/v0/servers/ch.swisslivingindex%2Fswiss-living-index/versions/latest)
- Connected to: https://swisslivingindex.ch/mcp
- Homepage: https://swisslivingindex.ch/
- Scoring rules: v2
- Tools: 72
- Average: 55.6 / 100 (Cloudy)
- Near-identical pairs: 1

This page shows how ch.swisslivingindex/swiss-living-index's tool descriptions scored, the issues found and the names of its tools and parameters. The descriptions are the server's own: read them where the copy came from.

Forecall asked the URL this server lists in the official MCP Registry for its tools/list once, on the date above, without calling any tool. The server may have changed since.

## Across the server

- Major: 72 tools. Above 40, models choose less accurately.
- Minor: The server's instructions are 2149 characters. Claude Code reads only the first 2,048 by default (Codex 0.154.0 reads them whole). Put what the server is for first.

## Tools

- `dog_tax`: 41 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `election_results`: 41 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: String arguments with no constraint or example: canton.
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `how_many`: 41 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `sunday_shopping`: 41 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: String arguments with no constraint or example: canton.
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `waste_fees`: 41 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `cantonal_parliament`: 43 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `canton_delegation`: 44 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: String arguments with no constraint or example: canton.
  - Minor: Says nothing about what it returns.
- `pollen`: 44 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: String arguments with no constraint or example: canton.
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `water_temperature`: 44 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: String arguments with no constraint or example: canton.
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `births_deaths`: 46 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `family_reunification`: 46 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `asylum_statistics`: 48 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `imputed_rental_value`: 48 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: String arguments with no constraint or example: canton.
  - Minor: No `required` list, so every argument is optional.
- `fire_danger`: 49 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: String arguments with no constraint or example: canton.
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `get_family_tax_deductions`: 49 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `get_housing_costs`: 49 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `get_switzerland`: 49 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Says nothing about what it returns.
- `household_budget`: 49 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: No `required` list, so every argument is optional.
- `leaving_switzerland`: 49 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `naturalisation_canton_rules`: 49 / 100
  - Minor: String arguments with no constraint or example: canton.
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `rent_index`: 49 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: String arguments with no constraint or example: canton.
  - Minor: No `required` list, so every argument is optional.
- `school_holidays`: 49 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: String arguments with no constraint or example: canton.
  - Minor: No `required` list, so every argument is optional.
- `work_permit_quotas`: 49 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: String arguments with no constraint or example: canton.
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `capital_withdrawal_tax`: 51 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `data_freshness`: 51 / 100
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `parliament_member`: 51 / 100
  - Minor: String arguments with no constraint or example: canton.
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `parliament_session`: 51 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `tax_deadlines`: 51 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: String arguments with no constraint or example: canton.
  - Minor: No `required` list, so every argument is optional.
- `ev_charging_near`: 54 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: No `required` list, so every argument is optional.
- `get_salary`: 54 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: No `required` list, so every argument is optional.
- `health_premium_increase`: 54 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: No `required` list, so every argument is optional.
- `immigration_reasons`: 54 / 100
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `get_trend`: 56 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Says nothing about what it returns.
- `search_speeches`: 56 / 100
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `tax_by_commune`: 56 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: No `required` list, so every argument is optional.
- `commune_tax`: 57 / 100
  - Major: Says nothing about when to use it, or when not to.
- `estimate_net_move`: 57 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: The description mentions none of its 3 or more arguments.
- `get_electricity_price`: 57 / 100
  - Major: Says nothing about when to use it, or when not to.
- `get_minimum_wage`: 57 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: No `required` list, so every argument is optional.
- `get_premium_subsidy`: 57 / 100
  - Major: Says nothing about when to use it, or when not to.
- `upcoming_votes`: 57 / 100
  - Major: Says nothing about when to use it, or when not to.
- `get_reference_rate`: 58 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: No `required` list, so every argument is optional.
- `parliament_business`: 58 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: No `required` list, so every argument is optional.
- `parliament_vote`: 58 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: String arguments with no constraint or example: member.
  - Minor: No `required` list, so every argument is optional.
- `cheapest_health_insurer`: 59 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: String arguments with no constraint or example: canton.
  - Minor: No `required` list, so every argument is optional.
- `compare_health_insurers`: 59 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: No `required` list, so every argument is optional.
- `fuel_prices_near`: 59 / 100
  - Minor: No `required` list, so every argument is optional.
- `mortgage_rates`: 59 / 100
  - Minor: No `required` list, so every argument is optional.
- `permit_types`: 59 / 100
  - Minor: No `required` list, so every argument is optional.
- `salary_by_occupation`: 59 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: No `required` list, so every argument is optional.
- `commute_cost`: 60 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: String arguments with no constraint or example: fuel.
- `get_payroll_rates`: 60 / 100
  - Major: Says nothing about when to use it, or when not to.
- `health_deductible_advice`: 60 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: No `required` list, so every argument is optional.
- `list_metrics`: 60 / 100
  - Major: Says nothing about when to use it, or when not to.
- `pension_figures`: 60 / 100
  - Major: Says nothing about when to use it, or when not to.
- `pillar3a_tax`: 60 / 100
  - Major: Says nothing about when to use it, or when not to.
- `federal_votes`: 61 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: String arguments with no constraint or example: canton.
  - Minor: No `required` list, so every argument is optional.
- `list_datasets`: 61 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: No `required` list, so every argument is optional.
- `parliament_and_people`: 61 / 100
- `public_holidays`: 61 / 100
  - Minor: String arguments with no constraint or example: canton.
  - Minor: No `required` list, so every argument is optional.
- `get_commune`: 62 / 100
  - Major: Says nothing about when to use it, or when not to.
- `switch_health_insurer`: 62 / 100
- `get_dataset`: 67 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Required identifiers whose description does not say where the value comes from: id. Name the tool or the place that returns it, or models look it up first.
- `recommend_canton`: 67 / 100
  - Minor: No `required` list, so every argument is optional.
- `plan_move`: 68 / 100
- `naturalisation_timing`: 69 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: The description mentions none of its 3 or more arguments.
- `compare_cantons`: 70 / 100
- `rank_by_metric`: 70 / 100
  - Major: Says nothing about when to use it, or when not to.
- `search_commune`: 72 / 100
- `which_permit`: 74 / 100
  - Major: Says nothing about when to use it, or when not to.
- `get_canton`: 75 / 100
  - Major: Says nothing about when to use it, or when not to.
- `ahv_pension`: 76 / 100
  - Minor: No `required` list, so every argument is optional.

Is your server listed here and you would rather it were not? Email support@forecall.dev, and we will take it off within 7 days.

[All scored servers](https://forecall.dev/en/servers)
