训练数据集成服务器

一个MCP服务器,将Intervals.icu与AI助手如Claude或ChatGPT集成,提供训练数据、健康记录、计划训练和日历事件的访问。

  • by hausii
  • TypeScript
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 hausii/IntervalsMCP

使用说明

Intervals.icu MCP服务器

集成了MCP(模型上下文协议)的服务器 间隔icu 使用Claude或ChatGPT等人工智能助手。它通过Claude可以直接调用的一组工具公开您的训练数据、健康记录、计划锻炼和日历事件。

特性

  • 运动员档案和设置 --检索个人资料信息和运动特定设置(FTP、LTHR、HR区域、配速区域)
  • 活动 --列出、搜索并获取已完成锻炼的详细指标
  • 健康 --阅读每日健康记录(体重、静息心率、心率变异性、睡眠、酸痛、疲劳、压力、情绪)
  • 培训日历 --列出、创建和更新计划的活动(锻炼、比赛、笔记等)
  • 路线 --使用可选的GPS路径数据浏览已保存的路线
  • 统计摘要 --在一个日期范围内的总训练负荷、距离和时间

可用工具

工具 说明
get_athlete_profile 运动员姓名、电子邮件和偏好
get_athlete 运动设置,包括FTP、LTHR、最大HR和配速区
list_activities 日期范围内的活动
get_activity 单个活动的详细指标(可选配圈数数据)
search_activities 按名称或标签搜索(使用 #tag 为了精确匹配标签)
get_athlete_summary 日期范围的汇总统计数据(计数、时间、距离、卡路里、负载)
list_wellness 日期范围内的健康记录
get_wellness 单日健康记录
list_routes 所有已保存的路线
get_route 路线详情,可选配GPS纬度/液化天然气路径
list_events 日期范围内的计划日历事件(可按类别筛选)
get_event 单个计划活动的详细信息
create_event 将计划中的事件添加到日历中
update_event 修改现有日历事件
list_event_tags 运动员使用的所有事件标签

先决条件

  • Node.js 18+
  • 一 间隔icu 账户
  • Intervals.icu API密钥(位于 设置→ API)

设置

1.克隆并安装依赖项

git clone <repo-url>
cd IntervalsMCP
npm install

2.配置环境变量

cp .env.example .env

编辑 .env:

INTERVALS_API_KEY=your_api_key_from_intervals_icu_settings
INTERVALS_ATHLETE_ID=i0

INTERVALS_ATHLETE_ID 默认为 i0 它解析为你自己的运动员ID。

3.建造

npm run build

连接到克劳德

将此服务器添加到您的Claude Desktop(或任何兼容MCP的客户端)配置中:

{
  "mcpServers": {
    "intervals-icu": {
      "command": "node",
      "args": ["/absolute/path/to/IntervalsMCP/dist/index.js"]
    }
  }
}

Claude Desktop配置通常位于:

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

发展

# Watch mode — recompiles on file changes
npm run dev

# Run the compiled server directly
npm start

项目结构

src/
  index.ts            # MCP server entry point
  intervals-client.ts # Intervals.icu API HTTP client
  tools.ts            # MCP tool definitions