Skip to main content
Glama
openvancamp

OpenVan MCP Server

by openvancamp

OpenVan.camp Public API

Kostenlose API ohne Authentifizierung für Vanlife-Daten: Kraftstoffpreise, Währungskurse, Lebensmittelpreisindex, Vanlife-Events und Nachrichten – alles an einem Ort, keine Registrierung erforderlich.

Basis-URL: https://openvan.camp Authentifizierung: Keine erforderlich CORS: Aktiviert Lizenz: CC BY 4.0

JavaScript/TypeScript SDK: @openvancamp/sdk — npm install @openvancamp/sdk. Zero-Config, typisiert, Node.js / Browser / Edge. SDK-Dokumentation →

MCP-Server (für KI-Agenten): mcp-server/ — gehostet unter https://mcp.openvan.camp/mcp, auch npx -y mcp-remote https://mcp.openvan.camp/mcp für Claude Desktop / Cursor / Windsurf. Installationsanleitung →

Benutzerdefiniertes GPT: OpenVan Travel Assistant — live im ChatGPT GPT Store.


Was ist maßgeblich

Ressource

Zweck

Diese README

Kurzer Überblick und Code-Beispiele

/docs

Interaktive Dokumentation mit "Ausprobieren"-Funktion

/docs.openapi

Vollständiger OpenAPI 3.0-Vertrag (immer aktuell)

/docs.postman

Postman-Sammlung

Die OpenAPI-Spezifikation unter /docs.openapi wird aus der Live-Codebasis generiert und ist der maßgebliche Vertrag. Zahlen in dieser README (Länderanzahl, Gesamtanzahl der Artikel) sind Näherungswerte und werden regelmäßig aktualisiert – prüfen Sie /api/fuel/prices meta oder /api/stories Paginierung für aktuelle Summen.


Related MCP server: euenergy-mcp

Endpunkte

Endpunkt

Beschreibung

Abdeckung

GET /api/fuel/prices

Einzelhandelskraftstoffpreise (Benzin, Diesel, LPG, E85)

120+ Länder

GET /api/currency/rates

Wechselkurse relativ zum EUR

150+ Währungen

GET /api/vanbasket/countries

Lebensmittelpreisindex relativ zum Weltdurchschnitt (100 = Weltdurchschnitt)

90+ Länder

GET /api/vanbasket/compare?from=DE&to=TR

Vergleich der Lebensmittelkosten zwischen zwei Ländern

—

GET /api/vanbasket/countries/{code}

Einzelnes Land + historische Snapshots

—

GET /api/events

Vanlife-Events: Messen, Festivals, Treffen, Roadtrips

695 Events

GET /api/event/{slug}

Vollständige Event-Details mit Geokoordinaten

—

GET /api/event/{slug}/articles

Quellartikel, die mit einem Event verknüpft sind

—

GET /api/stories

Nachrichten aggregiert von über 200 Verlagen

8200+ Artikel

GET /api/story/{slug}

Vollständiger Artikel mit allen Quellartikeln und direkten Links

—


Schnellstart

# 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"

Kraftstoffpreise — /api/fuel/prices

Wöchentliche Einzelhandelspreise aus über 45 offiziellen Regierungsquellen. Cache-TTL: 6 Stunden. Bitte fragen Sie nicht häufiger als alle 10 Minuten ab.

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
  }
}

Hinweise:

  • unit ist "liter" für die meisten Länder, "gallon" für die USA und Ecuador

  • is_excluded: true bedeutet, dass das Land starke Kraftstoffsubventionen hat (Preise spiegeln nicht die Marktpreise wider)

  • price_changes = Delta gegenüber den Preisen der letzten Woche


Währungskurse — /api/currency/rates

EUR-basierte Wechselkurse von mehreren Open-Source-Anbietern mit automatischem Fallback. Cache-TTL: 25 Stunden. Täglich aktualisiert um 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"
}

In eine beliebige Währung umrechnen:

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

VanBasket Lebensmittelpreisindex — /api/vanbasket/*

Relative Kosten eines Lebensmittelkorbs im Vergleich zum Weltdurchschnitt (Welt = 100). Basierend auf den Weltbank-ICP-Daten von 2021, angepasst mit dem IWF-VPI. Datenquelle: 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"
  }
}

Vergleichsantwort:

{
  "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: Wenn Sie 100 € für Lebensmittel im from-Land ausgeben, würden Sie 69 € im to-Land ausgeben.


Events — /api/events

Vanlife-Events: Messen, Festivals, Treffen, Roadtrips. Echtzeit-Aktualisierung.

Abfrageparameter:

Parameter

Werte

Standard

locale

en ru de fr es pt tr

en

status

upcoming ongoing past all

upcoming

type

expo festival forum meetup roadtrip

—

country

ISO 3166-1 alpha-2

—

search

Text

—

page

Ganzzahl

1

limit

Ganzzahl (max 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 }
}

Hinweise:

  • Unbekannte oder fehlende locale fällt stillschweigend auf en zurück

  • /api/event/{slug}/articles gibt Quellartikel zurück, die nach locale gefiltert sind; wenn keine übereinstimmen, werden alle Artikel zurückgegeben (können in der Originalsprache des Verlags sein)


Geschichten / Nachrichten — /api/stories

Vanlife-Nachrichten, aggregiert von über 200 Verlagen und übersetzt in 7 Sprachen. Jede Geschichte bündelt mehrere Quellartikel, die dasselbe Thema behandeln.

Abfrageparameter:

Parameter

Werte

Standard

locale

en ru de fr es pt tr

en

category

Kategorie-Slug (z. B. camping, travel, gear, incident)

—

country

ISO 3166-1 alpha-2

—

search

Text

—

page

Ganzzahl

1

limit

Ganzzahl (max 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://..."
    }
  ]
}

Hinweise:

  • title und summary werden in die angeforderte locale übersetzt

  • sources[].language ist immer die Originalsprache des Verlags, unabhängig von der locale

  • sources[].original_url ist der direkte Link zum Artikel des Verlags


Antwortformat

Alle JSON-Endpunkte folgen einem konsistenten Envelope:

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

Jede Antwort enthält ein _attribution-Objekt:

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

Fehler:

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

Wenn Sie ohne Accept: application/json aufrufen, können einige Fehlerantworten HTML zurückgeben. Senden Sie immer den Header:

Accept: application/json

Ratenbegrenzung

120 Anfragen pro Minute pro IP. Bitte seien Sie verantwortungsbewusst:

  • Kraftstoffpreise für mindestens 6 Stunden zwischenspeichern

  • Währungskurse für mindestens 1 Stunde zwischenspeichern

  • Geschichten/Events für mindestens 15 Minuten zwischenspeichern


Namensnennung

Erforderlich gemäß CC BY 4.0. Empfohlenes Format:

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

Identifizieren Sie Ihre Integration

Übergeben Sie ?source=yoursite.com bei jeder Anfrage – keine Registrierung erforderlich. Ihr Wert wird als _attribution.your_source zurückgegeben, damit Sie überprüfen können, ob es funktioniert:

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

Dies hilft uns zu verstehen, wie die Daten verwendet werden, und aktive Projekte anzuerkennen.


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-nativ, vollständig typisiert (TypeScript enthalten), funktioniert in Node.js ≥ 18, Browser, Cloudflare Workers, Deno, Bun. Kein API-Schlüssel erforderlich.

npm: @openvancamp/sdk · Vollständige SDK-Dokumentation →


Ressourcen

Related MCP Connectors

Related MCP Servers

  • F
    license
    A
    quality
    D
    maintenance
    A Model Context Protocol (MCP) server that provides weather data using the OpenWeather One Call API 3.0. This server allows AI agents to access current weather, forecasts, and historical weather data for any location.
    3
    13 npm
    -
  • F
    license
    Not graded
    quality
    C
    maintenance
    A read-only MCP server that exposes European day-ahead electricity prices for ~41 bidding zones via tools like hourly prices, cheapest hours, current price, and cross-zone summary, enabling AI agents to query energy market data.
    1
    -
  • A
    license
    C
    quality
    D
    maintenance
    A Model Context Protocol server exposing 58 online tools (crypto, data, image, text, etc.) and workflow execution, enabling MCP clients like Claude Desktop to invoke them via natural language.
    58
    4 npm
    MIT

Appeared in Searches