mcpField
B
Boardsesh Climbing Logbook

Boardsesh Climbing Logbook

ローカル
github.comヘルスケア05 週間前に更新

Boardsesh Climbing Logbook について

boardsesh-mcp は Boardsesh のクライミング記録を扱う非公式の読み取り専用 MCP サーバーで、複数のボードでのセッションを分析したいクライマー向けです。進捗の集計やボード間の比較ができ、任意の認証情報を設定すると課題の推薦なども利用できます。

主な機能

  1. 01登攀記録とセッションの集計
  2. 02ボード、角度、結果による記録の絞り込み
  3. 03正規化されたグレードのボード間比較
  4. 04グレード分布と進捗の分析
  5. 05認証情報による課題検索と推薦
  6. 06ホールド使用状況のヒートマップ

活用シーン

  1. 01直近のセッション確認と長期的な進捗追跡
  2. 02Kilter と Tension での実績比較
  3. 03未完了プロジェクトの管理と類似課題の検索
  4. 04現在のレベルに合う次の課題探し

MCP 対応

Boardsesh のログを読み取り、分析するツールを MCP サーバーとして提供します。課題検索、推薦、類似課題の検索、ホールドヒートマップには Boardsesh のログイン情報が必要です。すべてのツールは読み取り専用です。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"wmmg101-boardsesh": {
"command": "uvx",
"args": [
"boardsesh-mcp"
],
"env": {
"BOARDSESH_USER": "<BOARDSESH_USER>",
"BOARDSESH_EMAIL": "<BOARDSESH_EMAIL>",
"BOARDSESH_PASSWORD": "<BOARDSESH_PASSWORD>",
"BOARDSESH_TIMEZONE": "<BOARDSESH_TIMEZONE>"
}
}
}
}
起動コマンドuvx boardsesh-mcp
設定が必要な環境変数
BOARDSESH_USERYour Boardsesh display name or user id. No password needed.
BOARDSESH_EMAILシークレットOptional: Boardsesh account email, to unlock recommendations, search and the hold heatmap
BOARDSESH_PASSWORDシークレットOptional: Boardsesh account password, used once to obtain a token
BOARDSESH_TIMEZONEIANA timezone for grouping climbs into days (default: host timezone)

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypiboardsesh-mcp0.1.0

ツール

12

掲載時のツール一覧 · 2 週間前に更新

このツールにパラメーターはありません。

詳細

boardsesh-mcp

AI エージェントが、登ったことのあるすべてのボード(Kilter、Tension、MoonBoard、Decoy、Touchstone、So iLL、Woods、スプレーウォール)にわたって、あなたのBoardseshのクライミング記録を読み取り、分析できる非公式のMCPサーバーです。

前回のセッションはどうでしたか? KilterとTensionでは、どちらのほうが強いですか? 40°でのプロジェクトは何ですか? 今の自分のレベルなら、次に何を試すべきですか? グレードのピラミッドを見せてください。避けているホールドはどれですか?

読み取り専用です。Boardseshアカウントに書き込むことは一切ありません。

パスワードを渡す必要はありません。 Boardseshはクライミング記録を公開しているため、表示名だけでほとんどの機能を利用できます。認証情報は任意で、利用できる機能が追加されるだけです。

エージェントに追加する

Kiro

MCP設定を開き(コマンドパレット → Kiro: ユーザーMCP設定を開く(JSON))、次を追加します。

{
  "mcpServers": {
    "boardsesh": {
      "command": "uvx",
      "args": ["boardsesh-mcp"],
      "env": {
        "BOARDSESH_USER": "Your Boardsesh Display Name"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}

これで設定は完了です。BOARDSESH_USERには、Boardseshプロフィールの表示名を指定します(希望する場合はユーザーIDでも構いません)。uvのインストールが必要です。uvxはuvに同梱されています。

その他のクライアント

どのクライアントでも、必要な情報は同じ3つです。コマンドはuvx、引数は["boardsesh-mcp"]、環境変数はBOARDSESH_USERです。Claude Desktop、Claude Code、Codex、Cursor、VS Code、Windsurf、Gemini CLI、Zed向けの設定をコピーして貼り付けるには、docs/clients.mdをご覧ください。

任意:残りの機能を有効にする

4つのツールでは、使用している物理ボードのセットアップ(レイアウト、サイズ、ホールドセット)を把握する必要がありますが、この情報を見られるのはログイン中の所有者だけです。これらのツールを有効にするには、Boardseshのログイン情報を追加します。

"env": {
  "BOARDSESH_USER": "Your Display Name",
  "BOARDSESH_EMAIL": "${BOARDSESH_EMAIL}",
  "BOARDSESH_PASSWORD": "${BOARDSESH_PASSWORD}"
}

該当する4つのツールは、boardsesh_recommend_climbs、boardsesh_search_climbs、boardsesh_find_similar_climbs、boardsesh_get_hold_heatmapです。それ以外のすべての機能は、これらの情報なしで利用できます。詳しくは環境変数の設定方法をご覧ください。

任意:タイムゾーン

セッションは、サーバーを実行しているマシンから検出したタイムゾーンに基づき、暦日ごとにまとめられます。タイムゾーンが正しくない場合は、"BOARDSESH_TIMEZONE": "Europe/Rome"(任意のIANA名)を追加してください。

質問の例

Summarise my Boardsesh logbook.
How did my last session go?
Compare my climbing on Kilter and Tension — where am I actually stronger?
What are my current projects, and which have I tried the most?
Show my grade pyramid and my flash rate per grade.
Have I improved over the last six months?
What should I try next at my level?
Find climbs similar to the one I sent yesterday.
Which holds show up most in climbs one grade above me?

エージェントが利用できるツール

BOARDSESH_USERだけで利用できます。

ツール返される内容
boardsesh_get_summary全ボードの合計:完登数、フラッシュ数、セッション数、期間、最難完登
boardsesh_get_ascentsクライミング記録。ボード、角度、結果、期間で絞り込み可能
boardsesh_get_sessions日ごとにまとめた記録
boardsesh_get_projects試登したものの完登していない課題。ボード、課題、角度ごと
boardsesh_compare_boardsボードごとに1行で表示。ボード間でグレードを正規化
boardsesh_get_grade_pyramidグレードごとの完登数とフラッシュ率
boardsesh_get_progression月ごと、または週ごとの推移
boardsesh_get_gradesボードのグレード尺度(難易度IDからラベルへの対応)

BOARDSESH_EMAIL / BOARDSESH_PASSWORDが必要です。

ツール返される内容
boardsesh_recommend_climbs次に試す課題:自分のレベルに合った課題、人気課題、隠れた名課題、新着課題
boardsesh_search_climbs名前、グレード範囲、ベンチマーク、人気度でカタログを検索
boardsesh_find_similar_climbs指定した課題とホールドを共有する課題
boardsesh_get_hold_heatmap壁の課題で使われているホールド。苦手な部分を見つけるのに役立ちます

データの解釈方法

  • ログブックの1件の記録は、1つのボードで、1つの角度で、1回のセッションに登った1つの課題を表し、トライ数も含みます。記録は重複排除されないため、同じ課題が何度も記録されることがあります。
  • status が正確な状態を示します。flash(1トライ目で完登)、send(トライを重ねて完登)、または attempt(未完登)のいずれかです。トライ数から状態が推測されることはありません。
  • プロジェクトとは、トライしたものの未完登の (board, climb, angle) です。別の角度で完登しても、プロジェクトからは削除されません。
  • grade はボード独自のグレード、difficulty_id は生の ID です。ボードごとのグレードはボード間で比較できないため、boardsesh_compare_boards が使用するのは boardsesh_grade(Boardsesh によるボード間比較用の正規化された数値)です。実際の完登記録による裏付けがなく、Boardsesh の信頼度が十分でない場合は null になります。
  • 「セッション」とは、ユーザーのタイムゾーンにおける1暦日です。

セキュリティとプライバシー

  • デフォルト設定では、漏洩する秘密情報はありません。設定するのは公開表示名のみで、読み取られる情報はすべて、Boardsesh のプロフィールですでに公開されているものです。
  • 認証情報を追加した場合は、Boardsesh 独自のログインエンドポイントからトークンを取得するために、一度だけ使用されます。トークンはプロセスの実行中のみメモリ上に保存され、ディスクには書き込まれません。
  • 認証情報とトークンがツールの出力、ログ、エラーメッセージに含まれることはありません。
  • サーバーは ws.boardsesh.com と www.boardsesh.com とのみ通信します。テレメトリーはありません。
  • すべてのツールは読み取り専用で、GraphQL レイヤーから送信できるのは固定された読み取りクエリのみです。ミューテーションに到達するコードパスはありません。
  • エージェントが何個のツールを呼び出しても、ログブックの取得は1分に1回までです。

トラブルシューティングでは、同じ環境変数を設定して uvx boardsesh-mcp --check を実行してください。件数と設定のみが出力され、記録や秘密情報は含まれないため、問題として投稿しても安全です。

Boardsesh および kilter-mcp との関係

Boardsesh は、複数のボードのログブックを集約して API を公開する、Apache-2.0 ライセンスのオープンソースのボードクライミングアプリです。このプロジェクトは、メンテナーの提案を受けて開発された独立した MCP クライアントですが、公式の Boardsesh 製品ではありません。また、ここで発生したバグの責任は私にあり、Boardsesh にはありません。

Kilter Board だけで登り、Boardsesh を使わない場合は、kilter-mcp を使うと Kilter に直接接続できます。複数のボードを使う場合は、ボード間を比較できるため、boardsesh-mcp のほうが適しています。

コントリビューション

Issue とプルリクエストを歓迎します。CONTRIBUTING.md をご覧ください。セキュリティに関する報告は SECURITY.md からお願いします。

ライセンス

MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。