Skip to main content
Glama

Rouse Context

Ваш телефон обладает контекстом, которого нет у ИИ — данными о вашем здоровье, уведомлениями, статистикой использования приложений. Rouse Context делает этот контекст доступным для ИИ-ассистентов по запросу, не синхронизируя ваши данные с облаком.

Это Android-приложение, которое превращает ваш телефон в MCP-сервер. ИИ-клиенты, такие как Claude, подключаются к URL, ваш телефон «просыпается», и устанавливается прямое зашифрованное соединение. ИИ запрашивает то, что ему нужно, ваш телефон отвечает, а затем снова переходит в спящий режим. Ваши данные никогда не покидают устройство, кроме как через этот активный сеанс.

Статус: выпущена версия v1.0. Доступно в GitHub Releases. Для получения доступа к бета-версии в Google Play напишите на beta@rousecontext.com. Работает с Claude, Cursor и любым MCP-совместимым клиентом.

Начало работы

  1. Установка — скачайте APK из GitHub Releases и установите его (возможно, потребуется включить «Установка из неизвестных источников» в настройках Android). Или напишите на beta@rousecontext.com для получения доступа к бета-версии в Google Play.

  2. Настройка — откройте приложение, нажмите «Get Started» и предоставьте разрешения на доступ к уведомлениям. Приложение зарегистрируется на ретрансляторе и подготовит TLS-сертификаты вашего устройства (~10 секунд).

  3. Включение интеграции — нажмите «Add Integration» на главном экране. Выберите одну (например, Health Connect), предоставьте запрошенные разрешения, и вы получите URL вида https://brave-health.abc123.rousecontext.com/mcp.

  4. Подключение ИИ-клиента — вставьте этот URL в Claude (Settings → Connectors → Add custom connector), Cursor или любой другой MCP-клиент. Первое подключение вызовет запрос на подтверждение OAuth на вашем телефоне — нажмите «Approve».

  5. Использование — спрашивайте ИИ о данных вашего здоровья, отправляйте себе уведомления, проверяйте экранное время. Каждый вызов инструмента записывается на вкладке «Audit» в приложении.

Related MCP server: Twilio SMS Server

Как это работает

AI Client ──TLS──> Relay (SNI passthrough) ──mux WebSocket (mTLS)──> Your Phone
  1. Вы включаете интеграцию (например, Health Connect) и получаете URL вида https://brave-health.abc123.rousecontext.com/mcp (интеграция идентифицируется префиксом имени хоста; путь всегда /mcp)

  2. Добавьте этот URL в Claude, Cursor или любой другой MCP-клиент

  3. Когда клиент подключается, ретранслятор «будит» ваш телефон через push-уведомление FCM

  4. Ваш телефон подключается обратно через mTLS WebSocket, и ретранслятор объединяет два TLS-потока

  5. ИИ-клиент общается напрямую с вашим телефоном через сквозное зашифрованное TLS-соединение — ретранслятор никогда не видит открытый текст

Сеансы эфемерны. Телефон возвращается в спящий режим, когда клиент отключается.

Интеграции

Каждая интеграция включается независимо и получает собственную MCP-конечную точку с авторизацией OAuth (PKCE). 22 инструмента в 4 интеграциях:

Health Connect (3 инструмента)

Запрос данных Android Health Connect по 36 типам записей в 7 категориях (активность, тело, сон, жизненные показатели, питание, репродуктивное здоровье, осознанность).

Инструмент

Описание

list_record_types

Список типов записей Health Connect со статусом разрешений

query_health_data

Запрос записей по типу и временному диапазону

get_health_summary

Сводка данных о здоровье по разрешенным типам за период

Уведомления (5 инструментов)

Чтение, поиск и взаимодействие с уведомлениями устройства.

Инструмент

Описание

list_active_notifications

Список активных уведомлений

search_notification_history

Поиск в истории уведомлений по тексту, пакету или временному диапазону

get_notification_stats

Статистика уведомлений, топ приложений и самый загруженный час за период

perform_notification_action

Вызов кнопки действия на активном уведомлении

dismiss_notification

Удаление активного уведомления по ключу

Outreach (10 инструментов)

Позвольте ИИ выполнять действия на устройстве — запускать приложения, открывать ссылки, отправлять уведомления, управлять режимом «Не беспокоить».

Инструмент

Описание

launch_app

Запуск установленного приложения по имени пакета

open_link

Открытие http/https URL в приложении по умолчанию

copy_to_clipboard

Копирование текста в буфер обмена

send_notification

Отправка уведомления с дополнительными кнопками действий и URL при нажатии

list_installed_apps

Список установленных приложений

create_notification_channel

Создание канала уведомлений

list_notification_channels

Список каналов уведомлений, созданных ИИ

delete_notification_channel

Удаление канала уведомлений, созданного ИИ

get_dnd_state

Получение состояния режима «Не беспокоить»

set_dnd_state

Установка состояния режима «Не беспокоить»

Статистика использования (4 инструмента)

Паттерны использования приложений и аналитика экранного времени.

Инструмент

Описание

get_usage_summary

Итоговое экранное время и топ приложений за период

get_app_usage

Использование одного приложения по дням

get_usage_events

Необработанные события перехода приложений в фоновый/активный режим за диапазон

compare_usage

Сравнение экранного времени между двумя периодами; сначала самые большие дельты

Архитектура

Android-приложение

Модуль

Назначение

:app

Compose UI, Koin DI, навигация, темы

:core:tunnel

Протокол Mux, WebSocket-клиент, TLS-прием, CertificateStore

:core:mcp

Маршрутизация сеансов MCP, HTTP-сервер, OAuth (код устройства + код авторизации + PKCE), управление токенами

:core:bridge

Соединяет потоки туннеля Mux с сеансами MCP через TLS

:api

Интерфейс McpIntegration, IntegrationStateStore

:integrations

MCP-провайдеры: Health Connect, outreach (звонки/SMS/DND), статистика использования, захват уведомлений

:notifications

Инфраструктура уведомлений, сохранение аудита (Room)

:work

Фоновая служба, приемник FCM, WorkManager

:core:testfixtures

Общие фикстуры для интеграционных тестов, запускающих реальный бинарный файл ретранслятора

Сервер ретрансляции (relay/)

Rust-бинарный файл на небольшом VPS. Обрабатывает:

  • TLS passthrough — направляет соединения ИИ-клиентов к устройствам через SNI, никогда не завершает внутренний TLS

  • Mux WebSocket — мультиплексирует несколько клиентских сеансов через одно соединение с устройством

  • FCM wakeup — отправляет push-уведомления для пробуждения спящих устройств

  • ACME certs — выпускает TLS-сертификаты для каждого устройства через Google Trust Services DNS-01 (Cloudflare API); также поддерживается Let's Encrypt

  • Защита от ботов — секретный префикс URL проверяется перед пробуждением устройства, плюс ограничение частоты FCM и ограничение скорости по IP

Безопасность

  • Сквозное шифрование — TLS завершается на вашем телефоне. Ретранслятор выполняет только SNI passthrough.

  • Без синхронизации с облаком — данные считываются из локальных источников и передаются в реальном времени. Ничего не хранится удаленно.

  • ACME-сертификаты для каждого устройства — сертификаты через Google Trust Services (DNS-01), закрытый ключ в Android Keystore (на аппаратном уровне).

  • mTLS-аутентификация устройства — ретранслятор аутентифицирует устройство по сертификату клиента перед разрешением соединений.

  • Секретный префикс URL — каждый URL устройства включает сменяемый секрет для каждой интеграции (brave-health.abc123.rousecontext.com, где brave-health — это {adjective}-{integrationId}). Боты, обнаружившие поддомен устройства, не смогут разбудить его без секрета.

  • OAuth для каждого клиента — каждый ИИ-клиент должен быть авторизован через подтверждение на устройстве перед доступом к инструментам.

  • Аудиторский след — каждый вызов инструмента записывается локально с аргументами, ответом и длительностью.

Сборка

Android

./gradlew assembleDebug

Требуется Android SDK (compileSdk 36, targetSdk 35, minSdk 24). Для сборки требуется JDK 21 (JAVA_HOME=/usr/lib/jvm/java-21-openjdk).

Отчет о покрытии

./gradlew koverHtmlReport

Агрегирует покрытие строк и веток во всех модульных юнит-тестах и уровне :core:tunnel:integrationTest (реальный подпроцесс ретранслятора). HTML-отчет находится в build/reports/kover/html/index.html. CI публикует тот же отчет как артефакт test-coverage плюс сводку по модулям в каждом PR.

Ретранслятор

cd relay
cargo build --release

Сквозные тесты (E2E)

E2E-тесты управляют реальным устройством через adb с хоста (обычно в локальной сети), на котором запущен adb. Системное свойство adb.host обязательно и по умолчанию пустое — задача :e2e:e2eTest завершается с ошибкой, если оно не задано. Серийный номер устройства необязателен и нужен только если к этому хосту подключено несколько устройств.

./gradlew :e2e:e2eTest \
    -Dadb.host=<your-dev-host> \
    -Dadb.serial=<your-device-serial>

Модуль :device-tests имеет отдельный раннер, который собирает APK, указывающий на локально запущенный ретранслятор. Также требуется LAN IP, доступный с устройства:

./gradlew :device-tests:test -Dlan.ip=<your-lan-ip>

Без lan.ip тесты устройства корректно пропускаются через предположения JUnit.

Статус

Версия v1.0 выпущена. 22 инструмента в 4 интеграциях, пробуждение из холодного старта за ~3 секунды, сквозное шифрование. Подробную документацию по дизайну и политику конфиденциальности см. в docs/design/.

Лицензия

Лицензировано по лицензии Apache License, версии 2.0. Подробности см. в файле LICENSE.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

No tool schema history has been recorded yet.

Maintenance

ActivityActive
ResponsivenessResponsive

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    A Model Context Protocol (MCP) server that enables AI assistants to control and interact with Android devices, allowing for device management, app debugging, system analysis, and UI automation through natural language commands.
    8
    430
    Apache 2.0
  • A
    license
    B
    quality
    A
    maintenance
    A local-first MCP server that enables AI agents to read user-authorized Google Health API v4 data from Fitbit, Pixel Watch, and partners via OAuth, with tokens never leaving the machine.
    26
    1,097
    53
    MIT

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/Monkopedia/rouse-context'

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