Swiss Health Mcp

io.github.remoprinz由 GitHub 帳號 remoprinz 發布v1.0.8更新於 Oct 24, 2026

Swiss health insurance premiums (Krankenkassen-Prämien) 2016-2026. 1.6M records from BAG.

已驗證STDIO僅桌面金融資料與分析

概覽

AI 產生的概覽

一個本機 MCP 伺服器,讓助理查詢 160 萬筆瑞士醫療保險保費紀錄(2016–2026),用來尋找與比較保險公司。

可以做什麼
依州別、年份、年齡層、自負額與保險模式找出最便宜的保險公司,可選擇是否含意外保障,並對 55 家以上保險公司及其子品牌做模糊名稱比對。針對同一投保條件並排比較指定的幾家保險公司。查詢單一保險公司在指定年份區間內的價格走勢與年增率。讀取資料集的涵蓋統計與中繼資料。每則回覆都附上 BAG Priminfo 來源標註與僅供參考的提示。
適用情境
適合需要比較瑞士醫療保險保費、尋找某州某自負額下最便宜選項,或了解某家保險公司歷年價格變化的情況。它是瑞士保費資料的唯讀參考工具,不提供購買或諮詢建議。
執行需求
透過 npx 或全域 npm 安裝在本機執行,需要 Node.js 18+。需要在用戶端設定中設定 SUPABASE_URL(Supabase 專案網址)與 SUPABASE_SERVICE_ROLE_KEY(Supabase 服務角色金鑰)。需要能連線至 Supabase 的網路。
安裝前請注意
伺服器需要 Supabase 服務角色金鑰,這是可繞過資料列層級安全的高權限憑證;請使用僅限目標專案的金鑰,並避免寫入共用設定。說明稱其為唯讀存取、無寫入操作、無個人資料,保費資訊僅供參考,不構成有約束力的報價。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Swiss Health Mcp,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

Swiss Health MCP Server

[npm version] [License: MIT]

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):

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:

bash
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.

ParameterTypeRequiredDescription
cantonstringyesCanton code (e.g. ZH, BE, GE)
yearnumberyesYear (2016--2026)
age_bandstringyeschild (0--18), young_adult (19--25), adult (26+)
franchise_chfnumberyesDeductible: 0, 100, 200, 300, 400, 500, 600, 1000, 1500, 2000, 2500
model_typestringnostandard (default), hmo, telmed, family_doctor, diverse
accident_coveredbooleannoInclude accident coverage (default: true)

compare_insurers

Side-by-side comparison of specific insurers for the same profile.

ParameterTypeRequiredDescription
insurer_namesstring[]yesInsurer names (e.g. ["CSS", "Helsana", "Swica"])
cantonstringyesCanton code
yearnumberyesYear (2016--2026)
age_bandstringyesAge group
franchise_chfnumberyesDeductible in CHF

get_price_history

10-year price development for a single insurer with year-over-year percentage change.

ParameterTypeRequiredDescription
insurer_namestringyesInsurer name (e.g. CSS, Helsana)
cantonstringyesCanton code
age_bandstringyesAge group
franchise_chfnumberyesDeductible in CHF
start_yearnumbernoStart year (default: 2016)
end_yearnumbernoEnd year (default: 2026)

get_database_stats

Returns coverage statistics and metadata. No parameters.

Data

DimensionCoverage
Records1,611,386+
Insurers55 (CSS, Helsana, Swica, Assura, KPT, Groupe Mutuel, Sanitas, ...)
Cantons26 (all Swiss cantons)
Years11 (2016--2026)
Franchise levels11 (CHF 0--2,500)
Insurance models5 (standard, HMO, telmed, family doctor, diverse)
Age bands3 (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

VariableRequiredDescription
SUPABASE_URLyesSupabase project URL
SUPABASE_SERVICE_ROLE_KEYyesSupabase 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

bash
git clone https://github.com/remoprinz/swiss-health-mcp.gitcd swiss-health-mcpnpm installnpm run dev     # Start with tsxnpm run build   # Compile TypeScript

Project Structure

src/index.ts       # Complete server implementation (~530 lines)server.json        # MCP registry manifestsmithery.yaml      # Smithery registry configllms.txt           # LLM-readable project descriptionCITATION.cff       # Citation metadata

License

MIT -- Remo Prinz

Links

來源:README.md,提交 3dd3d60

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v1.0.8最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分