mcpField
C
Camptocamp

Camptocamp

ローカル
github.com/olaurendeau地図・旅行13 週間前に更新

Camptocamp について

Camptocampは、登山者やアウトドア愛好家向けに、公開されているCamptocamp.orgの情報をLLMから読み取り専用で検索できるMCPサーバーです。値がない場合は推測せず、出典リンクを返します。

主な機能

  1. 01ルートの検索と難易度・説明の確認
  2. 02山頂、山小屋、標高の検索
  3. 03山行記録と最近の状況の検索
  4. 04エリア、ガイドブック、記事の検索

活用シーン

  1. 01山頂の標高やルート評価の確認
  2. 02ルートの最近の報告状況の把握
  3. 03エリア内の登山ルート探し
  4. 04関連するガイドブックや記事の検索

MCP 対応

公開Camptocamp APIの登山情報を、読み取り専用のツールとしてMCPクライアントに提供します。ツールの結果には引用用のCamptocamp.orgリンクが含まれます。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"olaurendeau-mcp-camptocamp": {
"command": "npx",
"args": [
"-y",
"@olaurendeau/mcp-camptocamp"
]
}
}
}
起動コマンドnpx -y @olaurendeau/mcp-camptocamp

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

パッケージ
npm@olaurendeau/mcp-camptocamp1.4.0
ocighcr.io/olaurendeau/mcp-camptocamp:1.4.0

ツール

15

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

パラメーター型必須説明
langenumいいえタイトルとテキストの言語。指定可能な値:fr、en、de、it、es、ca、eu、sl、zh(デフォルト fr)fr | en | de | it | es | ca | eu | sl | zh
limitintegerいいえ結果の最大件数
querystringいいえルートの検索クエリ(例:'Mont Blanc voie normale')。ルート名('<summit> : <route title>')のみが対象で、説明文は検索されません
offsetintegerいいえページ送りでスキップする結果数(offset + limit ≤ 10,000)
area_idintegerいいえsearch_areas から取得する Camptocamp のエリア ID(例:Écrins は 14403)
activityenumいいえアクティビティ。指定可能な値:skitouring、snow_ice_mixed、mountain_climbing、rock_climbing、ice_climbing、hiking、snowshoeing、paragliding、mountain_biking、via_ferrata、slackliningskitouring | snow_ice_mixed | mountain_climbing | rock_climbing | ice_climbing | hiking | snowshoeing | paragliding | mountain_biking | via_ferrata | slacklining
rating_maxstringいいえ含める最高難度。rating_system の評価尺度から指定します(例:global_rating では 'AD')
rating_minstringいいえ含める最低難度。rating_system の評価尺度から指定します(例:ski_rating では '3.1')
route_typesarrayいいえルートタイプ。以下のいずれかに一致します:return_same_way、loop、loop_hut、traverse、raid、expedition
waypoint_idintegerいいえsearch_waypoints から取得する Camptocamp waypoint ID。この山頂、山小屋、岩場などに関連するルート(例:Mont Pourri は 37916)
configurationarrayいいえ地形構成。以下のいずれかに一致します:edge、pillar、face、corridor、goulotte、glacier(edge = arête/稜線)。タグ付けは不完全です。構成が設定されていないルートは除外され、一部の稜線は pillar または glacier としてタグ付けされています。稜線を検索する場合は、query に 'arête' を指定する方法もあります。名前のみが一致対象となるため、名前に 'arête' を含む山頂のルートも一覧に含まれます。
rating_systemenumいいえ絞り込みに使用する評価システム。rating_min および/または rating_max と併用します(範囲の境界を含み、1 回の呼び出しにつき 1 システム。ski_rating は Toponeige のスキー評価)。各システムの有効値を易しい順に示します:ski_rating:1.1、1.2、1.3、2.1、2.2、2.3、3.1、3.2、3.3、4.1、4.2、4.3、5.1、5.2、5.3、5.4、5.5、5.6;ski_exposition:E1、E2、E3、E4;labande_ski_rating:S1、S2、S3、S4、S5、S6、S7;labande_global_rating:F、F+、PD-、PD、PD+、AD-、AD、AD+、D-、D、D+、TD-、TD、TD+、ED-、ED、ED+、ED4、ED5、ED6、ED7;global_rating:F、F+、PD-、PD、PD+、AD-、AD、AD+、D-、D、D+、TD-、TD、TD+、ED-、ED、ED+、ED4、ED5、ED6、ED7;engagement_rating:I、II、III、IV、V、VI;risk_rating:X1、X2、X3、X4、X5;equipment_rating:P1、P1+、P2、P2+、P3、P3+、P4、P4+;rock_free_rating:2、3a、3b、3c、4a、4b、4c、5a、5a+、5b、5b+、5c、5c+、6a、6a+、6b、6b+、6c、6c+、7a、7a+、7b、7b+、7c、7c+、8a、8a+、8b、8b+、8c、8c+、9a、9a+、9b、9b+、9c、9c+;rock_required_rating:2、3a、3b、3c、4a、4b、4c、5a、5a+、5b、5b+、5c、5c+、6a、6a+、6b、6b+、6c、6c+、7a、7a+、7b、7b+、7c、7c+、8a、8a+、8b、8b+、8c、8c+、9a、9a+、9b、9b+、9c、9c+;exposition_rock_rating:E1、E2、E3、E4、E5、E6;aid_rating:A0、A0+、A1、A1+、A2、A2+、A3、A3+、A4、A4+、A5、A5+;ice_rating:1、2、3、3+、4、4+、5、5+、6、6+、7、7+;mixed_rating:M1、M2、M3、M3+、M4、M4+、M5、M5+、M6、M6+、M7、M7+、M8、M8+、M9、M9+、M10、M10+、M11、M11+、M12、M12+;via_ferrata_rating:K1、K2、K3、K4、K5、K6;hiking_rating:T1、T2、T3、T4、T5;hiking_mtb_exposition:E1、E2、E3、E4;snowshoe_rating:R1、R2、R3、R4、R5;mtb_up_rating:M1、M2、M3、M4、M5;mtb_down_rating:V1、V2、V3、V4、V5。選択した評価の値がないルートは除外されます。ski_rating | ski_exposition | labande_ski_rating | labande_global_rating | global_rating | engagement_rating | risk_rating | equipment_rating | rock_free_rating | rock_required_rating | exposition_rock_rating | aid_rating | ice_rating | mixed_rating | via_ferrata_rating | hiking_rating | hiking_mtb_exposition | snowshoe_rating | mtb_up_rating | mtb_down_rating
height_diff_up_maxintegerいいえ標高差の上限(メートル、値を含む。標高差のないルートは除外)
height_diff_up_minintegerいいえ標高差の下限(メートル、値を含む。標高差のないルートは除外)

詳細

mcp-camptocamp

LLM が推測ではなく、Camptocamp.org で山岳ルート、山頂、山小屋、山行記録を検索できる MCP サーバーです。

CI Contract npm version npm downloads MCP registry Node License GHCR

できること

山頂の標高やスキーツアーの難易度を LLM に尋ねると、記憶を頼りに答えて間違えることがあります。このサーバーを使うと、共同運営の登山サイトである Camptocamp.org に読み取り専用でアクセスできます。難易度や説明付きのルート、標高付きの山頂や山小屋、現地で確認された状況を記した山行記録、エリア、ガイドブック、記事を検索できます。すべてのツール出力は Camptocamp の公開 API から取得され、引用用の camptocamp.org へのリンクが付いています。Camptocamp にない情報は推測せず、省略します。アカウントも API キーも必要ありません。

公開サーバー(v1.3.0)に対して実行した、2026 年 10 月の会話例です。回答の表は先頭 5 行まで掲載しています。

プロンプト: l'aiguille verte で最も多く登られたルートのトップ 10 を教えてください。回答は非常に簡潔にしてください。

camptocamp を 20 回呼び出しました

Camptocamp に記録されたサイト開設以来の山行数による、Aiguille Verte のルートトップ 10:

#ルート難易度山行数
1Couloir WhymperAD+241
2Couloir CouturierD92
3Arête du JardinD-33*
4Arête des Grands MontetsD24
5Arête du MoineAD+22*
…残り 5 行

* 2 つの数値は実際より多くなっています。Arête du Jardin の数には、Aiguille du Jardin で終了し、Verte まで到達しない縦走が含まれています。Arête du Moine の数には、下山ルートとしてのみ利用された山行が含まれています。

これらは camptocamp の記録であり、実際の登頂数ではありません。

クイックスタート

サーバーはお使いのマシン上で動作し、MCP クライアントが stdio 経由で起動します。Node.js 22 以降が必要な npx、または Docker を使用して実行してください。

npx。 Claude Desktop(claude_desktop_config.json)、Gemini CLI(settings.json)、Cursor(.cursor/mcp.json)など、mcpServers JSON オブジェクトで設定するクライアントには、次のエントリーを追加してください。

{
  "mcpServers": {
    "camptocamp": {
      "command": "npx",
      "args": ["-y", "@olaurendeau/mcp-camptocamp"]
    }
  }
}

Claude Code では、次のコマンドで全プロジェクトに追加できます。

claude mcp add --transport stdio --scope user camptocamp -- npx -y @olaurendeau/mcp-camptocamp

Docker。 代わりに次のエントリーを使用してください。イメージは amd64 と arm64 で動作します。

{
  "mcpServers": {
    "camptocamp": {
      "command": "docker",
      "args": ["run", "--rm", "-i", "ghcr.io/olaurendeau/mcp-camptocamp:latest"]
    }
  }
}

初回起動時にはパッケージまたはイメージがダウンロードされるため、クライアントの起動タイムアウトを超える場合があります。はじめにでは、事前ダウンロード方法、スモークテスト、Claude Code 用の Docker コマンドを紹介しています。サーバーが表示されない場合は、トラブルシューティングをご覧ください。

このサーバーは、公式 MCP レジストリに io.github.olaurendeau/mcp-camptocamp として登録されています。

対応クライアント

クライアント動作するか設定
Claude DesktopはいClaude Desktop
Claude CodeはいClaude Code
ChatGPT デスクトップアプリ、Codex CLI、Codex IDE 拡張機能はいChatGPT デスクトップアプリと Codex
Mistral Vibe Code CLI と VS Code 拡張機能はいMistral Vibe Code
Gemini CLI、Gemini Code Assistはい:信頼済みフォルダー内の CLI、エージェントモードの Code AssistGemini CLI と Gemini Code Assist
独自のエージェント:OpenAI Agents SDK、Mistral Python SDK、google-genaiはいエージェント SDK
Cursor、およびローカルコマンドを起動するその他のクライアントはいはじめに
Claude.ai カスタムコネクター、Vibe WorkHTTP 経由でホストするインスタンスがある場合(v1.4.0 以降)HTTP 経由のセルフホスト
ChatGPT ウェブ版、Gemini APIいいえ:リモートサーバーのみリモート専用クライアント

対応状況一覧には、クライアントの各ページとエージェント SDK ガイドで扱っているクライアント、および各ページをベンダーのドキュメントと照合した最終確認日が記載されています。

ツール

読み取り専用ツールが15個あります。Camptocampの各種ドキュメントについて、種類ごとに検索ツールと詳細取得ツールが1つずつあるほか、ユーザーの山行をまとめて取得するショートカットの get_outings と、月、年、またはコンディションごとに山行数を数える outing_stats があります(この2つはv1.4.0から)。検索結果にはIDが含まれます。get_* ツールにはIDを指定します。すべてのツールで、タイトルとテキストの言語を指定する lang を受け取ります(デフォルトは fr。v1.3.0以降)。

ツール機能
search_routesキーワード、エリア、ウェイポイント、アクティビティ、評価、標高差、ルートの種類または構成でルートを検索します。ページ分割に対応しています。
get_routeIDでルートを1件取得します。評価、標高、実用情報、説明、エリア、書籍、ウェイポイント、最近の山行が含まれます。
search_waypoints名前やエリアで、山頂、山小屋、峠、岩場などのウェイポイントを検索します。種類を指定することもできます。ページ分割に対応しています。
get_waypointIDでウェイポイントを1件取得します。標高、GPS座標、山小屋の詳細、アクセス、エリア、ルート、書籍、山行が含まれます。
search_outingsキーワード、エリア、アクティビティ、評価、コンディション、標高、日付、ルート、ウェイポイントまたはユーザーで山行記録を検索します。
search_user_outingsユーザーIDで、Camptocampユーザーが参加者として記載されている山行を検索します。search_outings の別名です。
get_outingIDで山行を1件取得します。報告された評価とコンディション、天気、記録テキスト、参加者、ルートが含まれます。
get_outingsIDを指定して最大10件の山行を get_outing 形式で取得します(v1.4.0から)。セクションは2,000文字で切り捨てられ、最大8,000文字まで取得できます(v1.4.0には含まれません)。
outing_statssearch_outings の検索結果を、開始月、年、コンディション(v1.4.0から)、そのうち2つの組み合わせ、またはルートごとに集計します(v1.4.0には含まれません)
search_areas名前で山域、行政区画、国を検索します。取得したIDは area_id として再利用できます。
get_areaIDでエリアを1件取得します。種類、概要、説明が含まれます。
search_booksタイトル、書籍の種類、アクティビティでガイドブックなどの書籍を検索します。著者名とISBNによる検索は不正確です。
get_bookIDで書籍を1件取得します。著者、編集者、日付、ISBN、言語、ウェイポイント、記事が含まれます。ルートは1回の呼び出しにつき50件です(v1.4.0には含まれません)。
search_articlesキーワードで記事(装備、技術、環境、体験談)を検索します。カテゴリー、種類、アクティビティによる検索はv1.4.0から対応しています。
get_articleIDで記事を1件取得します。テキスト、著者、種類、および記事に関連付けられたルート、ウェイポイント、記事、山行、書籍が含まれます。

各ツールのページには、登録済みスキーマから生成された入力項目、出力形式、実際の使用例、制限事項が記載されています。ツールリファレンスをご覧ください。

ガイド

  • LLM でツールを使用する:地域、山頂の標高、山小屋、最近の状況、ガイドブックに応じて連携するツール、各出力行の意味、実際の6月のスキーツアーの例を紹介します。
  • システムプロンプト:エージェントに貼り付けるプロンプトです。モデルがCamptocampを引用して出典を明記し、値が欠けている場合にその旨を伝えるようにします。
  • HTTP 経由のセルフホスト:Claude.aiやVibe Work(v1.4.0以降)など、URLのみを受け付けるクライアント向けに、秘密のトークンで保護されたインスタンスをホストします。
  • ドキュメントの目次:トピック別にすべてのページを掲載しています。

開発

すべての処理はMakefileを介してDocker内で実行されるため、ローカルにNode.jsをインストールする必要はありません。make checkでは、CIのchecksジョブと同じ手順(フォーマット、Lint、型チェック、カバレッジしきい値(行・関数・文で95%、分岐で90%)を適用したテスト、ビルド、フックのテスト)が実行されます。 すべての変更は、レビュー済みのプルリクエストを通じて取り込まれます。CONTRIBUTING.md(フランス語)と、makeのターゲット、ライブAPIのコントラクトテスト、リリース、スタックについて説明する開発を参照してください。

ライセンス

MIT

コメント

MCP は初めてですか?

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

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