# cdc-health-mcp-server MCP server

Search and query CDC public health data — mortality, vaccinations, surveillance, behavioral risk.

## Links
- Registry page: https://www.getdrio.com/mcp/io-github-cyanheads-cdc-health-mcp-server
- Repository: https://github.com/cyanheads/cdc-health-mcp-server

## Install
- Command: `npx -y @cyanheads/cdc-health-mcp-server`
- Endpoint: https://cdc.caseyjhand.com/mcp
- Auth: Not captured

## Setup notes
- Package: Npm @cyanheads/cdc-health-mcp-server v0.8.0
- Environment variable: CDC_APP_TOKEN
- Environment variable: MCP_LOG_LEVEL (default info)
- Package: Npm @cyanheads/cdc-health-mcp-server v0.8.0
- Environment variable: CDC_APP_TOKEN
- Environment variable: MCP_HTTP_HOST (default 127.0.0.1)
- Environment variable: MCP_HTTP_PORT (default 3010)
- Environment variable: MCP_HTTP_ENDPOINT_PATH (default /mcp)
- Environment variable: MCP_AUTH_MODE (default none)
- Environment variable: MCP_LOG_LEVEL (default info)
- Remote endpoint: https://cdc.caseyjhand.com/mcp

## Tools
- cdc_discover_datasets (Cdc Discover Datasets) - Search the CDC dataset catalog by keyword, category, or tag. Returns IDs, names, truncated descriptions, asset types, column counts, and update timestamps. The catalog also holds charts, maps, stories, files, and links; an entry whose columnCount is 0 is one of those and yields no data from the other tools. Use cdc_get_dataset_schema for the full column list of a chosen dataset. Endpoint: https://cdc.caseyjhand.com/mcp
- cdc_get_dataset_schema (Cdc Get Dataset Schema) - Fetch the column schema for a CDC dataset — names, data types, descriptions, row count, and last-updated timestamp. Returns the first 100 columns by default; wide datasets continue via column_offset. Get dataset IDs from cdc_discover_datasets. Endpoint: https://cdc.caseyjhand.com/mcp
- cdc_query_dataset (Cdc Query Dataset) - Execute a SoQL query against any CDC dataset. Supports filtering, aggregation, sorting, full-text search, and field selection. Use cdc_discover_datasets to find dataset IDs and cdc_get_dataset_schema to inspect columns before querying. Endpoint: https://cdc.caseyjhand.com/mcp
- cdc_query_wonder (Cdc Query Wonder) - Query CDC WONDER for national US mortality statistics — deaths, population, and crude/age-adjusted death rates — across its five mortality databases, selected with the database input: final underlying-cause data for 1999–2020 (the default) or 2018–2024, provisional data running from 2018 through the current year, and two multiple-cause databases covering the same two eras. Break results out by year, age group, sex, and/or race, and filter by ICD-10 cause of death, sex, age group, or year range; on a multiple-cause database, mcd_icd10 additionally matches a cause listed anywhere on the death certificate rather than only the one certified as underlying. Each database holds a different span of years (1999–2026 across all of them) and a request whose year_range falls outside the selected one's span is rejected with that span named. WONDER is a separate CDC system from the Socrata datasets the other cdc_* tools query. Data is national only — sub-national (state/county) breakdowns are not available through the API (CDC vital-statistics policy). Cause of death is a filter, not a grouping. Some measure cells come back as a CDC status token rather than a number — "Suppressed" (withheld for confidentiality), "Unreliable" (a rate from fewer than 20 deaths), or "Not Applicable" (no population denominator); those cells read null in rows and each one is listed in cellNotes with its token. CDC also drops whole rows before sending the table — strata with zero deaths, and strata whose death count is suppressed — so a stratum can be missing from rows entirely; messages carries CDC's statement whenever that happened. The whole table comes back by default; a broad grouping can run past a thousand rows, so set limit to take it a page at a time and follow the nextOffset the response reports. Paging shapes the response only — WONDER is asked once either way, and the figures, caveats and hidden-row notices are the same on every page. CDC rejects requests made less than 15 seconds apart across all five databases, so consecutive calls are spaced automatically and a follow-up call may wait about 16 seconds before it runs. Endpoint: https://cdc.caseyjhand.com/mcp

## Resources
- cdc://datasets - CDC Dataset Catalog Top 50 CDC catalog entries by popularity with names, categories, asset types, column counts, and update timestamps. Provides an overview of the CDC data landscape for orientation; an entry whose columnCount is 0 is not tabular and yields no data from cdc_get_dataset_schema or cdc_query_dataset. Use cdc_discover_datasets for full catalog search with filtering and pagination. MIME type: application/json
- cdc://datasets/bi63-dtpu - CDC Dataset Detail Dataset metadata and column schema for a specific CDC dataset, addressable by URI. Carries the first 100 columns, the dataset's total column count, and a truncation flag; call cdc_get_dataset_schema with column_offset for the columns beyond that window. MIME type: application/json
- cdc://datasets/9bhg-hcku - CDC Dataset Detail Dataset metadata and column schema for a specific CDC dataset, addressable by URI. Carries the first 100 columns, the dataset's total column count, and a truncation flag; call cdc_get_dataset_schema with column_offset for the columns beyond that window. MIME type: application/json

## Prompts
- analyze_health_trend - Structured workflow for investigating a public health question across CDC data. Picks between the two systems this server reads — CDC WONDER for national mortality (1999–2026, final and provisional), the Socrata catalog for everything else — then guides through: discover relevant datasets, inspect schemas, query for baseline data, compare across time/geography/demographics, and synthesize findings. Arguments: topic, timeRange, geography

## Metadata
- Owner: io.github.cyanheads
- Version: 0.8.0
- Runtime: Npm
- Transports: STDIO, HTTP
- License: Not captured
- Language: Not captured
- Stars: Not captured
- Updated: Jul 11, 2026
- Source: https://registry.modelcontextprotocol.io
