Back to MCP directory
publicPublicdnsLocal runtime

mcp-server-strava

该项目是一个Strava API与Model Context Protocol (MCP) SDK的集成工具,用于分析训练数据并提供个性化建议。支持训练活动分析、自动更新令牌和API请求速率限制等功能。

article

README

🚀 将Strava API与模型上下文协议(MCP)SDK集成的完整指南

本指南详细介绍了如何将Strava API与Model Context Protocol (MCP) SDK集成。通过此集成,您可以访问和分析来自Strava平台的运动数据,并利用MCP的强大功能进行进一步处理。

🚀 快速开始

本项目聚焦于将Strava API与Model Context Protocol (MCP) SDK集成,借助此集成,您能够访问并分析Strava平台的运动数据,同时利用MCP的强大功能开展进一步处理。

✨ 主要特性

  • 数据获取:从Strava获取详细的运动数据分析。
  • 资源管理:管理并配置运动数据中的各种资源。
  • 性能分析:使用MCP SDK对运动表现进行深入分析。

📦 安装指南

安装要求

  1. Python版本:需要Python 3.8或更高版本。
  2. 依赖项
    • mcp-sdk:MCP SDK的最新稳定版本。
    • strava-api-python:Strava API的官方Python库。
    • requests:处理HTTP请求的基本库。

安装步骤

  1. 安装MCP SDK
    pip install mcp-sdk
    
  2. 安装Strava API库
    pip install strava-api-python
    

📚 详细文档

配置步骤

  1. 注册应用:在Strava开发者控制台创建新的应用程序,并获取客户端ID和秘密。
  2. 设置环境变量
    export STRAVA_CLIENT_ID=your_client_id
    export STRAVA_CLIENT_SECRET=your_client_secret
    

API资源与工具示例

资源概览

| 类型 | 名称 | 描述 | |------|------|------| | 数据 | activity | 获取单个活动的数据 | | 集合 | activities | 获取多个活动的数据 | | 配置 | athlete | 获取当前用户的详细信息 |

工具示例

from strava import StravaApi
from mcp_sdk import MCPClient

# 初始化Strava API客户端
strava = StravaApi(client_id=STRAVA_CLIENT_ID, client_secret=STRAVA_CLIENT_SECRET)

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

# 使用MCP SDK进行分析
mcp = MCPClient()
analysis_results = mcp.analyze(activities)

开发信息

CI/CD与安全性

  • 代码覆盖率:72%
  • 测试通过率:15/20
  • 代码风格:使用Ruff进行格式化和检查。

GitHub Actions检查

| 类型 | 工具 | 描述 | |------|------|------| | 检查 | Ruff | 代码格式化与质量问题检测 | | 测试 | Pytest | 单元测试与集成测试 | | 覆盖率 | Pytest-cov | 代码覆盖报告 |

安全措施

  1. 令牌保护
    • .env文件添加到.gitignore
    • 使用GitHub Secrets管理CI/CD密钥。
  2. 速率限制:每15分钟限制为100个请求。

贡献指南

  1. Fork仓库
  2. 安装依赖
    uv pip install -e ".[dev]"
    
  3. 创建功能分支
    git checkout -b feature/name
    
  4. 验证更改
    ruff format .
    ruff check .
    pytest --cov=src
    

支持与联系

📄 许可证

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