← 返回目录
I

Intervals.icu MCP Server

社区
通过 MCP 连接 Claude 和 ChatGPT 与 Intervals.icu API。
GitHub 源仓库 ↗
★ 339 Stars 分类 · 其他 非常热门 源版本 cb1fbcac8109
52FMRS · D
可靠性
8/20
安全与权限
8/20
维护活跃度
11/20
文档质量
13/20
安装易用性
12/20

这是一个面向 Intervals.icu 用户的第三方 MCP 服务器,功能覆盖训练活动、健康数据、事件、功率曲线和自定义项目。README 提供 Claude Desktop 的 stdio 配置以及 ChatGPT 的 SSE 配置,但未提供已缓存的服务器清单。由于包含写入和删除工具,部署前应妥善保护 API 密钥并谨慎授予数据修改权限。

查看 FMRS 评分方法 →

Intervals.icu MCP Server 是一个用于连接 Intervals.icu API 的 Model Context Protocol 服务器,支持活动、事件、健康数据、功率曲线和自定义项目的数据访问与管理。

工具能力

get_activities
获取活动列表。
get_activity_details
获取指定活动的详细信息。
get_activity_intervals
获取指定活动的详细间隔数据。
get_activity_streams
获取指定活动的原始数据流,例如功率和心率。
get_athlete_power_curves
获取指定时长和时间段的最佳功率曲线。
get_wellness_data
获取健康数据。
get_events
获取即将发生的事件,例如训练和比赛。
get_event_by_id
获取指定事件的详细信息。
add_or_update_event
创建或更新事件,例如训练、比赛或备注。
delete_event
删除指定事件。
delete_events_by_date_range
删除日期范围内的事件。
get_custom_items
获取运动员的自定义项目,例如图表、自定义字段和区域。
get_custom_item_by_id
获取指定自定义项目的详细信息。
create_custom_item
为运动员创建新的自定义项目。
update_custom_item
更新现有自定义项目。
delete_custom_item
删除自定义项目。

安装接入

需要 Python 3.12 或更高版本、uv、项目依赖和 Intervals.icu API 凭据。克隆仓库后创建 Python 3.12 虚拟环境,运行 uv sync,复制 .env.example 为 .env,并设置 API_KEY 和 ATHLETE_ID。使用 Claude Desktop 时,可运行 mcp install src/intervals_mcp_server/server.py --name "Intervals.icu" --with-editable . --env-file .env,或根据提供的配置示例手动添加服务器。使用 ChatGPT 时,以 SSE 模式启动服务器,并将公开的 /sse 地址配置为自定义 MCP 连接器。

claude_desktop_config.json
{"mcpServers":{"Intervals.icu":{"command":"/Users/<USERNAME>/.local/bin/uv","args":["run","--with","mcp[cli]","--with-editable","/path/to/intervals-mcp-server","mcp","run","/path/to/intervals-mcp-server/src/intervals_mcp_server/server.py"],"env":{"INTERVALS_API_BASE_URL":"https://intervals.icu/api/v1","ATHLETE_ID":"<YOUR_ATHLETE_ID>","API_KEY":"<YOUR_API_KEY>","LOG_LEVEL":"INFO"}}}}

选型与风险

适合谁

  • 使用 Intervals.icu 管理训练数据的运动员。
  • 希望通过 Claude Desktop 或 ChatGPT 查询和管理 Intervals.icu 数据的用户。
  • 需要活动、健康、事件和功率数据访问的开发或分析场景。

不适合谁

  • 不使用 Intervals.icu 的用户。
  • 不愿提供 Intervals.icu API 密钥和运动员 ID 的用户。
  • 只需要只读访问、但不希望启用事件或自定义项目写入和删除操作的场景。

所需权限

  • 需要 Intervals.icu API 密钥和运动员 ID。
  • 配置中包含 INTERVALS_API_BASE_URL、ATHLETE_ID、API_KEY 和 LOG_LEVEL。
  • API 权限覆盖活动、健康数据、事件和自定义项目的读取;事件和自定义项目还支持创建、更新及删除。

风险与副作用

  • API 密钥属于敏感凭据,不应公开或提交到版本库。
  • 服务器提供删除事件及删除自定义项目的操作,误用可能导致数据丢失。
  • ChatGPT 的 SSE 配置需要公开服务器地址或端口转发;未保护的公开地址可能扩大访问范围。
  • 写入操作可能修改 Intervals.icu 中的训练、比赛、备注和自定义项目。

常见排障

  1. 确认使用 Python 3.12 或更高版本并已运行 uv sync。
  2. 确认 .env 中的 API_KEY 和 ATHLETE_ID 已正确设置。
  3. 如果出现 spawn uv ENOENT,改用 uv 的完整路径。
  4. Windows 用户确认 JSON 中使用双反斜杠,并编辑正确的 Claude Desktop 配置文件。
  5. 修改配置后重启 Claude Desktop;必要时删除旧的 Intervals.icu 配置并重新运行 mcp install。
  6. 使用 ChatGPT 时确认服务器以 SSE 模式运行,并将 /sse 地址映射到可访问的公开 URL。

使用场景

查询历史活动及活动细节。
分析活动间隔、功率、心率等数据流和功率曲线。
获取健康数据。
查看、创建、更新或删除训练和比赛事件。
管理运动员的自定义项目。

支持客户端

Claude Desktop完整支持
ChatGPT完整支持