Strava MCP サーバー
Strava API と対話するためのモデル コンテキスト プロトコル (MCP) サーバー。
ユーザーガイド
インストール
uvxを使用すると、Strava MCP を簡単にインストールできます。
Strava認証情報の設定
Strava API アプリケーションを作成する:
https://www.strava.com/settings/apiにアクセスしてください。
クライアントIDとクライアントシークレットを取得するには、新しいアプリケーションを作成します。
「認証コールバックドメイン」には
localhostと入力します。
資格情報を設定する: 資格情報ファイルを作成します (例:
~/.ssh/strava.sh):export STRAVA_CLIENT_ID=your_client_id export STRAVA_CLIENT_SECRET=your_client_secretClaude 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 ツールを初めて使用する場合:
認証フローが自動的に開始されます
ブラウザが開き、Strava認証ページが表示されます。
承認後、ローカルページにリダイレクトされます
リフレッシュトークンは将来使用するために自動的に保存されます
利用可能なツール
ユーザーアクティビティを取得する
認証されたユーザーのアクティビティを取得します。
パラメータ:
before(オプション): フィルタリングのエポックタイムスタンプafter(オプション): フィルタリングのエポックタイムスタンプpage(オプション):ページ番号(デフォルト:1)per_page(オプション):ページあたりのアイテム数(デフォルト:30)
アクティビティを取得
特定のアクティビティに関する詳細情報を取得します。
パラメータ:
activity_id: アクティビティのIDinclude_all_efforts(オプション):セグメントの取り組みを含める(デフォルト:false)
アクティビティセグメントを取得する
特定のアクティビティからセグメントを取得します。
パラメータ:
activity_id: アクティビティのID
セグメントリーダーボードを取得
特定のセグメントのリーダーボードを取得します。
パラメータ:
segment_id: セグメントのIDさまざまなオプションフィルター(性別、年齢層など)
開発者ガイド
プロジェクトのセットアップ
リポジトリをクローンします。
git clone <repository-url> cd strava依存関係をインストールします:
uv install環境変数を設定します。
export STRAVA_CLIENT_ID=your_client_id export STRAVA_CLIENT_SECRET=your_client_secretまたは、これらの変数を含む
.envファイルを作成します。
開発モードで実行
MCP CLI を使用してサーバーを実行します。
手動認証
次のコマンドを実行すると、リフレッシュ トークンを手動で取得できます。
プロジェクト構造
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: リフレッシュトークンを手動で取得するためのユーティリティスクリプト
テストの実行
PyPIへの公開
パッケージの構築
PyPIへの公開
ライセンス
謝辞
Related MCP Servers
- -securityFlicense-qualityA Model Context Protocol server for tracking personal health and well-being, offering tools for workout logging, nutrition management, and daily journaling with AI-assisted analysis integration.Last updated -8
- AsecurityAlicenseAqualityIntegration Strava API с Model Context Protocol SDKLast updated -4MIT License
- -securityFlicense-qualityA Model Context Protocol server that provides language models with access to personal Whoop fitness data, allowing queries for cycles, recovery, strain, and workout information from the Whoop API.Last updated -14
- AsecurityAlicenseAqualityA Model Context Protocol server that provides language models with access to Strava API data, allowing them to query and analyze athlete activities from Strava.Last updated -417MIT License