Back to MCP directory
publicPublicdnsLocal runtime

rbctmz_mcp-server-strava

该项目是一个Strava API与Model Context Protocol (MCP) SDK的集成方案,用于分析训练数据并提供个性化建议。

article

README

🚀 使用Model Context Protocol (MCP) SDK集成Strava API

本项目聚焦于将Strava API与Model Context Protocol (MCP) SDK进行集成。借助该集成,可实现运动数据的分析、性能追踪以及个性化反馈等功能,为用户的运动健身提供有力支持。

🚀 快速开始

本项目详细介绍了如何将Strava API与Model Context Protocol (MCP) SDK集成。后续内容涵盖了功能特性、安装要求、安装指南、配置步骤、API使用示例以及开发相关的详细信息。

✨ 主要特性

  • 运动数据分析:通过从Strava获取数据,分析用户的跑步、骑行和其他运动表现。
  • 性能追踪:整合历史数据以追踪长期的健身进展。
  • 个性化反馈:根据分析结果提供个性化的训练建议和反馈。

📦 安装指南

安装要求

| 类型 | 版本 | |------|------| | Python | 3.8+ | | MCP SDK | 1.0.0+ | | Strava API | 最新版本 |

环境配置

pip install mcp-sdk stravalib

快速开始步骤

  1. 注册Strava应用:在Strava开发者控制台创建新应用,获取CLIENT_IDCLIENT_SECRET
  2. 授权:使用OAuth 2.0获取访问令牌:
    from stravalib import Client
    
    client = Client()
    auth_url = client.authorization_url(client_id=STRAVA_CLIENT_ID, redirect_uri='http://localhost:8000/auth/callback')
    print(auth_url)
    
  3. 数据获取:从Strava API获取活动数据:
    from mcp_sdk import MCPClient
    
    mcp = MCPClient()
    activities = mcp.get_activities()
    

📚 详细文档

配置指南

环境变量设置

将以下内容添加到.env文件中:

STRAVA_CLIENT_ID=your_client_id
STRAVA_CLIENT_SECRET=your_client_secret
STRAVA_REFRESH_TOKEN=your_refresh_token

安全注意事项

  • 数据加密:在传输过程中对敏感数据进行加密。
  • 访问控制:使用基于角色的访问控制(RBAC)来限制API访问。

API 和示例

资源概述

| 类型 | 描述 | |------|------| | /activities | 获取用户的活动历史 | | /zones | 获取用户的心率和功率区间 | | /trainingPlans | 管理训练计划 |

示例代码

from stravalib import Client
from mcp_sdk import MCPClient

# 初始化Strava客户端
strava_client = Client(access_token='your_access_token')

# 获取活动数据
activities = strava_client.get_activities()

# 分析活动数据并生成报告
mcp_client = MCPClient()
analysis_report = mcp_client.analyze_activities(activities)

开发指南

CI/CD 和安全措施

  • 代码检查:使用Ruff进行代码格式化和质量控制。
  • 测试覆盖率:确保测试覆盖率达到要求。

测试命令

ruff format .
ruff check .
pytest --cov=src

贡献指南

  1. ** Fork 项目仓库**
  2. ** 安装依赖项**:
    uv pip install -e ".[dev]"
    
  3. ** 创建功能分支**:
    git checkout -b feature/name
    
  4. ** 提交更改**并创建Pull Request。

联系方式

📄 许可证

MIT

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client