运动数据分析服务器

一个提供AI助手访问和分析Intervals.icu运动数据的MCP服务器。

  • by jiaweitao001
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 jiaweitao001/intervals-icu-mcp

使用说明

Intervals.icu MCP服务器

MCP(模型上下文协议)服务器,允许AI助手访问和分析您的Intervals.icu训练数据。

让 AI 直接访问您的 Intervals.icu 运动数据进行分析的 MCP 服务器。

Features / 功能特性

📊 Activity Data / 活动数据

  • 获取活动 -列出日期范围内的培训活动
  • 获取活动_附带详细信息 -列出日期范围内的活动(包括更丰富的字段;更适合Strava同步的活动)
  • 获取_活动_带_详细信息 -获取最近的N个活动(按start_date_local desc排序;避免排序歧义)
  • get_activity_detail -获取单个活动的详细信息
  • get_activity_intervals -获取活动的间隔数据
  • get_activity_power_curve -获取活动的功率曲线
  • get_activity_streams -获取详细的数据流(人力资源、电力、速度等)
  • 搜索活动 -按名称或标签搜索活动

💪 Performance Analysis / 体能分析

  • get_power_curves -获取显示不同持续时间最佳功率的功率曲线(MMP)
  • get_pace_curves -获取显示不同距离最佳配速的配速曲线
  • 获取_曲线 -获取心率曲线
  • get_power_hr_curve -获取有氧效率分析的功率与心率曲线

🏃 Health & Training / 健康与训练

  • get_athlete_file -获取运动员基本信息
  • get_wellness -获取健康数据(体重、心率变异性、睡眠、疲劳等)
  • 获取健康日期 -获取特定日期的健康数据
  • get_athlete_summary -获取培训总结(CTL/ATL/表格)
  • get_events -获得计划好的锻炼和活动
  • get_gear -获取设备信息

Installation / 安装

1. Clone and Build / 克隆并构建

git clone https://github.com/jiaweitao001/intervals-icu-mcp.git
cd intervals-icu-mcp
npm install
npm run build

2.获取Intervals.icu API凭据/获取 API 凭证

  1. 登录到 间隔icu
  2. 首选 设置
  3. 找到你的 API密钥 API部分
  4. 你的 运动员ID 可以在您的个人资料URL中找到(例如。, i12345)

Usage / 使用方式

With Claude Desktop / 与 Claude Desktop 集成

添加到您的Claude Desktop配置文件中:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
视窗: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "intervals-icu": {
      "command": "node",
      "args": ["/path/to/intervals-icu-mcp/dist/index.js"],
      "env": {
        "INTERVALS_API_KEY": "your_api_key_here",
        "INTERVALS_ATHLETE_ID": "i12345"
      }
    }
  }
}

With VS Code / 与 VS Code 集成

创建 .vscode/mcp.json 在您的工作空间中:

{
  "servers": {
    "intervals-icu": {
      "command": "node",
      "args": ["${workspaceFolder}/dist/index.js"],
      "env": {
        "INTERVALS_API_KEY": "your_api_key_here",
        "INTERVALS_ATHLETE_ID": "your_athlete_id_here"
      }
    }
  }
}

Example Prompts / 使用示例

配置后,您可以要求AI:

Training Analysis / 训练分析

  • “分析我过去30天的训练量”
  • “显示我上周的自行车活动”
  • “获取我最近的5次骑行(包括详细信息)”
  • “我目前的训练负荷是多少?”

提示:对于“最近N个”查询,首选 获取_活动_带_详细信息。它有意获取更宽的时间窗口,然后按以下方式排序 start_date_local 在取前N个之前,因此即使上游API响应顺序发生变化,结果也是确定的。

Performance Assessment / 体能评估

  • “显示过去一年我的功率曲线变化”
  • “我当前的FTP是什么?”
  • “分析我的有氧效率趋势”

Health Monitoring / 健康监测

  • “显示我最近的HRV数据”
  • “我的体重趋势是什么?”
  • “显示我的疲劳指数”

Development / 开发

# Development mode
npm run dev

# Build
npm run build

# Watch mode
npm run watch

API文件/API文档

该项目建立在 Intervals.icu API.

License / 许可证

MIT许可证-请参阅 许可证 了解详情。

Contributing / 贡献

欢迎问题和拉取请求!