返回市场
间隔-MCP服务器

间隔-MCP服务器

作者:mvilanova100 星标更新:2025-09-04

项目介绍

Intervals.icu MCP Server

smithery 徽章

用于连接Claude与Intervals.icu API的模型上下文协议(MCP)服务器。它提供了身份验证和活动、事件及健康数据检索的工具。

如果您发现该模型上下文协议(MCP)服务器有用,请考虑通过捐赠支持其持续开发。

要求

设置

1. 安装uv(推荐)

curl -LsSf https://astral.sh/uv/install.sh | sh

2. 克隆此仓库

git clone https://github.com/mvilanova/intervals-mcp-server.git
cd intervals-mcp-server

3. 创建并激活虚拟环境

# 使用Python 3.12创建虚拟环境
uv venv --python 3.12

# 激活虚拟环境
# 在macOS/Linux上:
source .venv/bin/activate
# 在Windows上:
.venv\Scripts\activate

4. 同步项目依赖

uv sync

5. 设置环境变量

复制.env.example文件并将其命名为.env,运行以下命令:

cp .env.example .env

然后编辑.env文件,并设置您的Intervals.icu运动员ID和API密钥:

API_KEY=your_intervals_api_key_here
ATHLETE_ID=your_athlete_id_here

获取您的Intervals.icu API密钥

  1. 登录到您的Intervals.icu帐户
  2. 前往设置 > API
  3. 生成新的API密钥

查找您的运动员ID

您的运动员ID通常在登录到Intervals.icu时的URL中可见。它看起来像这样:

  • https://intervals.icu/athlete/i12345/... 其中 i12345 是您的运动员ID

更新

该项目正在积极开发中,定期添加新功能和修复。要保持最新状态,请遵循以下步骤:

1. 从main拉取最新更改

⚠️ 运行此命令前确保您没有未提交的更改。

git checkout main && git pull

2. 更新Python依赖

激活您的虚拟环境并同步依赖:

source .venv/bin/activate
uv sync

故障排除

如果由于配置更改导致Claude Desktop失败,请执行以下步骤:

  1. 删除claude_desktop_config.json中的现有条目。
  2. intervals_mcp_server目录重新配置Claude Desktop:
mcp install src/intervals_mcp_server/server.py --name "Intervals.icu" --with-editable . --env-file .env

使用

1. 配置Claude Desktop

要使用此服务器与Claude Desktop,您需要将其添加到您的Claude Desktop配置中。

  1. intervals_mcp_server目录运行以下命令以配置Claude Desktop:
mcp install src/intervals_mcp_server/server.py --name "Intervals.icu" --with-editable . --env-file .env
  1. 如果您打开您的Claude Desktop应用程序配置文件claude_desktop_config.json,它应该如下所示:
{
  "mcpServers": {
    "Intervals.icu": {
      "command": "/Users/<USERNAME>/.cargo/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"
      }
    }
  }
}

其中 /path/to/ 是您系统中intervals-mcp-server代码文件夹的路径。

如果您在打开Claude Desktop时观察到以下错误消息,请在claude_desktop_config.json配置文件中的command键中包含uv的完整路径。您可以通过在终端中运行which uv来获取完整路径。

2025-04-28T10:21:11.462Z [info] [Intervals.icu MCP Server] 初始化服务器...
2025-04-28T10:21:11.477Z [error] [Intervals.icu MCP Server] spawn uv ENOENT
2025-04-28T10:21:11.477Z [error] [Intervals.icu MCP Server] spawn uv ENOENT
2025-04-28T10:21:11.481Z [info] [Intervals.icu MCP Server] 服务器传输关闭
2025-04-28T10:21:11.481Z [info] [Intervals.icu MCP Server] 客户端传输关闭
  1. 重启Claude Desktop。

2. 使用MCP服务器与Claude

一旦服务器运行且Claude Desktop已配置,您可以使用以下工具查询您的过去和未来活动、事件及健康数据。

  • get_activities:检索活动列表
  • get_activity_details:获取特定活动的详细信息
  • get_activity_intervals:获取特定活动的详细间隔数据
  • get_wellness_data:获取健康数据
  • get_events:检索即将发生的事件(训练、比赛等)
  • get_event_by_id:获取特定事件的详细信息

开发和测试

安装开发依赖并运行测试套件:

uv sync --all-extras
pytest -v tests

在本地运行服务器

要手动启动服务器(在开发或测试时很有用),运行:

mcp run src/intervals_mcp_server/server.py

许可证

GNU通用公共许可证v3.0

特别推荐

Glama.ai

<a href="https://glama.ai/mcp/servers/@mvilanova/intervals-mcp-server"> <img width="380" height="200" src="https://gips1.baidu.com/it/u=4127096042,387377400&fm=3081&app=3081&f=PNG?w=760&h=400" alt="Intervals.icu Server MCP服务器" /> </a>