用于连接Claude与Intervals.icu API的模型上下文协议(MCP)服务器。它提供了身份验证和活动、事件及健康数据检索的工具。
如果您发现该模型上下文协议(MCP)服务器有用,请考虑通过捐赠支持其持续开发。
curl -LsSf https://astral.sh/uv/install.sh | sh
git clone https://github.com/mvilanova/intervals-mcp-server.git
cd intervals-mcp-server
# 使用Python 3.12创建虚拟环境
uv venv --python 3.12
# 激活虚拟环境
# 在macOS/Linux上:
source .venv/bin/activate
# 在Windows上:
.venv\Scripts\activate
uv sync
复制.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
您的运动员ID通常在登录到Intervals.icu时的URL中可见。它看起来像这样:
https://intervals.icu/athlete/i12345/... 其中 i12345 是您的运动员ID该项目正在积极开发中,定期添加新功能和修复。要保持最新状态,请遵循以下步骤:
main拉取最新更改⚠️ 运行此命令前确保您没有未提交的更改。
git checkout main && git pull
激活您的虚拟环境并同步依赖:
source .venv/bin/activate
uv sync
如果由于配置更改导致Claude Desktop失败,请执行以下步骤:
claude_desktop_config.json中的现有条目。intervals_mcp_server目录重新配置Claude Desktop:mcp install src/intervals_mcp_server/server.py --name "Intervals.icu" --with-editable . --env-file .env
要使用此服务器与Claude Desktop,您需要将其添加到您的Claude Desktop配置中。
intervals_mcp_server目录运行以下命令以配置Claude Desktop:mcp install src/intervals_mcp_server/server.py --name "Intervals.icu" --with-editable . --env-file .env
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] 客户端传输关闭
一旦服务器运行且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