返回市场
个人-mcp

个人-mcp

作者:evangstav8 星标更新:2025-01-08

项目介绍

个人MCP服务器

smithery徽章

这是一个用于个人健康和福祉追踪的模型上下文协议服务器。该服务器提供了工具和资源,用于追踪锻炼、营养以及日常日记条目,并通过与Claude集成实现AI辅助分析。

功能

锻炼追踪

  • 记录锻炼、组数和重复次数
  • 跟踪锻炼后的感觉和感知努力程度
  • 根据康复考虑计算安全训练重量
  • 历史锻炼分析
  • 肩部康复支持
  • 基于RPE的负荷管理

营养管理

  • 记录餐食和单个食品项目
  • 跟踪蛋白质和卡路里摄入量
  • 监控饥饿感和满足感水平
  • 每日营养目标和进度
  • 锻炼前后营养跟踪
  • 餐食时间分析

日记系统

  • 每日条目,带有情绪和能量追踪
  • 睡眠质量和压力水平监控
  • 基于标签的组织
  • 趋势分析和见解
  • 锻炼、营养和福祉之间的相关性分析
  • 情绪和能量水平中的模式识别

安装

通过Smithery安装

要通过Smithery自动安装适用于Claude桌面的个人健康追踪器:

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

先决条件

  • Python 3.10或更高版本
  • pip或uv包管理器

使用pip

pip install -e .

开发安装

git clone https://github.com/yourusername/personal-mcp.git
cd personal-mcp
uv pip install -e ".[dev]"

使用方法

基本服务器

以默认设置运行服务器:

personal-mcp run

开发模式

运行热重载以进行开发:

personal-mcp dev

MCP检查器

使用MCP检查器调试:

personal-mcp inspect

Claude桌面集成

安装到Claude桌面:

personal-mcp install --claude-desktop

配置选项

personal-mcp --help

可用选项:

  • --name:设置服务器名称(默认:"个人助手")
  • --db-path:指定数据库位置
  • --dev:启用开发模式
  • --inspect:使用MCP检查器运行
  • -v, --verbose:启用详细日志记录

MCP工具

锻炼工具

# 记录一次锻炼
workout = {
    "date": "2024-01-07",
    "exercises": [
        {
            "name": "卧推",
            "sets": [
                {"weight": 135, "reps":  10, "rpe": 7}
            ]
        }
    ],
    "perceived_effort": 8
}

# 计算训练重量
params = {
    "exercise": "卧推",
    "base_weight": 200,
    "days_since_surgery": 90,
    "recent_pain_level": 2,
    "recent_rpe": 7
}

营养工具

# 记录一次餐食
meal = {
    "meal_type": "午餐",
    "foods": [
        {
            "name": "鸡胸肉",
            "amount": 200,
            "unit": "克",
            "protein": 46,
            "calories": 330
        }
    ],
    "hunger_level": 7,
    "satisfaction_level": 8
}

# 检查营养目标
targets = await mcp.call_tool("check_nutrition_targets", {"date": "2024-01-07"})

日记工具

# 创建一个日记条目
entry = {
    "entry_type": "每日",
    "content": "今天锻炼很棒...",
    "mood": 8,
    "energy": 7,
    "sleep_quality": 8,
    "stress_level": 3,
    "tags": ["锻炼", "恢复"]
}

# 分析条目
analysis = await mcp.call_tool("analyze_journal_entries", {
    "start_date": "2024-01-01",
    "end_date": "2024-01-07"
})

开发

运行测试

# 运行所有测试
pytest

# 运行带覆盖率的测试
pytest --cov=personal_mcp

# 运行特定的测试文件
pytest tests/test_database.py

代码质量

# 格式化代码
black src/personal_mcp

# 检查代码
ruff check src/personal_mcp

# 类型检查
mypy src/personal_mcp

项目结构

personal-mcp/
├── src/
│   └── personal_mcp/
│       ├── tools/
│       │   ├── workout.py
│       │   ├── nutrition.py
│       │   └── journal.py
│       ├── database.py
│       ├── models.py
│       ├── resources.py
│       ├── prompts.py
│       └── server.py
├── tests/
│   ├── test_database.py
│   ├── test_server.py
│   └── test_cli.py
├── pyproject.toml
└── mcp.json

贡献

  1. 分叉仓库
  2. 创建功能分支
  3. 提交更改
  4. 推送到分支
  5. 创建拉取请求

许可证

此项目根据MIT许可证发布 - 查看LICENSE文件获取详情。 </中文翻译>