ShrineAgent MCP Developer Guide
Connect your AI client to Syntropy Health via the Model Context Protocol (MCP). Live capabilities page: /shrine-agentOverview
ShrineAgent exposes 10 MCP tools for health data, diet analysis, AI chat, and check-in management. Any MCP-compatible client (Claude Desktop, VS Code, custom agents) can connect.Authentication
All tools require a Clerk JWT bearer token.- Sign in at syntropyhealth.com
- Go to Settings > Account > API Tokens
- Generate a token
- Use as
Authorization: Bearer <token>header
Connection
| Property | Value |
|---|---|
| Transport | Streamable HTTP |
| Endpoint | https://api.syntropyhealth.com/mcp |
| Auth | Bearer token (Clerk JWT) |
| Rate Limit (read) | 60 requests/min |
| Rate Limit (write) | 20 requests/min |
Quick Start
Claude Desktop
Add toclaude_desktop_config.json:
VS Code (Claude Extension)
Add to VS Codesettings.json:
cURL (test connection)
Tool Catalog
Chat / AI
| Tool | Type | Description |
|---|---|---|
chat_with_shrine | write | Chat with ShrineAI, your personal health AI assistant |
Diet & Scoring
| Tool | Type | Description |
|---|---|---|
get_diet_score | read | Get diet fulfillment score over the last N days |
get_diet_gap | read | Compare actual macro intake vs ideal targets |
analyze_food | write | Analyze a food item for nutritional content |
log_food | write | Log a food entry to your health journal |
Health Data
| Tool | Type | Description |
|---|---|---|
get_health_snapshot | read | Aggregated health snapshot including food logs and symptoms |
get_health_profile | read | Health profile with dietary preferences, goals, conditions |
get_my_protocols | read | Wellness protocols you’re subscribed to |
Check-ins
| Tool | Type | Description |
|---|---|---|
log_checkin | write | Record a daily health check-in |
get_my_checkins | read | Get your recent health check-ins |
Rate Limits
- Read operations (get_*): 60 requests per minute per user
- Write operations (log_, chat_, analyze_*): 20 requests per minute per user
- Rate limit buckets reset per-user on a rolling window
- Exceeding limits returns an error response (not an HTTP error)
Error Handling
All tools return a JSON dict. On error:"Authentication required"— missing or invalid JWT"Rate limit exceeded"— too many requests, wait and retry"Chat temporarily unavailable"— backend service issue
API Discovery
The capabilities endpoint is public (no auth required):Health Check
Monitor service status:{"status": "healthy"} or {"status": "degraded", "services": {...}}.