Strava MCP Server

Strava MCP Server

一个模型上下文协议服务器,使用户能够通过结构化的 API 接口访问 Strava 健身数据,包括用户活动、活动详情、路段和排行榜。

Category
访问服务器

Tools

get_user_activities

Get the authenticated user's activities. Args: ctx: The MCP request context before: An epoch timestamp for filtering activities before a certain time after: An epoch timestamp for filtering activities after a certain time page: Page number per_page: Number of items per page Returns: List of activities

get_activity

Get details of a specific activity. Args: ctx: The MCP request context activity_id: The ID of the activity include_all_efforts: Whether to include all segment efforts Returns: The activity details

get_activity_segments

Get the segments of a specific activity. Args: ctx: The MCP request context activity_id: The ID of the activity Returns: List of segment efforts for the activity

README

Strava MCP 服务器

CI/CD Pipeline codecov

一个用于与 Strava API 交互的模型上下文协议 (MCP) 服务器。

<a href="https://glama.ai/mcp/servers/@yorrickjansen/strava-mcp"> <img width="380" height="200" src="https://glama.ai/mcp/servers/@yorrickjansen/strava-mcp/badge" alt="Strava Server MCP server" /> </a>

用户指南

安装

您可以使用 uvx 轻松安装 Strava MCP:

uvx strava-mcp

设置 Strava 凭据

  1. 创建 Strava API 应用程序

  2. 配置您的凭据: 创建一个凭据文件(例如,~/.ssh/strava.sh):

    export STRAVA_CLIENT_ID=your_client_id
    export STRAVA_CLIENT_SECRET=your_client_secret
    
  3. 配置 Claude Desktop: 将以下内容添加到您的 Claude 配置 (/Users/<username>/Library/Application Support/Claude/claude_desktop_config.json):

    "strava": {
        "command": "bash",
        "args": [
            "-c",
            "source ~/.ssh/strava.sh && uvx strava-mcp"
        ]
    }
    

身份验证

首次使用 Strava MCP 工具时:

  1. 身份验证流程将自动启动
  2. 您的浏览器将打开到 Strava 授权页面
  3. 授权后,您将被重定向回本地页面
  4. 您的刷新令牌将自动保存以供将来使用

可用工具

获取用户活动

检索已验证用户的活动。

参数:

  • before(可选):用于过滤的 Epoch 时间戳
  • after(可选):用于过滤的 Epoch 时间戳
  • page(可选):页码(默认值:1)
  • per_page(可选):每页的项目数(默认值:30)

获取活动

获取有关特定活动的详细信息。

参数:

  • activity_id:活动的 ID
  • include_all_efforts(可选):包括分段努力(默认值:false)

获取活动分段

从特定活动中检索分段。

参数:

  • activity_id:活动的 ID

获取分段排行榜

获取特定分段的排行榜。

参数:

  • segment_id:分段的 ID
  • 各种可选过滤器(性别、年龄组等)

开发者指南

项目设置

  1. 克隆存储库:

    git clone <repository-url>
    cd strava
    
  2. 安装依赖项:

    uv install
    
  3. 设置环境变量:

    export STRAVA_CLIENT_ID=your_client_id
    export STRAVA_CLIENT_SECRET=your_client_secret
    

    或者,创建一个包含这些变量的 .env 文件。

在开发模式下运行

使用 MCP CLI 运行服务器:

mcp dev strava_mcp/main.py

手动身份验证

您可以通过运行以下命令手动获取刷新令牌:

python get_token.py

项目结构

  • strava_mcp/: 主包目录
    • __init__.py: 包初始化
    • config.py: 使用 pydantic-settings 的配置设置
    • models.py: Strava API 实体的 Pydantic 模型
    • api.py: Strava 的低级 API 客户端
    • auth.py: Strava OAuth 身份验证实现
    • oauth_server.py: 独立的 OAuth 服务器实现
    • service.py: 用于业务逻辑的服务层
    • server.py: MCP 服务器实现
  • tests/: 单元测试
  • strava_mcp/main.py: 运行服务器的主要入口点
  • get_token.py: 用于手动获取刷新令牌的实用程序脚本

运行测试

pytest

发布到 PyPI

构建包

# 构建 sdist 和 wheel
uv build

发布到 PyPI

# 首先发布到 Test PyPI
uv publish --index testpypi

# 发布到 PyPI
uv publish

许可证

MIT 许可证

致谢

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选