Servidor MCP de Senechal
Un servidor de Protocolo de Contexto de Modelo (MCP) que actúa como complemento del proyecto Senechal, proporcionando datos de salud desde la API de Senechal a las aplicaciones LLM.
Descripción general
Este servidor proporciona una interfaz estandarizada para que los LLM accedan a los datos de salud desde la API de Senechal. Expone:
Recursos : Datos de salud que se pueden cargar en el contexto de un LLM
Herramientas : Funciones que los LLM pueden llamar para obtener datos de salud
Indicaciones : Plantillas reutilizables para analizar datos de salud
Related MCP server: OpenAPI MCP Server
Instalación
Clonar este repositorio
Crear un entorno virtual:
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activateInstalar dependencias:
pip install -r requirements.txt
Configuración
Copie el archivo .env.example a .env y agregue su clave API y URL de Senechal:
Tanto la clave API como la URL API son necesarias para que el servidor funcione.
Configuración de Windows
Al ejecutar en Windows, asegúrese de:
Utilice barras invertidas o rutas de escape adecuadas en la configuración
Utilice la ruta completa a su entorno virtual de Python en claude-desktop-config.json:
Tenga en cuenta que las variables de entorno en la configuración de MCP no utilizan el archivo .env , por lo que deberá configurarlas explícitamente en la configuración.
Uso
Prueba de la configuración cliente/servidor
La forma más sencilla de probar la configuración es ejecutar el cliente de ejemplo:
Iniciar el servidor
Modo de desarrollo con MCP Inspector
Instalar en Claude Desktop
El servidor incluye un archivo de configuración para Claude Desktop:
Luego puede seleccionar “Senechal Health” en el menú de herramientas en Claude Desktop.
Recursos disponibles
senechal://health/summary/{period}- Obtenga un resumen de salud por día, semana, mes o añoEjemplo:
senechal://health/summary/day?span=7&metrics=allParámetros:
period: día, semana, mes, añospan: Número de períodos (predeterminado: 1)metrics: Lista separada por comas o "todos" (predeterminado)offset: Número de períodos a compensar a partir de ahora (predeterminado: 0)
senechal://health/profile- Obtener el perfil de salud del usuarioContiene datos demográficos, medicamentos y suplementos.
senechal://health/current- Obtenga mediciones de salud actualesEjemplo:
senechal://health/current?types=1,2,3Parámetros:
types: lista opcional separada por comas de identificaciones de tipos de medición
senechal://health/trends- Conozca las tendencias de salud a lo largo del tiempoEjemplo:
senechal://health/trends?days=30&types=1,2,3&interval=dayParámetros:
days: Número de días a analizar (predeterminado: 30)types: lista opcional separada por comas de identificaciones de tipos de medicióninterval: Intervalo de agrupación: día, semana, mes (predeterminado: día)
senechal://health/stats- Obtenga análisis estadísticos de métricas de saludEjemplo:
senechal://health/stats?days=30&types=1,2,3Parámetros:
days: Periodo de análisis en días (predeterminado: 30)types: lista opcional separada por comas de identificaciones de tipos de medición
Herramientas disponibles
fetch_health_summary- Obtener un resumen de salud para un período específicoParámetros:
period(obligatorio): día, semana, mes, añometrics(opcional): Métricas separadas por comas o "todas" (predeterminado)span(opcional): Número de períodos a devolver (predeterminado: 1)offset(opcional): Número de períodos a compensar (predeterminado: 0)
fetch_health_profile- Obtener el perfil de salud del usuarioNo se requieren parámetros
fetch_current_health- Obtener las últimas mediciones de saludParámetros:
types(opcional): Lista de identificaciones de tipos de medición para filtrar por
fetch_health_trends- Obtener datos de tendencias de saludParámetros:
days(opcional): Número de días a analizar (predeterminado: 30)types(opcional): Lista de identificaciones de tipos de medición para filtrar porinterval(opcional): intervalo de agrupación: día, semana, mes (predeterminado: día)
fetch_health_stats: obtiene análisis estadísticos de métricas de saludParámetros:
days(opcional): Período de análisis en días (predeterminado: 30)types(opcional): Lista de identificaciones de tipos de medición para filtrar por
Indicaciones disponibles
analyze_health_summary: solicitud para analizar resúmenes de saludProporciona una plantilla para identificar métricas anormales, tendencias y sugerir acciones.
Destinado a ser utilizado con datos de
senechal://health/summary/day?span=7
compare_health_trends: solicitud para comparar tendencias de salud en diferentes períodos de tiempoProporciona una plantilla para comparar tendencias en diferentes períodos de tiempo (7, 30, 90 días)
Diseñado para usarse con datos del punto final de tendencias de salud
Ejemplos de interacciones
Cargando datos de resumen de salud
Llamadas a herramientas de datos de salud
Uso de indicaciones de análisis de salud
Consulte el archivo example_client.py para obtener un ejemplo completo y funcional.
Puntos finales de API
El servidor Senechal MCP se comunica con los siguientes puntos finales de API de Senechal:
/health/summary/{period}- Obtener resúmenes de salud/health/profile- Obtener perfil de salud/health/current- Obtener mediciones actuales/health/trends- Conozca las tendencias de salud/health/stats- Obtener estadísticas de salud