nightscout-mcp
nightscout-mcp
Сервер MCP только для чтения, который предоставляет ваши данные Nightscout в Claude.
Спросите «что у меня с глюкозой?», «каким был мой диапазон на этой неделе?» или «сколько инсулина ещё активно?» — и получите ответ на основе ваших собственных данных.
Не медицинское устройство. Это представление ваших данных только для чтения. Не принимайте решений о лечении на его основе. Подтверждайте всё, что имеет значение, по данным CGM, помпы и врача. Показания могут быть устаревшими, отсутствовать или быть неверными, а LLM может их неправильно интерпретировать.
Как это выглядит
Вы: что делала моя глюкоза ночью за последние две недели?
Claude: (вызывает
glucose_patterns)У вас стабильно низкие показатели в ранние часы — не разово, а как закономерность:
час
медиана
% ниже 70
01:00
112
4%
02:00
94
18%
03:00
77
31%
04:00
89
22%
05:00
108
9%
03:00 — худший час вашего дня с большим отрывом: примерно одна ночь из трёх в это время опускается ниже 70, и к 05:00 уровень восстанавливается сам. Такую картину стоит показать тому, кто управляет вашими базальными скоростями.
Вы: что-нибудь нужно скоро изменить?
Claude: (вызывает
get_site_agesиget_device_status)Сенсору 9 дней, так что он истекает примерно через день. Канюля — 2 дня. Резервуар помпы показывает 18 единиц, а батарея помпы — 22%. Вот это я бы решил сегодня вечером, а не завтра.
(Иллюстративные цифры, не чьи-то реальные данные.)
Related MCP server: T1D Manager
Инструменты
Сейчас
Инструмент | Возвращает |
| Последнее показание, направление тренда и его давность |
| Показания за последние N часов (по умолчанию 3) |
| Активный инсулин и углеводы на борту (Loop/AAPS) |
| Резервуар и батарея помпы, батарея аплоадера, состояние цикла |
| Возраст канюли, сенсора, инсулина и батареи помпы |
За период
Инструмент | Возвращает |
| Низкий / в диапазоне / высокий, среднее, GMI, CV% (по умолчанию 24ч) |
| Глюкоза по часам суток — когда у вас реально низкие или высокие показатели |
| Последние N дней против предыдущих N, с дельтами |
| Болюсы, углеводы и смены мест (по умолчанию 12ч) |
Справочно
Инструмент | Возвращает |
| Базальные скорости, ISF, углеводный коэффициент, цели |
| Версия Nightscout и настроенные пороги |
glucose_patterns — тот, который стоит знать. «Что у меня с глюкозой» — вопрос, на который уже отвечает график; «в какое время суток у меня стабильно низкие показатели» — на него график не отвечает, и именно это модель хорошо умеет вычленять из двух недель показаний. Часы группируются в часовом поясе вашего профиля Nightscout, так что 3 часа ночи — это ваши 3 часа ночи.
Инструментов для записи нет. Сервер не может ничего изменить в Nightscout.
Сознательно не раскрыто
Предпросмотр болюсного мастера Nightscout (bwp) возвращает предлагаемое количество инсулина. Его отображение превратило бы это из инструмента, показывающего ваши данные, в инструмент, предлагающий лечение, — совсем другое дело, как для вас, так и для регулирования такого ПО. То же касается всего, что вычисляет коррекцию. Каждый инструмент здесь — только чтение.
Безопасность
Этот сервер передаёт личные медицинские данные через публичный интернет, поэтому настройки по умолчанию намеренно строгие:
Требуется bearer-токен, и сервер отказывается запускаться без него. Нет режима «без аутентификации, если забыл переменную» — это тот сбой, который развёртывание не замечает.
Минимальные привилегии на стороне источника. Он читает Nightscout с читаемым токеном доступа, никогда не используя административный
API_SECRET. Даже полная компрометация этого сервера не позволит записать что-либо в ваш Nightscout.Сравнение токенов за постоянное время, чтобы по времени ответа нельзя было восстановить bearer посимвольно.
Ошибки очищаются. Nightscout аутентифицируется через параметр запроса, поэтому токен находится в URL запроса; ошибки вышестоящего сервиса перевыбрасываются с указанием только пути и статуса, не допуская попадания учётных данных в логи и видимые клиенту ошибки.
Пересылаемые заголовки доверяются только прокси, которые вы указали, через
TRUSTED_PROXY_IPS. Если не задано — не доверять никому.Работает от непривилегированного пользователя в контейнере.
/health — единственный маршрут без аутентификации. Он возвращает фиксированный {"ok": true} и ничего не читает.
Настройка
1. Создайте токен Nightscout только для чтения
В Nightscout: Admin Tools → Subjects → Add. Дайте ему только роль readable. Вы получите токен вида claude-1a2b3c4d5e6f7890.
Не используйте свой API_SECRET. Здесь ничего не записывается, так что предоставление прав на запись ничего вам не даёт, но стоит всего, если токен утечёт.
2. Настройка
cp .env.example .env
# edit .env — at minimum NS_URL, NS_TOKEN, MCP_BEARERСгенерируйте bearer с помощью чего-то, что вы не придумали сами:
python3 -c "import secrets; print(secrets.token_urlsafe(32))"3. Запуск
docker build -t nightscout-mcp .
docker run -d --name nightscout-mcp --env-file .env -p 8787:8787 nightscout-mcpИли без Docker:
pip install -r requirements.txt
set -a && source .env && set +a
python server.py4. Разместите за HTTPS
Сервер говорит по обычному HTTP и ожидает, что TLS завершается перед ним (Traefik, Caddy, nginx, Cloudflare Tunnel — что угодно). Claude подключается с серверов Anthropic, а не с вашего устройства, поэтому URL должен быть доступен из публичного интернета.
Если ваш прокси устанавливает X-Forwarded-*, укажите его:
TRUSTED_PROXY_IPS=172.18.0.0/165. Подключите к Claude
В Claude: Customize → Connectors → Add custom connector
URL:
https://your-host.example.com/mcp/Откройте Request headers, добавьте
authorizationсо значениемBearer <ваш MCP_BEARER>
Введите значение, включая слово Bearer и пробел — Claude отправляет заголовок как есть и не добавляет своего префикса.
Аутентификация через заголовок запроса — бета-функция Claude. Если вы не видите раздел Request headers, запросите доступ у Anthropic. Claude Code может использовать этот же сервер уже сегодня через свою собственную конфигурацию MCP.
Единицы измерения
NS_UNITS=mg/dl (по умолчанию) или mmol. Это влияет только на представление значений; Nightscout всегда читается в мг/дл и конвертируется на выходе.
Отношение к Nightscout
Это независимый проект. Он не аффилирован с Nightscout Foundation, не одобрен им и не является его частью.
Сам Nightscout (cgm-remote-monitor) распространяется под лицензией AGPL-3.0. Этот сервер не содержит кода Nightscout и не подключает библиотек Nightscout — он только делает HTTP-запросы к REST API работающего экземпляра. Потребление API на расстоянии не создаёт производного произведения, а сетевое условие AGPL обусловлено модификацией покрываемой программы, чего здесь не происходит. Поэтому копилефт Nightscout не распространяется на этот проект, и он лицензирован отдельно.
Если вы форкнете этот проект и включите в него какой-либо исходный код Nightscout, эти рассуждения перестанут применяться к вашему форку.
Лицензия
MIT — см. LICENSE.
Выбор сделан в пользу доступности: это небольшой коннектор, ценность которого в том, что любой может запустить его за десять минут. Копилефт никого не защитил бы в типичном случае, а типичный случай — это один человек, размещающий его для своих собственных данных.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- FlicenseAqualityDmaintenanceEnables AI assistants to query glucose data from health storage APIs, providing natural language access to glucose readings, trends, and statistics for diabetes management and health monitoring.3
- FlicenseNot gradedqualityDmaintenanceEnables Type 1 diabetes patients and caregivers to monitor real-time blood glucose from Dexcom Share, calculate insulin doses, and receive empathetic AI-powered sick day care guidance through natural language interactions.1
- AlicenseNot gradedqualityCmaintenanceConnects AI assistants to Nightscout for real-time glucose monitoring, analysis, and treatment logging, enabling natural language interaction with CGM data.4MIT
- AlicenseBqualityDmaintenanceEnables AI assistants to access and analyze Continuous Glucose Monitor (CGM) data from Nightscout, providing real-time readings, history, and analytics.71MIT
Related MCP Connectors
Glucose readings from your LibreLink Up sensor: graph, logbook, stats and summaries (read-only). Sec
GibsonAI MCP server: manage your databases with natural language
Ask your app anything — revenue, errors, read-cost, growth — and get rendered charts back.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/oliver-virt/nightscout-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server