# cdc-health-mcp-server

Даёт агенту доступ к открытым данным CDC: каталог датасетов, схемы, запросы на SoQL и статистика смертности из CDC WONDER.

- MCP-сервер · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 5
- Автор: cyanheads
- Лицензия: Apache-2.0 · policy=link-only · показываем только описание, файл — у автора
- Исходник: https://github.com/cyanheads/cdc-health-mcp-server
- Обновлён: 2026-10-17
- HTML: https://affpapa.org/nevibecode/mcp/cdc-health-mcp-server

## Что делает

Сервер подключается к порталу открытых данных CDC и к CDC WONDER. Внутри пять инструментов: поиск по каталогу датасетов, получение схемы таблицы, список категорий и тегов каталога, выполнение запросов на SoQL и запросы к WONDER по смертности, населению и коэффициентам смертности. Плюс два ресурса — `cdc://datasets` с самыми просматриваемыми записями каталога и `cdc://datasets/{datasetId}` с метаданными конкретного датасета — и промпт `analyze_health_trend` для разбора вопроса по данным CDC.

Работает по STDIO или Streamable HTTP. Есть публичный хост `https://cdc.caseyjhand.com/mcp`, к нему можно подключиться без локального запуска. Для локального варианта нужен `npx`, а токен приложения CDC передаётся переменной `CDC_APP_TOKEN`; остальные переменные — `MCP_LOG_LEVEL`, `MCP_TRANSPORT_TYPE`, `MCP_HTTP_HOST`, `MCP_HTTP_PORT`.

Учтите формат идентификаторов: `cdc_get_dataset_schema` принимает `datasetId` вида `bi63-dtpu`, а графики и карты в каталоге не табличные — запрос к ним падает с `not_queryable`. При постраничном обходе без уникального ключа в `order` порядок строк нестабилен, о чём сервер сам предупреждает в ответе.

## Требования
- Нужно: Node.js (команды через npx)
- Удалённый сервер: `https://cdc.caseyjhand.com/mcp`
- Переменные окружения: `CDC_APP_TOKEN`, `MCP_LOG_LEVEL`, `MCP_TRANSPORT_TYPE`, `MCP_HTTP_HOST`, `MCP_HTTP_PORT`, `MCP_HTTP_ENDPOINT_PATH`, `MCP_AUTH_MODE` — это ключи и токены: значения спроси у человека, в репозиторий и общие файлы не записывай.

## Установка

### Claude Code (родная платформа)

1. **Командой платформы: удалённый сервер**
```bash
claude mcp add --transport http cdc-health-mcp-server https://cdc.caseyjhand.com/mcp
```

2. **Командой платформы**
```bash
claude mcp add --env CDC_APP_TOKEN=<CDC_APP_TOKEN> --env MCP_LOG_LEVEL=<MCP_LOG_LEVEL> --env MCP_TRANSPORT_TYPE=<MCP_TRANSPORT_TYPE> --env MCP_HTTP_HOST=<MCP_HTTP_HOST> --env MCP_HTTP_PORT=<MCP_HTTP_PORT> --transport stdio cdc-health-mcp-server -- npx -y @cyanheads/cdc-health-mcp-server
```
Вместо <…> подставьте свои значения. Ещё 2 переменные окружения — в README сервера

### Codex

1. **Командой платформы: удалённый сервер**
```bash
codex mcp add cdc-health-mcp-server --url https://cdc.caseyjhand.com/mcp
```

2. **Командой платформы**
```bash
codex mcp add cdc-health-mcp-server --env CDC_APP_TOKEN=<CDC_APP_TOKEN> --env MCP_LOG_LEVEL=<MCP_LOG_LEVEL> --env MCP_TRANSPORT_TYPE=<MCP_TRANSPORT_TYPE> --env MCP_HTTP_HOST=<MCP_HTTP_HOST> --env MCP_HTTP_PORT=<MCP_HTTP_PORT> -- npx -y @cyanheads/cdc-health-mcp-server
```
Вместо <…> подставьте свои значения. Ещё 2 переменные окружения — в README сервера

### Cursor

**Файл настроек**
Файл `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "cdc-health-mcp-server": {
            "url": "https://cdc.caseyjhand.com/mcp"
        }
    }
}
```
Файл `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "cdc-health-mcp-server": {
            "command": "npx",
            "args": [
                "-y",
                "@cyanheads/cdc-health-mcp-server"
            ],
            "env": {
                "CDC_APP_TOKEN": "<CDC_APP_TOKEN>",
                "MCP_LOG_LEVEL": "<MCP_LOG_LEVEL>",
                "MCP_TRANSPORT_TYPE": "<MCP_TRANSPORT_TYPE>",
                "MCP_HTTP_HOST": "<MCP_HTTP_HOST>",
                "MCP_HTTP_PORT": "<MCP_HTTP_PORT>"
            }
        }
    }
}
```
Вместо <…> подставьте свои значения. Ещё 2 переменные окружения — в README сервера

### GitHub Copilot

**Файл настроек**
Файл `.vscode/mcp.json`:
```json
{
    "servers": {
        "cdc-health-mcp-server": {
            "type": "http",
            "url": "https://cdc.caseyjhand.com/mcp"
        }
    }
}
```
Файл `.vscode/mcp.json`:
```json
{
    "servers": {
        "cdc-health-mcp-server": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "@cyanheads/cdc-health-mcp-server"
            ],
            "env": {
                "CDC_APP_TOKEN": "<CDC_APP_TOKEN>",
                "MCP_LOG_LEVEL": "<MCP_LOG_LEVEL>",
                "MCP_TRANSPORT_TYPE": "<MCP_TRANSPORT_TYPE>",
                "MCP_HTTP_HOST": "<MCP_HTTP_HOST>",
                "MCP_HTTP_PORT": "<MCP_HTTP_PORT>"
            }
        }
    }
}
```
Вместо <…> подставьте свои значения. Ещё 2 переменные окружения — в README сервера

### Gemini CLI

1. **Командой платформы: удалённый сервер**
```bash
gemini mcp add -t http cdc-health-mcp-server https://cdc.caseyjhand.com/mcp
```

2. **Командой платформы**
```bash
gemini mcp add -e CDC_APP_TOKEN=<CDC_APP_TOKEN> -e MCP_LOG_LEVEL=<MCP_LOG_LEVEL> -e MCP_TRANSPORT_TYPE=<MCP_TRANSPORT_TYPE> -e MCP_HTTP_HOST=<MCP_HTTP_HOST> -e MCP_HTTP_PORT=<MCP_HTTP_PORT> cdc-health-mcp-server npx -y @cyanheads/cdc-health-mcp-server
```
Вместо <…> подставьте свои значения. Ещё 2 переменные окружения — в README сервера

## Когда брать
- найти датасет CDC по ключевому слову или категории
- посмотреть колонки и число строк в таблице перед запросом
- выгрузить смертность по годам, полу и расе из CDC WONDER
- отфильтровать и агрегировать данные каталога через SoQL
- разобрать категории и теги каталога с числом записей

_Часть страницы не вошла по размеру — она есть в HTML-версии._

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
