io.github.remoprinz/swiss-health-mcp
Swiss health insurance premiums (Krankenkassen-Prämien) 2016-2026. 1.6M records from BAG.
What can you do with io.github.remoprinz/swiss-health-mcp?
- Intelligent insurer name resolution -- fuzzy matching across 55+ insurers and their sub-brands. Ask for "Helsana" and the server resolves all associated insurer IDs automatically.
- Automatic disclaimer -- every response includes BAG Priminfo attribution and a notice that premiums are informational only.
- Read-only access -- no write operations, no personal data.
- Percentage change calculations -- price history includes year-over-year trends.
Install
Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).
@prinz_esox/swiss-health-mcpclaude mcp add swiss-health-mcp -e 'SUPABASE_URL=<SUPABASE_URL>' -e 'SUPABASE_SERVICE_ROLE_KEY=<your supabase_service_role_key>' -- npx -y @prinz_esox/swiss-health-mcp@1.0.8
{
"mcpServers": {
"swiss-health-mcp": {
"command": "npx",
"args": [
"-y",
"@prinz_esox/swiss-health-mcp@1.0.8"
],
"env": {
"SUPABASE_URL": "<SUPABASE_URL>",
"SUPABASE_SERVICE_ROLE_KEY": "<your supabase_service_role_key>"
}
}
}
}
Environment variables
SUPABASE_URLrequired Supabase Project URL (e.g. https://xxx.supabase.co)SUPABASE_SERVICE_ROLE_KEYrequired secret Supabase Service Role Key for database access
Documentation
From the project's README on GitHub, refreshed weekly. Links open on GitHub.
Contents
Swiss Health MCP Server
An MCP server that gives AI assistants structured access to 1.6 million Swiss health insurance premium records -- 55 insurers, 26 cantons, 11 years of official government data.
Built on the Model Context Protocol. Data sourced from BAG Priminfo (Swiss Federal Office of Public Health, 2016--2026). This is the MCP companion to the KrankenkassenGPT REST API.
Quick Start
Add this to your Claude Desktop config (claude_desktop_config.json) or Cursor settings (.cursor/mcp.json):
{
"mcpServers": {
"swiss-health": {
"command": "npx",
"args": ["-y", "@prinz_esox/swiss-health-mcp"],
"env": {
"SUPABASE_URL": "https://your-project.supabase.co",
"SUPABASE_SERVICE_ROLE_KEY": "your-service-role-key"
}
}
}
}
Or install globally:
npm install -g @prinz_esox/swiss-health-mcp
The server is also available on the Smithery registry and the MCP Registry.
Tools
get_cheapest_insurers
Find the top 5 cheapest health insurers for a given profile.
| Parameter | Type | Required | Description |
|---|---|---|---|
canton | string | yes | Canton code (e.g. ZH, BE, GE) |
year | number | yes | Year (2016--2026) |
age_band | string | yes | child (0--18), young_adult (19--25), adult (26+) |
franchise_chf | number | yes | Deductible: 0, 100, 200, 300, 400, 500, 600, 1000, 1500, 2000, 2500 |
model_type | string | no | standard (default), hmo, telmed, family_doctor, diverse |
accident_covered | boolean | no | Include accident coverage (default: true) |
compare_insurers
Side-by-side comparison of specific insurers for the same profile.
| Parameter | Type | Required | Description |
|---|---|---|---|
insurer_names | string[] | yes | Insurer names (e.g. ["CSS", "Helsana", "Swica"]) |
canton | string | yes | Canton code |
year | number | yes | Year (2016--2026) |
age_band | string | yes | Age group |
franchise_chf | number | yes | Deductible in CHF |
get_price_history
10-year price development for a single insurer with year-over-year percentage change.
| Parameter | Type | Required | Description |
|---|---|---|---|
insurer_name | string | yes | Insurer name (e.g. CSS, Helsana) |
canton | string | yes | Canton code |
age_band | string | yes | Age group |
franchise_chf | number | yes | Deductible in CHF |
start_year | number | no | Start year (default: 2016) |
end_year | number | no | End year (default: 2026) |
get_database_stats
Returns coverage statistics and metadata. No parameters.
Data
| Dimension | Coverage |
|---|---|
| Records | 1,611,386+ |
| Insurers | 55 (CSS, Helsana, Swica, Assura, KPT, Groupe Mutuel, Sanitas, ...) |
| Cantons | 26 (all Swiss cantons) |
| Years | 11 (2016--2026) |
| Franchise levels | 11 (CHF 0--2,500) |
| Insurance models | 5 (standard, HMO, telmed, family doctor, diverse) |
| Age bands | 3 (child, young adult, adult) |
All data comes from BAG Priminfo, the official database of the Swiss Federal Office of Public Health.
Features
- Intelligent insurer name resolution -- fuzzy matching across 55+ insurers and their sub-brands. Ask for "Helsana" and the server resolves all associated insurer IDs automatically.
- Automatic disclaimer -- every response includes BAG Priminfo attribution and a notice that premiums are informational only.
- Read-only access -- no write operations, no personal data.
- Percentage change calculations -- price history includes year-over-year trends.
Example Prompts
"What are the cheapest health insurers in Zurich for 2026?"
"Compare CSS, Helsana and Swica in Bern for an adult with CHF 300 deductible"
"How did Assura premiums develop from 2016 to 2026?"
"Which insurer had the smallest price increase over the last 10 years in Basel?"
Environment Variables
| Variable | Required | Description |
|---|---|---|
SUPABASE_URL | yes | Supabase project URL |
SUPABASE_SERVICE_ROLE_KEY | yes | Supabase service role key for database access |
Tech Stack
- Protocol: MCP SDK v1.0.0 (stdio transport)
- Language: TypeScript
- Database: Supabase (PostgreSQL)
- Runtime: Node.js 18+
- Package: @prinz_esox/swiss-health-mcp
- Registry ID:
io.github.remoprinz/swiss-health-mcp
Development
git clone https://github.com/remoprinz/swiss-health-mcp.git
cd swiss-health-mcp
npm install
npm run dev # Start with tsx
npm run build # Compile TypeScript
Project Structure
src/index.ts # Complete server implementation (~530 lines)
server.json # MCP registry manifest
smithery.yaml # Smithery registry config
llms.txt # LLM-readable project description
CITATION.cff # Citation metadata
License
MIT -- Remo Prinz
Links
Frequently asked questions
What is io.github.remoprinz/swiss-health-mcp?
Swiss health insurance premiums (Krankenkassen-Prämien) 2016-2026. 1.6M records from BAG.
How do I install io.github.remoprinz/swiss-health-mcp?
It runs on your machine. In Claude Code: claude mcp add swiss-health-mcp -e 'SUPABASE_URL=<SUPABASE_URL>' -e 'SUPABASE_SERVICE_ROLE_KEY=<your supabase_service_role_key>' -- npx -y @prinz_esox/swiss-health-mcp@1.0.8. For other clients, paste the JSON configuration from this page into their MCP settings.
Does io.github.remoprinz/swiss-health-mcp need an API key?
Yes. It expects SUPABASE_URL, SUPABASE_SERVICE_ROLE_KEY, which you set in its configuration.
Is io.github.remoprinz/swiss-health-mcp open source?
Yes. Its code is on GitHub under the MIT license.
Who maintains io.github.remoprinz/swiss-health-mcp?
It is published by remoprinz. AI.tn lists it but does not maintain or endorse it.
From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.