Personal Health Tracker MCP server

Integrates personal health data tracking with natural language querying and visualization for privacy-focused local analysis and trend insights.
Back to servers
Provider
Evangelos Stavropoulos
Release date
Jan 08, 2025
Language
Python
Stats
7 stars

This Personal MCP Server provides tools for tracking workouts, nutrition, and journal entries with AI-assisted analysis through Claude integration. It helps you monitor your health and well-being while offering insights based on your data.

Installation

Installing via Smithery

The easiest way to install Personal Health Tracker for Claude Desktop is through Smithery:

npx -y @smithery/cli install personal-mcp --client claude

Prerequisites

Before installing, ensure you have:

  • Python 3.10 or higher
  • pip or uv package manager

Standard Installation

Using pip:

pip install -e .

Usage

Running the Server

Start the server with default settings:

personal-mcp run

Development Mode

Run with hot reloading during testing:

personal-mcp dev

Debugging

Use the MCP Inspector for debugging:

personal-mcp inspect

Claude Desktop Integration

To install directly to Claude Desktop:

personal-mcp install --claude-desktop

Configuration Options

View all available options:

personal-mcp --help

Common configuration options include:

  • --name: Set server name (default: "Personal Assistant")
  • --db-path: Specify database location
  • --dev: Enable development mode
  • --inspect: Run with MCP Inspector
  • -v, --verbose: Enable verbose logging

Working with MCP Tools

Workout Tracking

Track your exercises, sets, and performance:

# Log a workout
workout = {
    "date": "2024-01-07",
    "exercises": [
        {
            "name": "Bench Press",
            "sets": [
                {"weight": 135, "reps": 10, "rpe": 7}
            ]
        }
    ],
    "perceived_effort": 8
}

# Calculate training weights (useful for rehabilitation)
params = {
    "exercise": "Bench Press",
    "base_weight": 200,
    "days_since_surgery": 90,
    "recent_pain_level": 2,
    "recent_rpe": 7
}

Nutrition Management

Log and analyze your food intake:

# Log a meal
meal = {
    "meal_type": "lunch",
    "foods": [
        {
            "name": "Chicken Breast",
            "amount": 200,
            "unit": "g",
            "protein": 46,
            "calories": 330
        }
    ],
    "hunger_level": 7,
    "satisfaction_level": 8
}

# Check nutrition targets
targets = await mcp.call_tool("check_nutrition_targets", {"date": "2024-01-07"})

Journal System

Record and analyze your daily experiences:

# Create a journal entry
entry = {
    "entry_type": "daily",
    "content": "Great workout today...",
    "mood": 8,
    "energy": 7,
    "sleep_quality": 8,
    "stress_level": 3,
    "tags": ["workout", "recovery"]
}

# Analyze entries
analysis = await mcp.call_tool("analyze_journal_entries", {
    "start_date": "2024-01-01",
    "end_date": "2024-01-07"
})

Features Overview

Workout Features

  • Log exercises with sets, reps, and weights
  • Track perceived effort and how you feel after workouts
  • Calculate appropriate training weights, including rehabilitation considerations
  • Analyze workout history for progress tracking
  • Support for shoulder rehabilitation
  • RPE-based load management to prevent injury

Nutrition Features

  • Comprehensive meal and food logging
  • Protein and calorie tracking
  • Monitor hunger and satisfaction levels
  • Set and track daily nutrition targets
  • Track pre/post workout nutrition
  • Analyze meal timing patterns

Journal Features

  • Daily entries with mood and energy tracking
  • Sleep quality and stress level monitoring
  • Tag-based organization for easy filtering
  • Trend analysis across your data
  • Correlation analysis between workouts, nutrition, and well-being
  • Pattern recognition to identify factors affecting your mood and energy

How to add this MCP server to Cursor

There are two ways to add an MCP server to Cursor. The most common way is to add the server globally in the ~/.cursor/mcp.json file so that it is available in all of your projects.

If you only need the server in a single project, you can add it to the project instead by creating or adding it to the .cursor/mcp.json file.

Adding an MCP server to Cursor globally

To add a global MCP server go to Cursor Settings > MCP and click "Add new global MCP server".

When you click that button the ~/.cursor/mcp.json file will be opened and you can add your server like this:

{
    "mcpServers": {
        "cursor-rules-mcp": {
            "command": "npx",
            "args": [
                "-y",
                "cursor-rules-mcp"
            ]
        }
    }
}

Adding an MCP server to a project

To add an MCP server to a project you can create a new .cursor/mcp.json file or add it to the existing one. This will look exactly the same as the global MCP server example above.

How to use the MCP server

Once the server is installed, you might need to head back to Settings > MCP and click the refresh button.

The Cursor agent will then be able to see the available tools the added MCP server has available and will call them when it needs to.

You can also explictly ask the agent to use the tool by mentioning the tool name and describing what the function does.

Want to 10x your AI skills?

Get a free account and learn to code + market your apps using AI (with or without vibes!).

Nah, maybe later