mcpField
O
openvan-travel

openvan-travel

リモート
github.com/openvancamp地図・旅行02 日前に更新
リポジトリ

openvan-travel について

openvan-travelは、燃料、ルート、ビザ、天気などの旅行データを扱う公開APIです。登録不要で利用でき、旅行全体のロードブック作成を含む30個の読み取り専用MCPツールを提供します。

主な機能

  1. 01燃料価格とルート費用
  2. 02有料道路と通行料金
  3. 03休日、交通、旅行上の危険情報
  4. 04天気適性と気候データ
  5. 05ビザ、税関、車両規則
  6. 06イベント、ニュース、通貨データ

活用シーン

  1. 01複数国を巡るバンライフ旅行の計画
  2. 02ルートの燃料費と通行料の見積もり
  3. 03目的地の入国規則と車両規則の確認
  4. 04天気、為替、食費の比較

MCP 対応

https://mcp.openvan.camp/mcpでホスト型MCPサーバーを提供し、ローカルでも実行できます。30個の読み取り専用ツールで旅行データの検索や旅行全体のロードブック作成を行えます。

設定

リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。

エンドポイントhttps://mcp.openvan.camp/mcp
インストールコマンドをコピー
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。

ツール

30
パラメーター型必須説明
fuelstringいいえ燃料。例:ディーゼル、ガソリン、LPG。
kidsintegerいいえ旅行する子どもの人数(子どもの海外渡航に必要な書類をチェックリストに追加します)。
petsintegerいいえ旅行するペットの数(ペットのパスポート、マイクロチップ、狂犬病予防接種、EU 抗体価検査の手順をチェックリストに追加します)。
tanknumberいいえタンク容量(リットル)。
localeenumいいえユーザーが入力に使用する言語(en、ru、de、fr、es、pt、tr)。呼び出しごとに設定してください。回答とインタラクティブカードはこの言語と単位で表示されます。設定しない場合、カードにはアプリの UI 言語が使用されます。en | ru | de | fr | es | pt | tr
platesstringいいえ車両のナンバープレートの国(ISO alpha-2)。入国禁止措置とグリーンカードの要件はこれに依存します。
weightenumいいえ車両重量:le35(3.5 t 以下)または gt35。le35 | gt35
currencystringいいえ予算の通貨(ISO 4217)。デフォルトは EUR です。
passportsstringいいえ旅行者のパスポート(カンマ区切りの ISO alpha-2 コード。例:RU または DE,RU)。ビザ要件の判定とシェンゲン滞在日数カウンターに使用します。
residencestringいいえ旅行者の滞在許可証(ISO alpha-2)。パスポートと同じ順序で指定します(1 つのコードは全員に適用されます)。例:DE。シェンゲン協定加盟国の滞在許可証があれば、ビザとシェンゲン協定内の 90/180 日カウントが不要になります。
waypointsarrayはい旅行順に並べた 2~10 か所の目的地:都市または国(国の場合は首都を指します)。例:["Munich", "Venice"]。
round_tripbooleanいいえ同じルートを通って出発地点に戻ります。
start_datestringいいえ出発日(YYYY-MM-DD)。祝日、日ごとの天気、ビザの期限を確認できます。
avoid_tollsbooleanいいえ有料道路を避けるルート。
consumptionnumberいいえ燃費(100 km あたりのリットル数)。
hours_per_dayintegerいいえ日ごとの計画における1日の運転時間。デフォルトは6時間。
vehicle_classenumいいえcar;van = 3.5 t 以下のキャンピングカー/モーターホーム(デフォルト);heavy = 3.5 t 超。car | van | heavy

詳細

OpenVan.camp 公開 API

OpenVan.camp — あらゆる国のロードトリップデータを無料で利用できる API

npm の MCP サーバー npm の SDK npm のダウンロード数 データ:CC BY 4.0 CI 公開済みパッケージの動作確認 Glama の OpenVan.camp MCP サーバー

バンライフ向けデータを提供する無料・認証不要の API です。燃料価格、ルートの燃料費、高速道路料金、祝日と交通量の多い日、旅行中の危険情報、電源プラグ、税関規則、為替レート、食費指数、気象条件の適性スコア、ビザと車両輸入の規則、バンライフイベント、ニュース記事、世界各国のナンバープレートをすべてひとつの場所で提供します。登録も不要です。

ベース URL: https://openvan.camp
認証: 不要
CORS: 有効
ライセンス: データは CC BY 4.0、このリポジトリ内のコード(SDK、MCP サーバー、サンプル)は MIT です
クレジット表記が必要です: データを表示する場所には Data: <a href="https://openvan.camp/">OpenVan.camp</a> と記載してください。詳しくはクレジット表記をご覧ください

JavaScript/TypeScript SDK: @openvancamp/sdk — npm install @openvancamp/sdk。設定不要で型付け済み。Node.js/ブラウザー/エッジで動作します。SDK ドキュメント →

Python SDK: openvan — pip install openvan。依存関係なし、Python 3.9 以降に対応し、pandas と連携できます。Python ドキュメント →

毎日の CSV スナップショット: openvancamp/openvan-travel-data — 燃料価格、為替レート、食費指数、気象スコアを CSV/JSON 形式で提供します。1 日 1 回コミットされ、履歴も確認できます。

MCP サーバー(AI エージェント向け): mcp-server/ — Claude と ChatGPT でインタラクティブカードを利用できる、読み取り専用のツールが 30 個あります(plan_road_trip — 旅行全体のロードブックを含む)。https://mcp.openvan.camp/mcp でホストされているほか、Claude Desktop/Cursor/Windsurf では npx -y @openvancamp/mcp-server でローカル実行できます。インストールガイド → · AI エージェントガイド →

Gemini CLI 拡張機能: gemini extensions install https://github.com/openvancamp/openvan-camp-public-api でこのリポジトリをインストールします。ルートにある gemini-extension.json により、Gemini CLI はホストされた OpenVan.camp MCP サーバーに直接接続します。API キーは不要です。 コーディングエージェント向けプラグイン(Claude Code、Codex): ホスト型 MCP サーバーと、2 つのエージェントスキルです。openvan-travel は適切なツールを使って旅行に関する質問に答え、openvan-api は出典の明記、グレードごとの燃料単位、適切なキャッシュ処理を含め、この API を使ったコードを作成します。Claude Code:/plugin install openvan-camp --marketplace openvancamp/openvan-camp-public-api(または /plugin marketplace add openvancamp/openvan-camp-public-api を実行してから、/plugin install openvan-camp@openvan-camp)。Codex:codex plugin marketplace add openvancamp/openvan-camp-public-api を実行してから、Plugins Directory で OpenVan.camp をインストールします。あらゆるエージェントで使えるスキルのみのインストール:npx skills add openvancamp/openvan-camp-public-api。

AI アシスタントで、コード不要: Claude コネクター · ChatGPT アプリ · Telegram ボット @OpenVanCampBot — チャット内でインタラクティブカードとして同じデータを利用できます。接続方法 →


正式な情報源

リソース目的
この README概要とコード例をすばやく確認できます
/docs「Try it out」機能付きのインタラクティブなドキュメント
/docs.openapiOpenAPI 3.0 の完全な仕様(常に最新)
/docs.postmanPostman コレクション

/docs.openapi の OpenAPI 仕様は、稼働中のコードベースから生成される正式な仕様です。この README に記載されている数値(国の数、ストーリーの合計数)は概算で、定期的に更新されます。現在の合計数は /api/fuel/prices のメタ情報、または /api/stories のページネーションを確認してください。


エンドポイント

エンドポイント説明対応範囲
GET /api/fuel/prices小売燃料価格(ガソリン、ディーゼル、LPG、E85)160か国以上
POST /api/route-cost2~10か所の経由地を含むルートの燃料費。国別価格—
POST /api/roadbook/from-places2~10か所の地名から旅行全体のロードブックを作成:日ごとの計画、予算、国別の入国規則と車両規則を含み、共有可能なページを返します—
GET /api/roadbook/{code}/statusロードブックの作成状況(readyになるまでポーリング)—
GET /api/tolls/countries国別の有料道路:支払いシステム、車両クラス別の1 kmあたり料金、ビネット84か国
GET /api/tolls/route2~10か所の地名を含むルートの通行料金(乗用車、バン、大型車)、EURでの範囲—
GET /api/holidays/countries/{code}?from=&to=祝日、学校休暇(地域別)、交通量の多い日212か国
GET /api/hazards/countries/{code}英国FCDOの渡航勧告レベルと、現在のGDACS自然災害—
GET /api/hazards/fires?bbox=バウンディングボックス内(最大10°×10°)における、過去48時間のNASA FIRMSの活動中の火災全世界
GET /api/electricity/countries/{code}プラグの種類、商用電源の電圧と周波数、キャンプ場の電源接続(CEE17)229か国
GET /api/customs/countries/{code}?from=車で入国する際の税関規則:食品、現金、アルコール、タバコ、燃料携行缶—
GET /api/currency/ratesEURを基準とした為替レート150以上の通貨
GET /api/vanbasket/countries世界平均を基準とした食品価格指数(100 = 世界平均)90か国以上
GET /api/vanbasket/compare?from=DE&to=TR2か国間の食費を比較—
GET /api/vanbasket/countries/{code}単一の国と過去のスナップショット—
GET /api/vansky/weather7日間の天気予報を含む、バンライフ向け天気適性スコア(0~100)160か国以上
GET /api/vansky/weather/{code}1か国の海洋・日照データ—
GET /api/vansky/weather/{code}/{city}ページに掲載された都市の情報:今日と今週の天気、国内の位置、日ごとのスコア内訳、最も条件の悪い日、空気質、おすすめ(3時間単位の情報にはinclude=hourlyを指定)—
GET /api/vansky/weather/{code}/cities今週のスコア(サイト掲載と同じ)または今日の天気による、国内都市のランキング—
GET /api/vansky/ranking今週のスコアまたは今日の天気による、地域別の国ランキング160か国以上
GET /api/vansky/methodologyVanSkyスコアの計算方法:曲線、重み、調整。自分で再計算できます—
GET /api/vansky/climate?lat=&lng=&date=世界中の任意の場所における、年間の任意の日の典型的な天気(ERA5 2021–2025):気温、降水日数、空模様、海、日照、VanSky指数、月、最適な月全世界
GET /api/vansky/climate/{code}/{city}VanSkyの都市における同じ情報—
GET /api/visa/check?passport=RU&destination=TR入国規則:入国方法、滞在可能期間、日数の数え方、車両の輸入199か所
GET /api/visa/route?t=RU,GE,TR&p=RUルート全体のビザ規則。パスポートは最大10か国分—
GET /api/visa/passport/{code}1か国のパスポートで渡航できるすべての目的地—
GET /api/visa/vehicle/{place}その国の車両一時輸入規則—
GET /api/eventsバンライフイベント:展示会、フェスティバル、ミートアップ、ロードトリップ1,100件以上のイベント
GET /api/event/{slug}地理座標を含むイベントの詳細情報—
GET /api/event/{slug}/articlesイベントに関連付けられた出典記事—
GET /api/stories200以上の発行元から集約したニュース記事31,000件以上の記事
GET /api/story/{slug}すべての出典記事と直接リンクを含む記事の詳細—
GET /api/news/search?q=...ニュース記事のセマンティック検索—
GET /api/plates世界のナンバープレート:形式、地域コード、見本199か国
GET /api/plates/{code}/types国ごとのナンバープレートの種類(自家用、タクシー、オートバイ、外交官用など)。分類されていない場合は空—
GET /api/plates/{code}/plate.svgすぐに使えるナンバープレート画像(.pngも利用可能)。<img src>に指定できます—

クイックスタート

# Fuel prices
curl https://openvan.camp/api/fuel/prices

# Currency rates (EUR-based)
curl https://openvan.camp/api/currency/rates

# Food price index
curl https://openvan.camp/api/vanbasket/countries

# Upcoming vanlife events in Germany
curl "https://openvan.camp/api/events?country=DE&status=upcoming&locale=en"

# Latest vanlife news stories in English
curl "https://openvan.camp/api/stories?locale=en"

燃料価格 — /api/fuel/prices

45 以上の政府公式情報源から取得した、小売価格の週次データです。
キャッシュ TTL: 6 時間。ポーリングは 10 分間隔より短くならないようにしてください。

curl https://openvan.camp/api/fuel/prices
{
  "success": true,
  "data": {
    "DE": {
      "country_code": "DE",
      "country_name": "Germany",
      "region": "europe",
      "currency": "EUR",
      "local_currency": "EUR",
      "unit": "liter",
      "prices": {
        "gasoline": 1.79,
        "diesel": 1.69,
        "lpg": 0.89,
        "e85": null,
        "premium": null
      },
      "price_changes": { "gasoline": -0.02, "diesel": 0.01, "lpg": 0.0 },
      "fetched_at": "2026-04-05T10:00:00+00:00",
      "sources": ["EU Weekly Oil Bulletin", "Fuelo.net"],
      "sources_count": 2,
      "is_excluded": false
    }
  },
  "meta": {
    "total_countries": 121,
    "updated_at": "2026-04-05 10:00:00",
    "cache_ttl_hours": 6
  }
}

注:

  • unit はほとんどの国で "liter"、米国とエクアドルでは "gallon" です
  • is_excluded: true は、その国で燃料補助金が大規模に実施されていることを意味します(価格は市場価格を反映していません)
  • price_changes は先週の価格との差です

為替レート — /api/currency/rates

複数のオープンソースプロバイダーから取得した、EUR 基準の為替レートです。自動フォールバックに対応しています。
キャッシュ TTL: 25 時間。毎日 07:00 UTC に更新されます。

curl https://openvan.camp/api/currency/rates
{
  "success": true,
  "rates": {
    "EUR": 1,
    "USD": 1.08,
    "GBP": 0.85,
    "TRY": 38.5,
    "GEL": 2.95,
    "KZT": 510,
    "RUB": 98.5
  },
  "cached": true,
  "updated_at": "2026-04-08T07:00:00+00:00"
}

任意の通貨への換算:

const priceInUSD = (priceEUR / rates.EUR) * rates.USD;
const priceInTRY = (priceEUR / rates.EUR) * rates.TRY;

VanBasket 食料価格指数 — /api/vanbasket/*

世界平均(World = 100)と比較した、食料品バスケットの相対価格です。
World Bank ICP 2021 のデータに基づき、IMF CPI で調整されています。
データソース: CC BY 4.0

# All countries
curl https://openvan.camp/api/vanbasket/countries

# Compare two countries
curl "https://openvan.camp/api/vanbasket/compare?from=DE&to=TR"

# Single country with historical snapshots
curl https://openvan.camp/api/vanbasket/countries/DE
{
  "success": true,
  "data": {
    "CH": { "country_code": "CH", "country_name": "Switzerland", "vanbasket_index": 162.3, "pct_vs_world": 62.3 },
    "DE": { "country_code": "DE", "country_name": "Germany",     "vanbasket_index": 118.7, "pct_vs_world": 18.7 },
    "TR": { "country_code": "TR", "country_name": "Turkey",      "vanbasket_index":  82.4, "pct_vs_world": -17.6 },
    "GE": { "country_code": "GE", "country_name": "Georgia",     "vanbasket_index":  64.1, "pct_vs_world": -35.9 }
  },
  "meta": {
    "total_countries": 92,
    "world_avg": 100,
    "base_year": 2021,
    "source": "World Bank ICP 2021",
    "license": "CC BY 4.0"
  }
}

比較レスポンス:

{
  "success": true,
  "data": {
    "from": { "country_code": "DE", "country_name": "Germany", "vanbasket_index": 118.7 },
    "to":   { "country_code": "TR", "country_name": "Turkey",  "vanbasket_index":  82.4 },
    "diff_percent": -30.6,
    "budget_100": 69,
    "cheaper": true
  }
}

budget_100:from の国で食料に €100 を使う場合、to の国では €69 を使うことになります。


イベント — /api/events

展示会、フェスティバル、ミートアップ、ロードトリップなど、バンライフのイベントです。リアルタイムで更新されます。

クエリパラメーター:

パラメーター値デフォルト
localeen ru de fr es pt tren
statusupcoming ongoing past allupcoming
typeexpo festival forum meetup roadtrip—
countryISO 3166-1 alpha-2—
searchテキスト—
page整数1
limit整数(最大 100)30
# Upcoming events in Germany
curl "https://openvan.camp/api/events?country=DE&status=upcoming&locale=en"

# Event details
curl "https://openvan.camp/api/event/fit-camper-2026?locale=en"

# Source articles linked to an event
curl "https://openvan.camp/api/event/fit-camper-2026/articles?locale=en"
{
  "events": [
    {
      "id": 493,
      "slug": "fit-camper-2026",
      "event_name": "Fit Your Camper",
      "event_type": "expo",
      "event_type_label": "Exhibition",
      "start_date": "2026-04-09",
      "end_date": "2026-04-12",
      "city": "Bologna",
      "country_code": "IT",
      "country": { "code": "it", "name": "Italy", "flag_emoji": "🇮🇹" },
      "venue_name": "BolognaFiere",
      "status": "upcoming",
      "articles_count": 7,
      "url": "https://openvan.camp/en/event/fit-camper-2026"
    }
  ],
  "pagination": { "total": 48, "page": 1, "limit": 30, "pages": 2 }
}

注:

  • 不明または未指定の locale は、通知なく en にフォールバックします
  • /api/event/{slug}/articles は locale でフィルタリングしたソース記事を返します。一致する記事がない場合は、すべての記事が返されます(元の発行元の言語の場合があります)

ストーリー/ニュース — /api/stories

200 以上の発行元から集約し、7 言語に翻訳したバンライフのニュース記事です。各ストーリーには、同じトピックを扱う複数のソース記事がまとめられています。

クエリパラメーター:

パラメーター値デフォルト
localeen ru de fr es pt tren
categoryカテゴリースラッグ(例:camping、travel、gear、incident)—
countryISO 3166-1 alpha-2—
searchテキスト—
page整数1
limit整数(最大 50)20
# Latest stories in English
curl "https://openvan.camp/api/stories?locale=en"

# German vanlife news in Germany
curl "https://openvan.camp/api/stories?locale=de&country=DE"

# Full story with all source links
curl "https://openvan.camp/api/story/free-overnight-parking-netherlands?locale=en"
{
  "slug": "free-overnight-parking-netherlands",
  "title": "Free Overnight Parking for Motorhomes in the Netherlands",
  "summary": "The Dutch motorhome community is pushing for more designated free overnight spots...",
  "image_url": "https://...",
  "category": { "slug": "travel", "name": "Travel" },
  "countries": [{ "code": "nl", "name": "Netherlands", "flag_emoji": "🇳🇱" }],
  "first_published_at": "2026-04-01T10:00:00+00:00",
  "last_updated_at": "2026-04-03T08:00:00+00:00",
  "articles_count": 5,
  "url": "https://openvan.camp/en/news/travel/free-overnight-parking-netherlands",
  "sources": [
    {
      "title": "Gratis overnachten in je camper: de beste plekken",
      "original_url": "https://www.campermagazine.nl/overnachten/gratis-plaatsen",
      "source_name": "CamperMagazine.nl",
      "published_at": "2026-04-01T10:00:00+00:00",
      "language": "nl",
      "image_url": "https://..."
    }
  ]
}

注:

  • title と summary は、指定された locale に翻訳されます
  • sources[].language は locale にかかわらず、常に元の発行元の言語です
  • sources[].original_url は、発行元の記事への直接リンクです

ナンバープレート — /api/plates/*

世界各地のナンバープレート:プレート形式、地域ごとにまとめたすべての地域コード(ISO 3166-2 の単位を含む)、検証、そして画像としてのナンバープレートです。画像はopenvan.camp/en/license-platesと同じエンジンで描画されます。プレートの書体はベクターのアウトラインとして含まれているため、フォントのインストールは不要です。

最も簡単な方法は、通常の画像を使うことです。

<img src="https://openvan.camp/api/plates/ru/plate.svg?number=A123BC&region=77" alt="A123BC 77">
  • plate.png?width=800 — PNG、幅 200~2000 px、背景透過
  • 形の似たラテン文字は正規化されます(ロシアのナンバープレートでは A123BC → А123ВС)
  • 国の形式に合わない番号を指定すると 422 が返されます。任意の文字列(名前など)を描画するには custom=1 を追加してください
  • 画像は Cache-Control: public, max-age=31536000, immutable で配信されます。API が返す画像 URL には v=<engine version> が含まれるため、エンジンが更新されると新しい URL で配信されます
curl https://openvan.camp/api/plates                                        # countries
curl "https://openvan.camp/api/plates/ru?locale=en"                         # format, regions, codes, engine
curl "https://openvan.camp/api/plates/ru/validate?number=A123BC&region=799" # valid? which region?
curl https://openvan.camp/api/plates/ru/random                              # random plate + image URLs

プレートの種類 — 特殊なプレートには、それぞれ固有の色と番号形式があります。GET /api/plates/{code}/types で種類の一覧を取得できます(ロシアのナンバープレートの場合、private、赤色の diplomatic、青色の police、黒色の military、黄色の taxi_bus、motorcycle、trailer、tractor、export_transit)。それぞれに番号の例が含まれています。画像、/random、/validate に type を渡すと、レスポンスに使用された type が示されます。

curl "https://openvan.camp/api/plates/ru/random?type=police"                # a valid blue police plate + image URLs
curl "https://openvan.camp/api/plates/ru/validate?number=У7962&region=790&type=police"
<img src="https://openvan.camp/api/plates/ru/plate.svg?number=190Т307&region=23&type=diplomatic" alt="190 Т 307 23">

ブラウザーで独自にナンバープレートを描画する場合(インタラクティブなジェネレーターなど)は、/api/plates/{code} の data.engine.scripts に記載されたスクリプトを順番に読み込み、Plates.render(code, number, region) を呼び出してください。{svg}(SVG 要素)または {error} が返されます。

画像とエンジンを利用できるのは、プレートの書体を再配布できる国(glyphs_license: free または sharealike)です。それ以外の国でも、データエンドポイントは引き続き利用できます。 レート制限:画像と /random は 1 分あたり 60 リクエスト、その他は 1 分あたり 120 リクエストです。


ロードブック — /api/roadbook/from-places

旅程全体の計画を作成します。ウィザードで作成できるのと同じロードブックです。ルート、運転日と宿泊先、予算(燃料、通行料、ビネット、フェリー)に加え、経由する各国について、指定されたパスポートとナンバープレートに基づく入国規則と車両規則、祝日、安全情報、電源情報を含みます。同じリクエストには、常に同じロードブックが返されます。

# 1. Create (all inputs are optional)
curl -X POST "https://openvan.camp/api/roadbook/from-places?source=your-app" \
  -H "Content-Type: application/json" \
  -d '{"places":["Munich","Venice"],"locale":"en","inputs":{"travelers":["DE"],"cons":10,"fuel":"diesel"}}'
# → {"code":"wqhk8","url":"/en/roadbook/wqhk8-munich-venice","status":"pending","points":[...]}

# 2. Poll until "ready" (long routes take up to a minute), then open https://openvan.camp + url
curl https://openvan.camp/api/roadbook/wqhk8/status

IP アドレスごとに 1 分あたり 10 件のロードブックを作成できます。MCP ツール plan_road_trip はこれらすべてを処理し、計画そのものを返します。


祝日、危険情報、電源プラグ、税関

これから車で向かう国の旅行計画用データです。リストを返す各エンドポイントには /countries のインデックスがあります。翻訳された名称を取得するには locale を渡してください。

# Public, school (with ISO 3166-2 regions) and peak traffic days; kind=public|school|traffic
curl "https://openvan.camp/api/holidays/countries/FR?from=2026-10-01&to=2026-11-15"

# FCDO travel advice level + current GDACS disasters (flood, earthquake, cyclone, wildfire…)
curl https://openvan.camp/api/hazards/countries/TR

# NASA FIRMS fire detections of the last 48 h; bbox = minLon,minLat,maxLon,maxLat, up to 10°×10°
curl "https://openvan.camp/api/hazards/fires?bbox=-1,38,1,40"

# Plug types, voltage, frequency, campsite hook-up connector
curl https://openvan.camp/api/electricity/countries/GB

# Customs rules on entry by car, optionally from a given country; each rule quotes the official source
curl "https://openvan.camp/api/customs/countries/NO?from=DE"
  • 祝日または税関のデータがない国では、その旨を示すエラーが返されます。これは「祝日がない」または「制限がない」という意味ではありません
  • 危険情報は現在の状況を示すもので、予測ではありません。新しい地域の火災データは、最初のリクエストで「読み込み中です。1 分後に再試行してください」と返されることがあります

レスポンス形式

すべての JSON エンドポイントは、一貫したエンベロープ形式に従います。

{ "success": true, "data": { ... }, "meta": { ... }, "_attribution": { ... } }

すべてのレスポンスには _attribution オブジェクトが含まれます。

"_attribution": {
  "data_source": "openvan.camp",
  "license": "CC BY 4.0",
  "required": true,
  "attribution_url": "https://openvan.camp/",
  "attribution_html": "Data: <a href=\"https://openvan.camp/\">OpenVan.camp</a> (CC BY 4.0)",
  "instructions": "Attribution is required by the CC BY 4.0 license. ..."
}

エラー:

{ "success": false, "error": "Description of the error." }

Accept: application/json を指定せずに呼び出すと、一部のエラーレスポンスが HTML を返す場合があります。必ず次のヘッダーを送信してください。

Accept: application/json

レート制限

IP アドレスごとに 1 分あたり 120 リクエストです。節度を持ってご利用ください。

  • 燃料価格は少なくとも 6 時間キャッシュしてください
  • 為替レートは少なくとも 1 時間キャッシュしてください
  • ニュース/イベントは少なくとも 15 分間キャッシュしてください

クレジット表記

CC BY 4.0 ライセンスにより、クレジット表記が必須です。データを表示する場所(ウェブサイト、アプリ、ボット、ダッシュボード、記事)には、必ずその横に見やすいリンクを配置してください。

Data: <a href="https://openvan.camp/">OpenVan.camp</a> (CC BY 4.0)

同じスニペットは、各レスポンスの _attribution.attribution_html と、レスポンスヘッダー X-Attribution-Required にも含まれています。

AI コーディングエージェントで開発していますか? 生成する UI にこのリンクを残すよう指示してください。または、任意のレスポンスから _attribution.instructions を読み取らせることもできます。

インテグレーションを特定する

任意のリクエストに ?source=yoursite.com を付けてください。登録は不要です。指定した値は _attribution.your_source として返されるため、正常に動作しているか確認できます。

curl "https://openvan.camp/api/fuel/prices?source=myapp.com"
{
  "success": true,
  "data": { "..." },
  "meta": { "..." },
  "_attribution": {
    "data_source": "openvan.camp",
    "license": "CC BY 4.0",
    "required": true,
    "attribution_url": "https://openvan.camp/",
    "attribution_html": "Data: <a href=\"https://openvan.camp/\">OpenVan.camp</a> (CC BY 4.0)",
    "instructions": "Attribution is required by the CC BY 4.0 license. ...",
    "your_source": "myapp.com"
  }
}

これにより、データの利用状況を把握し、活発なプロジェクトを紹介できます。


OpenVanを利用して構築されたプロジェクト

APIを利用している公開プロジェクト:

プロジェクト概要利用データ
cyfuel燃料価格マップ。「効率的な給油」を、タンク代と給油所までの走行で消費する燃料費の合計で順位付けします(cyfuel.cybush.uk)燃料価格
DriveLog運転と燃料の記録用ウェブアプリ燃料価格
E-LogisticEU各国のディーゼル価格を掲載する物流プラットフォーム燃料価格

このデータを使って何かを構築しましたか?この表に追加するプルリクエストを送るか、Discussionsでお知らせください。

README用バッジ:

[![Data: OpenVan.camp](https://img.shields.io/badge/data-OpenVan.camp-467187)](https://openvan.camp/)

Data: OpenVan.camp


JavaScript / TypeScript SDK

npm install @openvancamp/sdk
# or: pnpm add @openvancamp/sdk
import { OpenVan } from "@openvancamp/sdk";

const ov = new OpenVan();

// Cheapest diesel in Europe (top 5, EUR-normalized)
const top5 = await ov.fuel.cheapest("diesel", 5);
top5.forEach(c => console.log(c.country_name, c.prices.diesel, c.currency));

// Is Portugal cheaper than Germany for van living?
const comp = await ov.basket.compare("DE", "PT");
console.log(`Portugal is ${Math.abs(comp.diff_percent)}% cheaper`);

// Vanlife weather suitability — top 10 countries right now
const weather = await ov.weather.top({ limit: 10 });

ESMネイティブで、完全に型付けされており(TypeScriptを含む)、Node.js ≥ 18、ブラウザー、Cloudflare Workers、Deno、Bunで動作します。APIキーは不要です。

npm: @openvancamp/sdk · SDKの全ドキュメント →


リソース

サイト上の同じデータ

国別の燃料価格 · パスポート・ビザチェッカー · ロードブック旅行プランナー · VanSky天気情報 · 食費指数 · バンライフイベント · バンライフニュース

コメント

MCP は初めてですか?

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

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