Senechal MCP Server

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Supports environment variable configuration through .env files for storing API keys and base URLs required to connect to the Senechal health data API.

  • Uses Python for implementing the server, with specific instructions for creating virtual environments and running the server through Python commands.

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

Instalación

  1. Clonar este repositorio
  2. Crear un entorno virtual:
    python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate
  3. Instalar dependencias:
    pip install -r requirements.txt

Configuración

Copie el archivo .env.example a .env y agregue su clave API y URL de Senechal:

# Required: Senechal API Key SENECHAL_API_KEY=your_api_key_here # Required: API base URL SENECHAL_API_BASE_URL=https://your-api-host/api/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:

  1. Utilice barras invertidas o rutas de escape adecuadas en la configuración
  2. Utilice la ruta completa a su entorno virtual de Python en claude-desktop-config.json:
{ "mcpServers": { "senechal-health": { "command": "C:\\path\\to\\venv\\Scripts\\python.exe", "args": [ "C:\\path\\to\\senechal_mcp_server.py" ], "env": { "SENECHAL_API_KEY": "your_api_key_here" } } } }

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:

# In one terminal, start the server python senechal_mcp_server.py # In another terminal, run the example client python example_client.py

Iniciar el servidor

python senechal_mcp_server.py

Modo de desarrollo con MCP Inspector

mcp dev senechal_mcp_server.py

Instalar en Claude Desktop

El servidor incluye un archivo de configuración para Claude Desktop:

mcp install senechal_mcp_server.py

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ño
    • Ejemplo: senechal://health/summary/day?span=7&metrics=all
    • Parámetros:
      • period : día, semana, mes, año
      • span : 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 usuario
    • Contiene datos demográficos, medicamentos y suplementos.
  • senechal://health/current - Obtenga mediciones de salud actuales
    • Ejemplo: senechal://health/current?types=1,2,3
    • Pará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 tiempo
    • Ejemplo: senechal://health/trends?days=30&types=1,2,3&interval=day
    • Parámetros:
      • days : Número de días a analizar (predeterminado: 30)
      • types : lista opcional separada por comas de identificaciones de tipos de medición
      • interval : Intervalo de agrupación: día, semana, mes (predeterminado: día)
  • senechal://health/stats - Obtenga análisis estadísticos de métricas de salud
    • Ejemplo: senechal://health/stats?days=30&types=1,2,3
    • Pará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ífico
    • Parámetros:
      • period (obligatorio): día, semana, mes, año
      • metrics (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 usuario
    • No se requieren parámetros
  • fetch_current_health - Obtener las últimas mediciones de salud
    • Parámetros:
      • types (opcional): Lista de identificaciones de tipos de medición para filtrar por
  • fetch_health_trends - Obtener datos de tendencias de salud
    • Parámetros:
      • days (opcional): Número de días a analizar (predeterminado: 30)
      • types (opcional): Lista de identificaciones de tipos de medición para filtrar por
      • interval (opcional): intervalo de agrupación: día, semana, mes (predeterminado: día)
  • fetch_health_stats : obtiene análisis estadísticos de métricas de salud
    • Pará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 salud
    • Proporciona 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 tiempo
    • Proporciona 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

# In an LLM application, load a week of health summaries content, mime_type = await session.read_resource("senechal://health/summary/day?span=7")

Llamadas a herramientas de datos de salud

# In an LLM conversation result = await session.call_tool( "fetch_health_trends", arguments={ "days": 30, "interval": "day" } ) # More complex example combining tools and resources profile = await session.call_tool("fetch_health_profile") trends = await session.call_tool( "fetch_health_trends", arguments={"days": 90, "interval": "week"} )

Uso de indicaciones de análisis de salud

# Get a prompt for analyzing health data prompt_result = await session.get_prompt("analyze_health_summary") for message in prompt_result.messages: print(f"[{message.role}]: {message.content.text}")

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
-
security - not tested
A
license - permissive license
-
quality - not tested

Un servidor de protocolo de contexto de modelo que proporciona datos de salud desde la API de Senechal a las aplicaciones LLM, lo que permite que los asistentes de IA accedan, analicen y respondan a la información de salud personal.

  1. Overview
    1. Installation
      1. Configuration
        1. Windows Configuration
      2. Usage
        1. Testing the Client/Server Setup
        2. Start the Server
        3. Development Mode with MCP Inspector
        4. Install in Claude Desktop
      3. Available Resources
        1. Available Tools
          1. Available Prompts
            1. Example Interactions
              1. Loading Health Summary Data
              2. Calling Health Data Tools
              3. Using Health Analysis Prompts
            2. API Endpoints
              ID: u1e97fslpi