Rouse Context
Rouse Context
Tu teléfono tiene un contexto que la IA no tiene: tus datos de salud, tus notificaciones, el uso de tus aplicaciones. Rouse Context pone ese contexto a disposición de los asistentes de IA bajo demanda, sin sincronizar nunca tus datos con la nube.
Es una aplicación de Android que convierte tu teléfono en un servidor MCP. Los clientes de IA como Claude se conectan a una URL, tu teléfono se activa y se establece una sesión cifrada directa. La IA solicita lo que necesita, tu teléfono responde y luego vuelve a entrar en reposo. Tus datos nunca abandonan tu dispositivo excepto a través de esa sesión en vivo.
Estado: v1.0 lanzada. Disponible en GitHub Releases. Para acceso a la versión beta de Google Play, envía un correo a
beta@rousecontext.com. Funciona con Claude, Cursor y cualquier cliente compatible con MCP.
Primeros pasos
Instalar — descarga el APK desde GitHub Releases e instálalo manualmente (es posible que debas habilitar "Instalar desde fuentes desconocidas" en la configuración de tu Android). O envía un correo a
beta@rousecontext.compara obtener acceso a la versión beta de Google Play.Configurar — abre la aplicación, toca "Get Started" (Empezar), concede los permisos de notificación. La aplicación se registra en el relé y aprovisiona los certificados TLS de tu dispositivo (~10 segundos).
Habilitar una integración — toca "Add Integration" (Añadir integración) en la pantalla de inicio. Elige una (por ejemplo, Health Connect), concede los permisos solicitados y obtendrás una URL como
https://brave-health.abc123.rousecontext.com/mcp.Conecta tu cliente de IA — pega esa URL en Claude (Settings → Connectors → Add custom connector), Cursor o cualquier cliente MCP. La primera conexión activará una aprobación OAuth en tu teléfono: toca "Approve" (Aprobar).
Úsalo — pregúntale a la IA sobre tus datos de salud, envíate una notificación, comprueba tu tiempo de pantalla. Cada llamada a una herramienta se registra en la pestaña de auditoría de la aplicación.
Related MCP server: fitbit-mcp
Cómo funciona
AI Client ──TLS──> Relay (SNI passthrough) ──mux WebSocket (mTLS)──> Your PhoneHabilitas una integración (por ejemplo, Health Connect) y obtienes una URL como
https://brave-health.abc123.rousecontext.com/mcp(la integración se identifica mediante el prefijo del nombre de host; la ruta es siempre/mcp)Añade esa URL a Claude, Cursor o cualquier cliente MCP
Cuando el cliente se conecta, el relé activa tu teléfono mediante una notificación push FCM
Tu teléfono se conecta de vuelta a través de un WebSocket mTLS, y el relé empalma ambos flujos TLS
El cliente de IA habla directamente con tu teléfono a través de TLS cifrado de extremo a extremo; el relé nunca ve el texto plano
Las sesiones son efímeras. El teléfono vuelve a entrar en reposo cuando el cliente se desconecta.
Integraciones
Cada integración se habilita de forma independiente y obtiene su propio punto final MCP con autorización OAuth (PKCE). 22 herramientas en 4 integraciones:
Health Connect (3 herramientas)
Consulta datos de Android Health Connect en 36 tipos de registros en 7 categorías (actividad, cuerpo, sueño, constantes vitales, nutrición, reproductiva, atención plena).
Herramienta | Descripción |
| Lista los tipos de registros de Health Connect con estado de permiso |
| Consulta registros por tipo y rango de tiempo |
| Resumen de salud en los tipos permitidos para un período |
Notificaciones (5 herramientas)
Lee, busca e interactúa con las notificaciones del dispositivo.
Herramienta | Descripción |
| Lista las notificaciones publicadas |
| Busca en el historial de notificaciones por texto, paquete o rango de tiempo |
| Recuento de notificaciones, aplicaciones principales y hora de mayor actividad para un período |
| Invoca un botón de acción en una notificación activa |
| Descarta una notificación activa por clave |
Alcance (10 herramientas)
Permite que la IA realice acciones en el dispositivo: iniciar aplicaciones, abrir enlaces, enviar notificaciones, gestionar el modo "No molestar".
Herramienta | Descripción |
| Inicia una aplicación instalada por nombre de paquete |
| Abre una URL http/https en la aplicación predeterminada |
| Copia texto al portapapeles |
| Publica una notificación con botones de acción opcionales y URL para abrir al tocar |
| Lista las aplicaciones instaladas |
| Crea un canal de notificaciones |
| Lista los canales de notificación creados por la IA |
| Elimina un canal de notificación creado por la IA |
| Obtiene el estado de "No molestar" |
| Establece el estado de "No molestar" |
Estadísticas de uso (4 herramientas)
Patrones de uso de aplicaciones y análisis de tiempo de pantalla.
Herramienta | Descripción |
| Totales de tiempo de pantalla y aplicaciones principales para un período |
| Uso diario por aplicación |
| Eventos brutos de primer plano/segundo plano de aplicaciones en un rango |
| Compara el tiempo de pantalla entre dos períodos; las mayores diferencias primero |
Arquitectura
Aplicación Android
Módulo | Propósito |
| Interfaz Compose, Koin DI, navegación, temas |
| Protocolo Mux, cliente WebSocket, aceptación TLS, CertificateStore |
| Enrutamiento de sesiones MCP, servidor HTTP, OAuth (código de dispositivo + código de autorización + PKCE), gestión de tokens |
| Puentea flujos mux de túnel a sesiones MCP mediante TLS |
| Interfaz |
| Proveedores MCP: Health Connect, alcance (llamadas/SMS/DND), estadísticas de uso, captura de notificaciones |
| Infraestructura de notificaciones transversal, persistencia de auditoría (Room) |
| Servicio en primer plano, receptor FCM, WorkManager |
| Fixtures compartidos para pruebas de nivel de integración que inician el binario del relé real |
Servidor de relé (relay/)
Binario Rust en un VPS pequeño. Maneja:
TLS passthrough — enruta las conexiones de clientes de IA a los dispositivos mediante SNI, nunca termina el TLS interno
Mux WebSocket — multiplexa múltiples sesiones de cliente sobre una conexión de dispositivo
Activación FCM — envía notificaciones push para activar dispositivos en reposo
Certificados ACME — emite certificados TLS por dispositivo mediante Google Trust Services DNS-01 (API de Cloudflare); Let's Encrypt también es compatible
Protección contra bots — prefijo de URL secreto validado antes de activar el dispositivo, además de limitación de FCM y limitación de tasa por IP
Seguridad
Cifrado de extremo a extremo — el TLS termina en tu teléfono. El relé solo realiza passthrough SNI.
Sin sincronización en la nube — los datos se leen de fuentes en el dispositivo y se sirven en vivo. Nada se almacena de forma remota.
Certificados ACME por dispositivo — certificados por dispositivo mediante Google Trust Services (DNS-01), clave privada en Android Keystore (respaldada por hardware).
Autenticación de dispositivo mTLS — el relé autentica el dispositivo mediante certificado de cliente antes de permitir conexiones.
Prefijo de URL secreto — cada URL de dispositivo incluye un secreto rotativo por integración (
brave-health.abc123.rousecontext.com, dondebrave-healthes{adjetivo}-{id_integración}). Los bots que descubren el subdominio del dispositivo no pueden activarlo sin el secreto.OAuth por cliente — cada cliente de IA debe ser autorizado mediante aprobación en el dispositivo antes de acceder a las herramientas.
Pista de auditoría — cada invocación de herramienta se registra localmente con argumentos, respuesta y duración.
Construcción
Android
./gradlew assembleDebugRequiere Android SDK (compileSdk 36, targetSdk 35, minSdk 24). La construcción requiere JDK 21 (JAVA_HOME=/usr/lib/jvm/java-21-openjdk).
Informe de cobertura
./gradlew koverHtmlReportAgrega la cobertura de líneas y ramas en todas las pruebas unitarias de los módulos y el nivel :core:tunnel:integrationTest (subproceso de relé real). El HTML se genera en build/reports/kover/html/index.html. CI publica el mismo informe como un artefacto test-coverage además de un resumen por módulo en cada PR.
Relé
cd relay
cargo build --releasePruebas de extremo a extremo
Las pruebas e2e controlan un dispositivo real a través de adb mediante un host (normalmente local en la LAN) que ejecuta adb. La propiedad del sistema adb.host es obligatoria y está vacía por defecto; la tarea :e2e:e2eTest falla rápidamente si no se establece. El número de serie del dispositivo es opcional y solo es necesario si hay varios dispositivos conectados a ese host.
./gradlew :e2e:e2eTest \
-Dadb.host=<your-dev-host> \
-Dadb.serial=<your-device-serial>El módulo :device-tests tiene un ejecutor separado que construye un APK apuntando a un relé que se ejecuta localmente. También requiere una IP de LAN accesible desde el dispositivo:
./gradlew :device-tests:test -Dlan.ip=<your-lan-ip>Sin lan.ip, las pruebas de dispositivo se omiten limpiamente mediante las suposiciones de JUnit.
Estado
v1.0 lanzada. 22 herramientas en 4 integraciones, activación en frío en ~3 segundos, cifrado de extremo a extremo. Consulta docs/design/ para obtener documentos de diseño detallados y la política de privacidad.
Licencia
Licenciado bajo la Licencia Apache, Versión 2.0. Consulta LICENSE para más detalles.
This server cannot be deployed
Maintenance
Related MCP Connectors
Give your AI agent a memory and body on your iPhone: set alarms, ring your phone, over MCP.
Melaya is a remote MCP server. It gives an assistant hands on your own Android phone and browser: it reads the screen through the accessibility tree, then taps, types and navigates inside the apps and sites you allow-list, with no per-app API. It also builds, schedules and runs agent pipelines across 6k+ connected tools. OAuth 2.1, nothing to install.
Governed personal world model and memory for your AI agent. Pair once, connect over MCP.
Markdown-based note-taking with a hosted MCP server. Your notes serve you and your AI.
Related MCP Servers
- AlicenseBqualityDmaintenanceEnables AI assistants to send SMS messages via Twilio through the Model Context Protocol or a standalone REST API. It supports standard messaging, automated greetings, and creative content generation using natural language.122 npmMIT
- AlicenseAqualityAmaintenanceMCP server for the Fitbit Web API with OAuth PKCE, local cache, and trend analysis.1837 PyPI2GPL 3.0
- AlicenseBqualityAmaintenanceA 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.26604 npm64MIT
- AlicenseAqualityAmaintenanceMCP server that gives AI agents full vision and control over Android devices via ADB and scrcpy. Supports screenshots, input, apps, UI automation, shell, files, and clipboard.38278 npm109MIT