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
Senechal MCP Server
A Model Context Protocol (MCP) server that acts as a companion to the Senechal project, providing health data from the Senechal API to LLM applications.
Overview
This server provides a standardized interface for LLMs to access health data from the Senechal API. It exposes:
- Resources: Health data that can be loaded into an LLM's context
- Tools: Functions that can be called by LLMs to fetch health data
- Prompts: Reusable templates for analyzing health data
Installation
- Clone this repository
- Create a virtual environment:
- Install dependencies:
Configuration
Copy the .env.example
file to .env
and add your Senechal API key and URL:
Both the API key and API URL are required for the server to function.
Windows Configuration
When running on Windows, be sure to:
- Use backslashes or properly escaped paths in the configuration
- Use the full path to your Python virtual environment in the claude-desktop-config.json:
Note that environment variables in the MCP configuration do not use the .env
file, so you'll need to set them explicitly in the config.
Usage
Testing the Client/Server Setup
The simplest way to test the setup is to run the example client:
Start the Server
Development Mode with MCP Inspector
Install in Claude Desktop
The server includes a configuration file for Claude Desktop:
You can then select "Senechal Health" from the tools menu in Claude Desktop.
Available Resources
senechal://health/summary/{period}
- Get health summary for day, week, month, or year- Example:
senechal://health/summary/day?span=7&metrics=all
- Parameters:
period
: day, week, month, yearspan
: Number of periods (default: 1)metrics
: Comma-separated list or "all" (default)offset
: Number of periods to offset from now (default: 0)
- Example:
senechal://health/profile
- Get the user's health profile- Contains demographics, medications, supplements
senechal://health/current
- Get current health measurements- Example:
senechal://health/current?types=1,2,3
- Parameters:
types
: Optional comma-separated list of measurement type IDs
- Example:
senechal://health/trends
- Get health trends over time- Example:
senechal://health/trends?days=30&types=1,2,3&interval=day
- Parameters:
days
: Number of days to analyze (default: 30)types
: Optional comma-separated list of measurement type IDsinterval
: Grouping interval - day, week, month (default: day)
- Example:
senechal://health/stats
- Get statistical analysis of health metrics- Example:
senechal://health/stats?days=30&types=1,2,3
- Parameters:
days
: Analysis period in days (default: 30)types
: Optional comma-separated list of measurement type IDs
- Example:
Available Tools
fetch_health_summary
- Fetch a health summary for a specific period- Parameters:
period
(required): day, week, month, yearmetrics
(optional): Comma-separated metrics or "all" (default)span
(optional): Number of periods to return (default: 1)offset
(optional): Number of periods to offset (default: 0)
- Parameters:
fetch_health_profile
- Fetch the user's health profile- No parameters required
fetch_current_health
- Fetch the latest health measurements- Parameters:
types
(optional): List of measurement type IDs to filter by
- Parameters:
fetch_health_trends
- Fetch health trend data- Parameters:
days
(optional): Number of days to analyze (default: 30)types
(optional): List of measurement type IDs to filter byinterval
(optional): Grouping interval - day, week, month (default: day)
- Parameters:
fetch_health_stats
- Fetch statistical analysis of health metrics- Parameters:
days
(optional): Analysis period in days (default: 30)types
(optional): List of measurement type IDs to filter by
- Parameters:
Available Prompts
analyze_health_summary
- Prompt to analyze health summaries- Provides a template for identifying abnormal metrics, trends, and suggesting actions
- Intended to be used with data from
senechal://health/summary/day?span=7
compare_health_trends
- Prompt to compare health trends over different time periods- Provides a template for comparing trends across different timeframes (7, 30, 90 days)
- Intended to be used with data from the health trends endpoint
Example Interactions
Loading Health Summary Data
Calling Health Data Tools
Using Health Analysis Prompts
See the example_client.py
file for a complete working example.
API Endpoints
The Senechal MCP server communicates with the following Senechal API endpoints:
/health/summary/{period}
- Get health summaries/health/profile
- Get health profile/health/current
- Get current measurements/health/trends
- Get health trends/health/stats
- Get health stats
This server cannot be installed
A Model Context Protocol server that provides health data from the Senechal API to LLM applications, enabling AI assistants to access, analyze, and respond to personal health information.
- Overview
- Installation
- Configuration
- Usage
- Available Resources
- Available Tools
- Available Prompts
- Example Interactions
- API Endpoints