S-Bike Training Hub について
S-Bike Training Hub は、サイクリング、スイミング、ランニング、筋力トレーニングを記録する人向けのローカルトレーニングハブです。計画と記録をコンピューターに保存し、AI アシスタントと共有して計画に活用できます。
主な機能
- 01シーズンおよび週ごとのトレーニング計画
- 02予定と実績をまとめるカレンダー
- 03毎日・毎週のチェックイン
- 04.fit と .tcx のワークアウトファイルをインポート
- 05フィットネスダッシュボードと履歴
- 06スマートバイクのワークアウトとライドモード
活用シーン
- 01チェックインをもとに翌週の計画を調整
- 02ウォッチのワークアウトを記録に追加
- 03複数のスポーツと筋トレの進捗を確認
- 04トレーニング記録を使ったAIアシスタントの計画
MCP 対応
MCP サーバーにより、対応する AI アシスタントがトレーニング記録を読み、アプリと同じ操作で計画できます。アシスタントはハブと同じコンピューター上で実行する必要があります。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
124掲載時のツール一覧 · 今日に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| activity_id | string | はい | インポート済みアクティビティ ID |
詳細
S-Bike Training Hub
トレーニングを整理。AI アシスタントに情報を共有。あとはトレーニングするだけです。
サイクリング、スイミング、ランニング、筋力トレーニングに対応した、無料のトレーニングハブです。お使いのコンピューター(macOS、Windows、Linux)で動作します。計画したこと、実行したこと、きつさ、感じたこと、できなかったこととその理由を記録します。その記録を AI アシスタントと共有するので、身体の実際の反応に合わせて、二人で毎週の計画を立てられます。サブスクリプションもアカウントも不要で、スマートバイクの有無にかかわらず使えます。

現在のバージョン:app 1.12.2、MCP 1.12.2 · 新機能 · Strava のコミュニティ
できること
- AI アシスタントとのやり取りで設定できます: 基本情報、簡単な健康チェック、現在の習慣や目標について、一度に一つずつ質問します。
- 2段階で計画します: 目標に向けた仮のセッションをシーズン分作成し、その後、直近の週の内容をもとに、次の週に実施する実際のワークアウトを作成します。変更内容はすべて、保存前に確認できます。
- 目標に向けたプログラムを計画します: テスト週間、基礎作り、強化、イベント準備、テーパー、レース週間で構成されます。変更内容はすべて、保存前に確認できます。
- プログラム全体を確認できるトレーニングカレンダー: 3か月分ずつ、各日の予定セッションと記録済みセッションを表示します。
- 毎日・毎週のチェックイン: スポーツ科学の標準的な質問票に基づいています。Hooper(疲労、睡眠、ストレス、筋肉痛)、部位別の痛み、CR-10 スケールによるセッションのきつさ、OSTRC のオーバーユース質問票に対応します。
- あらゆるスポーツのワークアウト: ライブプレビュー付きのプレーンテキストで作成できます。サイクリングのパワーワークアウト、ラン/ウォークやインターバルラン、スタート時間付きのスイムセット、筋力トレーニングに対応します。手書きのワークアウトを写真や PDF から取り込むこともできます。
- ウォッチのデータ: COROS、Garmin などの
.fitや.tcxファイルをインポートするか、アシスタントに取得してもらえます。同じライドをバイクとウォッチで記録しても、1回としてカウントされます。 - トレーニング量以外の向上度: 各セッションの心拍数に対するペースまたはパワーを、最も近い過去のセッションと比較します。この設定をオンにすると、その日の気温も表示します。
- フィットネスダッシュボード: 記録したエネルギーと仕事量、身体のどこで負荷がかかったか、泳法別の履歴、リフティング記録、筋力の推定値を確認できます。
- 自分で決めるルール: 「懸垂はできません」、*「バーベルデッドリフトはしません」*のように、普段の文章で設定できます。すべてのワークアウトとアシスタントが、そのルールに従います。
- スマートバイク用ブリッジ(Merach S29 でテスト済み):ERG ワークアウト、バーチャルギア、負荷に変換された坂道、3D ルート、ライドゲームに対応し、Kinomap などのアプリやウォッチとバイクを共有できます。
- バイクでのライドモード(ゲーム): ハブ内蔵のゲームエンジンでゲームパックを実行します。ゲームはリアルタイムのパワー、ケイデンス、速度を読み取り、坂道を設定します。自分の FTP に合わせて調整されるため、ゲームを楽しみながらトレーニングできます。スプリントや体を傾けるといった回避動作は、ペダリング、傾けたタブレット、またはカメラ(頭と肩のみを、お使いのデバイス上で検出)で操作できます。ハブが実行するのは、発行元によって署名され、署名後に変更されていないパックのみです。
- AI アシスタントとの接続(MCP): Claude Desktop、Claude Code、その他の MCP アプリが記録を読み取り、アプリのボタンと同じ操作を使って、あなたと一緒に計画を立てられます。

ユーザーガイドでは、各ページを詳しく紹介しています。
セットアップ
1. インストール
1 行でインストールする方法(macOS、Windows、Linux 対応。uv が必要です)。ハブ全体をインストールし、アシスタントに接続します。
claude mcp add --scope user s-bike-hub -- uvx s-bike-training-hub@latest
Claude Desktop の場合は、設定ファイル(Settings → Developer → Edit Config)に次の内容を追加してから、Claude を再起動してください。
{ "mcpServers": { "s-bike-hub": { "command": "uvx", "args": ["s-bike-training-hub@latest"] } } }
Claude Desktop が uvx を見つけられない場合は、"command" にフルパスを指定してください(which uvx を実行すると確認できます)。@latest を指定すると、起動のたびに新しいバージョンがあるか確認します。
その後、アシスタントに 「S-Bike Training Hub のセットアップをしてください」 と頼んでください。ハブ(http://127.0.0.1:8729)が起動し、セットアップの手順を案内します。更新は自動で適用されます。uvx は毎回最新リリースを実行します。
- アプリを自分で起動する場合:
uvx --from s-bike-training-hub s-bike-hub - マップとルート計画(任意、大容量):
uvx --from s-bike-training-hub s-bike-hub-maps - データの保存先はアプリ内ではなく、ご自身のデータフォルダーです。macOS は
~/Library/Application Support/S-Bike Hub、Windows は%APPDATA%\S-Bike Hub、Linux は~/.local/share/s-bike-hubです。 - macOS でスマートバイクを使う場合: 最初にターミナルからアプリを起動してください(
uvx --from s-bike-training-hub s-bike-hub)。macOS で Bluetooth のアクセス許可を求められるようになります。ライブバイク制御以外の機能は、許可がなくても動作します。
GitHub からインストールする場合(セットアップスクリプトとデスクトップランチャーを含むソース一式)。Python 3.11 以降が必要です。
macOS(バイクブリッジ、メニューバーアイコン、ルートプランナー、3D マップを含むすべての機能):
git clone https://github.com/JHarp199345/S-Bike-Training-Hub.git
cd S-Bike-Training-Hub
./setup.sh # everything, with a smart bike and maps
./setup.sh --no-maps # the bike bridge without route maps
./setup.sh --no-bike # no smart bike: the coach, training records, lifting and the dashboard
Windows 10/11(リポジトリを ZIP としてダウンロードするか、クローンしてから、そのフォルダーで PowerShell を開いて実行します):
powershell -ExecutionPolicy Bypass -File setup.ps1 # the hub and the bike bridge
powershell -ExecutionPolicy Bypass -File setup.ps1 -NoBike # no smart bike
Linux:
./setup-linux.sh # the hub, the bike bridge and map tools (needs BlueZ: sudo apt install bluez)
./setup-linux.sh --no-maps # skip the route planner and 3D maps
./setup-linux.sh --no-bike # no smart bike
セットアップによって Python 環境が作成され、必要なものがインストールされ、ランチャーが作成されます。macOS と Windows ではデスクトップに S-Bike Hub、Linux では ./s-bike-hub.sh が作成されます。ブラウザーで http://127.0.0.1:8729 のハブが開き、最初に ウェルカムページが表示されます。GitHub からインストールした場合も、これまでどおり専用フォルダーにデータが保存されます。
- マップ: Linux でルート計画を利用するには Java も必要です。また、地域のマップをダウンロードする際には確認を求められます。Windows では、マップはまだセットアップされていません。
- テスト: インストールとシミュレーション用バイクは、変更のたびに 3 つすべてのシステムでテストされています。実際のバイクとウォッチは macOS でのみテストされています。
2. 自分について伝える
最も簡単な方法は、接続済みのアシスタントにセットアップを頼むことです(ウェルカムページにコピー用のプロンプトがあります)。基本情報を尋ね、簡単な健康チェックを行い、取り組んでいるスポーツ、現在の状況、目標について質問してから、一緒にプログラムを作成します。各ステップで承認できます。
アシスタントを使わない場合は、ウェルカムページで No assistant? Set up by hand を開きます。スポーツと経験、体重、性別と心拍数、ランニングの内容、ルールを入力します(ルールとは、すべてのワークアウトに反映される自然な文章です。ルールを参照)。次に Build my program を選ぶと、ハブが最初のプログラム案を作成します。適用する前にプレビューして編集できます。
3. AI アシスタントを接続する(任意、推奨)
ハブが記録を保持し、アシスタントが一緒に計画を立てます。MCP サーバーに対応するアプリなら、どれでも利用できます。
- 上記の1 行のインストールコマンドですでに接続されています。
- Claude Desktop(バンドル版):リリースページから
.mcpbバンドル(MCP 1.12.2)をダウンロードし、Settings → Extensions → Advanced settings → Install extensionを選択します。ハブのアドレスはhttp://127.0.0.1:8729のままにしてください。 - Claude Code:
claude mcp add --scope user s-bike-hub -- "$PWD/.venv/bin/python" "$PWD/mcp_server.py"(Windows の場合:.venv\Scripts\python.exe)。 - その他の MCP アプリ:
.venvの Python を使ってmcp_server.pyを指定してください。
アシスタントはハブと同じコンピューターで実行する必要があります。ChatGPT など、ウェブのみで利用できるアシスタントは、まだハブに接続できません。
接続したら、次のように話しかけてみましょう: 「今週の調子はどう?」、「火曜日は体調が悪くて休んだ」、「出張を考慮して来週の計画を立てて」。組み込みのプロンプトは 3 つあります:
- **daily-check-in:**チェックインを行い、その後一緒に計画を調整します;
- **predict-my-race:**あなたの数値からレースを予測し、プログラムの進行に合わせて保存、改良します;
- **get-my-bike-working:**ハブが認識しない自転車をセットアップします。
4. 自転車を接続する(任意)
ウェルカムページのYour bikeで、自転車の電源を入れ、ペダルをこいで起動し、スマートフォンやウォッチのアプリとの接続を解除してから、Scan for my bikeを押します。その後、一覧から自転車をクリックします。

- ✅ 認識済み(Merach S29 など)または**✅ 標準スマートバイク**(2020 年頃以降に製造された自転車の多く):Use this bikeをクリックします。これで完了です。
- ❔ まだ認識されていない場合:****This is my bikeをクリックし、ハブがアシスタントにサポートを求めることを許可します。その後、アシスタントを開いてget my bike workingと入力します。アシスタントは自転車を確認し、いくつかの速度でペダルをこぐよう依頼し、自転車プロファイル(設定のみで、コードは使いません)を作成して、ペダルをこいでいる間に短いガイド付きチェックを実行します。
ハブは安全ルールを自ら適用します。リセットは行わず、負荷は 0 にせず、自転車の範囲内で小刻みに調整します。負荷のコマンドを判別できない場合でも、パワーとケイデンスの計測には自転車を使えます。詳細:自転車のセットアップ。
5. ウォッチのデータを取り込む
Today のImport watch workoutを使って、.fitまたは.tcxファイルを取り込みます。該当する予定ワークアウトを選ぶか、+ New workoutを選択し、保存前にプレビューします(COROS などの)ウォッチコネクターを使えば、アシスタントに *「最新のワークアウトをハブに取り込んで」*と頼むこともできます。
毎日
- Today またはアシスタントでチェックインします。毎日の質問に答え、痛みがあれば伝え、希望する場合は日誌に一言記入します。
- **「要対応」の一覧を一緒に確認します。**チェックインのたびに、翌週に向けた項目が緊急度の高い順に短く表示されます。セッションが違反するルール、上限を超えるセッション、回答待ちのテスト、理由のない未実施セッションなどです。アシスタントが最小限の修正を提案し、変更内容を提示して、あなたが同意した後に適用します。
- 今日の予定に沿ってトレーニングし、終わったら結果を報告します。
- **週次チェックイン:**その週を振り返るための数分間です。
数値の仕組み
このハブでは、記録された事実と推定値を区別して扱います。
- **記録された運動:**エネルギーは、利用可能な情報源のうち最も信頼性の高いものから算出します(自転車のパワー、次にランニングやウォーキングの距離と勾配、最後にウォッチの値)。各レポートには、保存した時点の負荷の数値が固定して記録されるため、後から数式が変わっても履歴が書き換わることはありません。
- **回復と準備状況は、固定モデルではなく、あなたのレポートに基づきます。**ランニングは、最近のレポートと記録された負荷に基づいてガイドされます。あなた自身の履歴から学習する個別の回復曲線は開発中で、レビューが完了するまではデフォルトで無効になっています。
- **ここにある情報は、怪我の予測でも、医学的な運動許可でもありません。**数式、情報源、前提条件については、仕組みとコーチングレビューをご覧ください。
**データはお使いのコンピューターに保存されます。**アシスタントと共有したり、ご自身で Strava に投稿したりしない限り、アップロードされることはありません。
ドキュメント
- ユーザーガイド:すべてのページと機能について。
- 仕組み:モデル、数式、前提条件について。
- コーチングレビュー:プランの変更を確認する方法について。
- 能力計画、筋力の能力、スターターモデル。
- 自転車のセットアップ、個人用の音楽と動画。
- 12週間のプログラム、日ごとの記録:あるシミュレーションアスリートのシーズン(以前のバージョンで記録)。
- 変更履歴。
開発
python tests/run_all.py # every test; macOS-only tests are skipped elsewhere
テストは、各システムのセットアップスクリプトを使ってインストールし、プッシュのたびに GitHub Actions で Linux、macOS、Windows 上で実行されます。
プライバシー
記録はお使いのコンピューターに保存されます。このハブが外部に行うリクエストは、屋外セッションの気温を任意で取得する場合のみです。この機能は有効にするまでオフで、場所を約 10 km 単位に丸めた情報と日付をOpen-Meteoに送信し、取得した情報はローカルにキャッシュします。ライドモードのカメラによる傾き検出も、有効にするまでオフです。カメラが確認するのは頭と肩の位置だけで、動画はブラウザー内にとどまり、表示、記録、送信されることはありません。クラウド AI アシスタントには共有することを選んだ情報が送られます。ローカルモデルでは、会話全体がお使いのコンピューターに保存されます。
⚠️ 安全について
トレーニングの数値は推定値であり、医学的な助言や怪我の予測ではありません。プログラムを始める前に医師に相談し、痛みを感じたら中止してください。息切れや心拍数の異常がある場合は、すべてのトレーニングを控え、医師の診察を受けてください。自転車との接続は実際の機器の負荷を変化させます。安全にペダリングを止められる手段を確保してください。
コミュニティ
**Strava の S-Bike Training Hub クラブ**に参加して、ハブを使う人たちとライド、スイム、ランニングを楽しみ、次に追加してほしい機能をお知らせください。アプリでは、コーチページの上部にある Community ↗ を選ぶと、ブラウザーでクラブが開きます。質問やバグの報告はGitHub のイシューへお寄せください。
クレジットとライセンス
JHarp199345 が Claude と ChatGPT を使って作成しました。このハブは、OpenStreetMap、Protomaps、MapLibre、BRouter、Mapzen terrain、Three.js、body-highlighter、Kenney、Quaternius、および多くのオープンソース Python パッケージを活用しています。ライセンスを含む完全な一覧は、**CREDITS.md**をご覧ください。
Ride World のオプションモジュール
このハブはゲームをインストールしなくても動作します。無料の景色は引き続き Ride メニューから利用できます。公式の署名済みモジュール ZIP をダウンロードし、Ride → Add a module を選んでください。インストールする前に、モジュールが要求する読み取り情報と操作を確認してください。ゲームファイルは別途配布されており、このリポジトリには含まれていません。セキュリティ:モジュールをご覧ください。
このハブには、MIT ライセンスの下で、スレッドなしの Godot 4.7.1 ブラウザーランタイムが含まれています。モジュールをプレイするために Godot エディターをインストールする必要はありません。
Ride World ゲーム
Hub は無料で、ゲームモジュールがなくても動作します。Monster Chase は現在、任意の寄付に対応した無料のシングルプレイヤー向けアドオンとして公開されています:https://jharp199345.itch.io/monster-chase
Ride メニューで、ゲームの ZIP を Add a module にドロップし、アクセス権を確認してインストールします。Monster Chase の寄付版にライセンスキーや支払いは必要ありません。このゲームはスタンドアロンアプリではありません。モジュールインストーラーとランタイムを利用するには、Hub を 1.12.1 以降に更新してください。
モジュールの実行前に、署名とファイルのフィンガープリントが確認されます。顧客記録、キー、非公開の設計メモが Hub のリリースに含まれることはありません。
開発を支援する
Hub やゲームがお役に立った場合は、Ko-fi でコーヒーをおごることで支援できます。支援は任意です。Hub の控えめなヘルプバッジは、新しいモジュールで 3 回ライドした後、ライド終了時に一度だけ案内を表示します。案内を閉じるか、Don’t ask again を選択できます。回数はブラウザー内に保存されます。ヘルプとフィードバックはバッジから引き続き利用でき、公開 GitHub イシューを開く前に、明示的なプレビューが表示されます。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。