Сервер MCP BatterySnap
Спрашивайте ИИ-ассистентов об аналитике батареи Android
BatterySnap предоставляет сервер Model Context Protocol, чтобы любой ИИ-ассистент с поддержкой MCP мог по запросу получать бренды, модели и статистику батареи по каждому устройству. Аутентификация не требуется.
http://mcp.battery-snap.com/mcp
Транспорт
streamable-http
Установить в клиенте
Откройте claude_desktop_config.json (Настройки → Разработчик → Редактировать конфиг) и добавьте:
{
"mcpServers": {
"batterysnap": {
"type": "http",
"url": "http://mcp.battery-snap.com/mcp"
}
}
}
Для старых версий без нативного HTTP-транспорта используйте мост mcp-remote:
{
"mcpServers": {
"batterysnap": {
"command": "npx",
"args": ["-y", "mcp-remote", "http://mcp.battery-snap.com/mcp"]
}
}
}
Выполните один раз в терминале:
claude mcp add --transport http batterysnap http://mcp.battery-snap.com/mcp
Создайте ~/.cursor/mcp.json (или отредактируйте) со следующим:
{
"mcpServers": {
"batterysnap": {
"url": "http://mcp.battery-snap.com/mcp"
}
}
}
В librechat.yaml добавьте под mcpServers:
mcpServers:
batterysnap:
type: streamable-http
url: http://mcp.battery-snap.com/mcp
Добавьте в .vscode/mcp.json в вашем рабочем пространстве или в пользовательские настройки:
{
"servers": {
"batterysnap": {
"type": "http",
"url": "http://mcp.battery-snap.com/mcp"
}
}
}
Любой MCP-хост, поддерживающий транспорт streamable-http, может подключиться, указав http://mcp.battery-snap.com/mcp. Метаданные discovery доступны по адресу /.well-known/mcp.json.
Доступные инструменты
brands()Перечисляет все бренды устройств с записями статистики батареи, количество моделей и устройств, а также url страницы бренда на BatterySnap.
models(brand)Перечисляет модели устройств, зафиксированные для указанного бренда, с количеством устройств, средней температурой, диапазоном Android API, репрезентативным сырым идентификатором Build.MODEL (raw_model_code) и url страницы модели на BatterySnap (null, если сырой код модели недоступен).
devices(brand, model)Перечисляет отдельные устройства указанного бренда и модели с агрегатами на устройство: окно активности, уровень заряда, диапазон температуры, скорость зарядки/разрядки, доля активного времени, уровень Android API и url страницы истории устройства на BatterySnap.
device_summary(device_uid)Агрегированные метрики батареи для одного устройства: средняя / мин / макс температура, средний уровень заряда, среднее время зарядки по источнику (сеть, USB, беспроводная) и среднее время разрядки за недавнее (~2 недели) и длинное (~2 месяца) окно, а также доля активного времени, сведения об Android и url страницы истории устройства на BatterySnap.
model_summary(brand, model)Распределение метрик батареи по всем устройствам заданного бренда + модели: среднее, медиана, p25, p75, мин и макс для температуры, уровня заряда, скорости разрядки, скорости зарядки сеть/USB/беспроводная и доли активного времени. Также возвращает репрезентативный raw_model_code и url страницы модели на BatterySnap (null, если сырой код модели недоступен).
fleet_summary(brand?)Те же статистики распределения, что и у model_summary, но по всему парку — или по одному бренду, если задан brand. Полезно как опорная линия для сравнения устройства или модели.
fleet_totals()Живые счётчики по всему парку: общее число устройств, моделей, снапшотов, сессий, скорость поглощения снапшотов (снапшотов/сек) и время последней пакетной вставки. Помогает понять размер набора данных и темп его роста.
top_devices_by_uptime(brand?, model?, limit?)Устройства, отсортированные по самой длительной непрерывной работе между перезагрузками. Необязательные фильтры по бренду и модели. Возвращает короткий список device_uid (с url страницы истории каждого устройства на BatterySnap), который можно передать в device_summary.
top_devices_by_live_uptime(brand?, model?, limit?)Тот же рейтинг, что у top_devices_by_uptime, но только для устройств, время работы которых ещё не было прервано перезагрузкой — оно продолжает расти в реальном времени. Каждая запись также содержит url страницы истории устройства.
Инструменты brands, models и devices также принимают необязательный аргумент fields — передайте список нужных имён атрибутов, чтобы ответы оставались компактными.