Skip to main content
Glama
neiltron

Apple Health MCP Server

Apple Health MCP Server

npm version License: MIT

Запрашивайте данные Apple Health из MCP-клиента с помощью SQL и DuckDB. Сервер работает локально, читает CSV-экспорты по требованию и предоставляет инструменты для обнаружения схемы, запросов только для чтения и сводок по здоровью.

Требования

  • Node.js 22 или новее

  • CSV-экспорт Apple Health, созданный с помощью Simple Health Export CSV

Собственный формат export.xml Apple Health в настоящее время не поддерживается.

Related MCP server: apple-mcp

Настройка MCP-клиента

Для Claude Desktop добавьте следующее в ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "apple-health": {
      "command": "npx",
      "args": ["-y", "@neiltron/apple-health-mcp"],
      "env": {
        "HEALTH_DATA_DIR": "/path/to/your/unzipped/health-export"
      }
    }
  }
}

Перезапустите клиент после изменения его конфигурации. Другие MCP-клиенты могут использовать ту же команду, аргументы, окружение и транспорт stdio.

Переменные окружения

Переменная

Обязательная

По умолчанию

Назначение

HEALTH_DATA_DIR

Да

Каталог с экспортированными CSV-файлами

MAX_MEMORY_MB

Нет

2048

Лимит памяти DuckDB в мегабайтах

CACHE_SIZE

Нет

100

Максимальное количество кэшированных результатов запросов

Экспорт данных о здоровье

  1. Установите и откройте Simple Health Export CSV на вашем iPhone.

  2. Выберите Все и укажите диапазон времени для экспорта.

  3. Перенесите архив на компьютер, где работает ваш MCP-клиент.

  4. Распакуйте его и установите HEALTH_DATA_DIR в получившийся каталог.

Сервер читает файлы на месте. Он не загружает экспорт и не выполняет сетевых запросов, хотя результаты запросов, возвращаемые вашему MCP-клиенту, могут быть отправлены поставщику модели, настроенному для этого клиента.

Инструменты

Инструмент

Назначение

health_schema

Обнаружение имён таблиц, столбцов, единиц измерения и примеров строк

health_query

Выполнение запроса SELECT только для чтения с выводом JSON, CSV или сводки

health_report

Создание еженедельной, ежемесячной или пользовательской сводки по здоровью

Начните с health_schema; имена таблиц зависят от файлов в вашем экспорте. См. Запросы к данным Apple Health для модели данных и рабочих примеров.

История и память

Первый запрос, которому нужна таблица, загружает полную CSV-историю этой таблицы. Окно дат отсутствует, поэтому запрос может охватывать всю историю экспорта.

Поскольку каждый инструмент может получить доступ ко всей настроенной истории, запускайте этот сервер только из MCP-клиента, которому вы доверяете эти данные.

Загруженные таблицы хранятся в памяти, и DuckDB получает лимит MAX_MEMORY_MB, описанный выше. Примерно 1 ГиБ покрывает двухлетний многотабличный экспорт, поэтому значение по умолчанию 2048 МБ оставляет запас; увеличьте MAX_MEMORY_MB для более крупного экспорта. Сервер никогда не сбрасывает строки здоровья во временный каталог на диске, поэтому экспорт, не помещающийся в лимит, завершается явной ошибкой.

Другие текущие ограничения:

  • Поддерживается только структура CSV от Simple Health Export.

  • База данных DuckDB находится в памяти и пересоздаётся для каждого процесса сервера, поэтому каждый запуск перезагружает данные из CSV-файлов. Постоянный инкрементальный импорт запланирован как будущая работа, а не текущее поведение.

  • Перекрытие устройств может приводить к появлению похожих измерений; запросы должны учитывать sourceName там, где это уместно.

  • Сводки по здоровью обобщают записанные данные и не являются медицинскими рекомендациями.

Разработка

git clone https://github.com/neiltron/apple-health-mcp.git
cd apple-health-mcp
bun install

npm test
npm run typecheck
npm run build

См. Архитектура для структуры кода, жизненного цикла данных и ограничений реализации.

Лицензия

MIT

Install Server
A
license - permissive license
A
quality
A
maintenance

Maintenance

Maintainers
23hResponse time
8wRelease cycle
5Releases (12mo)
Commit activity
Issues opened vs closed

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • GibsonAI MCP server: manage your databases with natural language

  • MCP server for Withings health data — sleep, activity, heart, and body metrics.

  • Hosted MCP server exposing US hospital procedure cost data to AI assistants

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/neiltron/apple-health-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server