BAG public-health open data: indicators, programmes, statistics
BAG public-health open data: indicators, programmes, statistics. The bag mcp server wraps that behind the Model Context Protocol, so an assistant can use it through 10 defined tools rather than through you.
MCP server for Swiss public health data. Its core is the Swiss Federal Office of Public Health (BAG) Infectious Disease Dashboard (IDD) — epidemiological surveillance for 51 pathogens (influenza, COVID-19, measles, wastewater surveillance, and more) — extended with a multi-source health-indicator layer over the Swiss Health Observatory (Obsan), the Versorgungsatlas (health-care supply atlas, with cantonal series) and Sucht Schweiz (HBSC youth survey). All read-only, public Open Government Data.
Everything the assistant can do here goes through one of these:
bag_health_mcp__list_diseases — List all 51 disease topics, grouped by categorybag_health_mcp__list_series — List data series for a specific diseasebag_health_mcp__get_series_details — Get available filter dimensions (canton, age, sex)bag_health_mcp__get_disease_data — Fetch time-series surveillance databag_health_mcp__get_canton_situation — Situational overview for a canton (Schulamt use case)bag_health_mcp__list_export_files — List available complete export datasetsbag_health_mcp__download_export — Download raw CSV/JSON exportbag_health_mcp__get_data_version — Current data version (updated every Wednesday)bag_health_mcp__search_health_indicators — Search indicators by source (obsan / versorgungsatlas / suchtschweiz), topic, region, year rangebag_health_mcp__get_indicator_series — Fetch one indicator's time series (national with 95% CIs; Versorgungsatlas also cantonal, with a canton-vs-Switzerland comparison)You will need 2 environment variables: OTEL_EXPORTER_OTLP_ENDPOINT, MCP_AUTH_TOKEN. The server will not start without them, which is usually why the tools fail to appear on a first run. Keep credentials in your client's env block or a secrets manager rather than in a file you might commit.
The server ships on PyPI as bag-health-mcp, so your MCP client can launch it on demand — there is no separate build step. Add the server block to your client's configuration, restart it, and the tools register themselves.
Among the developer tooling options, the useful question is rarely "what can it do" but "what does it cost you to run" — permissions, credentials, and how much of your context its toolset consumes. Bag's toolset — bag_health_mcp__list_diseases, bag_health_mcp__list_series, bag_health_mcp__get_series_details and 7 more — is a fair guide to whether it matches your workflow. It is maintained by malkreide; worth a glance at recent repository activity before you build anything load-bearing on it.
This entry was verified against Bag's own documentation before publication; SyncDev keeps the directory reviewed rather than auto-generated.
| Tool | What it does |
|---|---|
| bag_health_mcp__list_diseases | List all 51 disease topics, grouped by category |
| bag_health_mcp__list_series | List data series for a specific disease |
| bag_health_mcp__get_series_details | Get available filter dimensions (canton, age, sex) |
| bag_health_mcp__get_disease_data | Fetch time-series surveillance data |
| bag_health_mcp__get_canton_situation | Situational overview for a canton (Schulamt use case) |
| bag_health_mcp__list_export_files | List available complete export datasets |
| bag_health_mcp__download_export | Download raw CSV/JSON export |
| bag_health_mcp__get_data_version | Current data version (updated every Wednesday) |
| bag_health_mcp__search_health_indicators | Search indicators by source (obsan / versorgungsatlas / suchtschweiz), topic, region, year range |
| bag_health_mcp__get_indicator_series | Fetch one indicator's time series (national with 95% CIs; Versorgungsatlas also **cantonal**, with a canton-vs-Switzerland comparison) |
{
"mcpServers": {
"bag-health": {
"command": "uvx",
"args": ["bag-health-mcp"]
}
}
}Configuration as documented by the project. Restart the client after saving.
| Variable | Description | Required |
|---|---|---|
| OTEL_EXPORTER_OTLP_ENDPOINT | Configuration value read at startup. | Optional |
| MCP_AUTH_TOKEN | Credential the server authenticates with. | Yes |
Kill hallucinated APIs — version-accurate, up-to-date library documentation injected straight into context.
Microsoft's official browser automation server — drive a real browser through the accessibility tree, no screenshots needed.
GitHub's official server — repos, issues, pull requests, Actions and code security, straight from your assistant.
Issue tracking at the speed of conversation — Linear's official hosted server with OAuth and zero install.
Local repository surgery — status, diffs, commits, branches and history for any repo on disk.
Timezone sanity for AI — current time anywhere and correct conversions, without the model doing date math.