openvan-travel

Vanlife & RV data: fuel, tolls, visas, weather, currency, events, news, license plates. openvan.camp

我该使用它吗

质量与安全性

A
描述质量
99%
模式完整度
96%
命名质量
97%
投毒风险
100%
权限匹配度
100%
协议合规性
100%

基于对工具定义和协议合规性的自动分析。

上下文开销

~3,999token 数(工具定义)
~1.3 KB典型响应大小
对注意力有显著影响(占 128k 上下文窗口的 3.12%)

这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。

安装

一键安装

将以下内容添加到你的 `claude_desktop_config.json` 文件中:

{
  "mcpServers": {
    "openvan-travel": {
      "url": "https://mcp.openvan.camp/mcp"
    }
  }
}

远程端点

https://mcp.openvan.camp/mcpstreamable-http

它能做什么

工具清单

工具(20)

🟢 只读🟡 写入🔴 删除⚪ 未知
🟢get_fuel_prices(country_code)

Current retail fuel prices for all API-supported countries. Supports the same price keys as /api/fuel/prices, including gasoline, diesel, LPG, CNG, E85, kerosene and grade variants. Pass country_code to get one country in detail; omit it for a summary list.

输入模式

{
  "type": "object",
  "properties": {
    "country_code": {
      "type": "string",
      "minLength": 2,
      "maxLength": 2,
      "description": "ISO 3166-1 alpha-2 country code, e.g. DE. If omitted, returns all countries."
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢compare_fuel_prices(country_codes, fuel_type)

Compare current prices for one fuel type across 2-10 countries. Returns sorted table cheapest-first.

输入模式

{
  "type": "object",
  "properties": {
    "country_codes": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 2,
        "maxLength": 2
      },
      "minItems": 2,
      "maxItems": 10,
      "description": "Array of 2-10 ISO 3166-1 alpha-2 country codes to compare."
    },
    "fuel_type": {
      "type": "string",
      "enum": [
        "gasoline_regular",
        "gasoline",
        "gasoline_premium",
        "gasoline_super",
        "diesel_regular",
        "diesel",
        "diesel_premium",
        "lpg",
        "cng",
        "e85",
        "kerosene",
        "premium"
      ],
      "default": "diesel",
      "description": "Fuel type to compare. Uses the same keys as /api/fuel/prices prices."
    }
  },
  "required": [
    "country_codes"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢find_cheapest_fuel(region, fuel_type, limit)

Find the cheapest countries for a given fuel type in a region (or worldwide). Useful for route planning.

输入模式

{
  "type": "object",
  "properties": {
    "region": {
      "type": "string",
      "enum": [
        "europe",
        "asia",
        "africa",
        "north_america",
        "south_america",
        "oceania",
        "world"
      ],
      "default": "world",
      "description": "Region to search. Default: world (all countries)."
    },
    "fuel_type": {
      "type": "string",
      "enum": [
        "gasoline_regular",
        "gasoline",
        "gasoline_premium",
        "gasoline_super",
        "diesel_regular",
        "diesel",
        "diesel_premium",
        "lpg",
        "cng",
        "e85",
        "kerosene",
        "premium"
      ],
      "default": "diesel",
      "description": "Fuel type. Uses the same keys as /api/fuel/prices prices."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 20,
      "default": 5,
      "description": "How many cheapest countries to return."
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_vansky_weather(country_code)

Get VanSky vanlife weather suitability score (0-100) for a country: van_score, sleep_score, solar yield, driving conditions, awning safety, condensation risk, 7-day forecast.

输入模式

{
  "type": "object",
  "properties": {
    "country_code": {
      "type": "string",
      "minLength": 2,
      "maxLength": 2,
      "description": "ISO 3166-1 alpha-2 country code, e.g. DE."
    }
  },
  "required": [
    "country_code"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢list_vansky_top(limit)

List the top N countries with the highest VanSky van-travel suitability score today.

输入模式

{
  "type": "object",
  "properties": {
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 20,
      "default": 10,
      "description": "How many top-scoring countries to return."
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢list_events(status, type, country, search, locale, ...)

List vanlife events: expos (Caravan Salon), festivals, meetups, forums, road trips. Filter by status, type, country, or free-text search.

输入模式

{
  "type": "object",
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "upcoming",
        "ongoing",
        "past",
        "all"
      ],
      "default": "upcoming",
      "description": "Event time status."
    },
    "type": {
      "type": "string",
      "enum": [
        "expo",
        "festival",
        "forum",
        "meetup",
        "roadtrip"
      ],
      "description": "Event type filter."
    },
    "country": {
      "type": "string",
      "minLength": 2,
      "maxLength": 2,
      "description": "ISO 3166-1 alpha-2 country code."
    },
    "search": {
      "type": "string",
      "description": "Free-text search in event name."
    },
    "locale": {
      "type": "string",
      "enum": [
        "en",
        "ru",
        "de",
        "fr",
        "es",
        "pt",
        "tr"
      ],
      "default": "en",
      "description": "Language for localized fields."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50,
      "default": 15
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_event(slug, locale)

Get full details for a single vanlife event by its slug.

输入模式

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "description": "Event slug, e.g. caravan-salon-duesseldorf-2026."
    },
    "locale": {
      "type": "string",
      "enum": [
        "en",
        "ru",
        "de",
        "fr",
        "es",
        "pt",
        "tr"
      ],
      "default": "en"
    }
  },
  "required": [
    "slug"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢search_stories(search, category, country, locale, limit)

Search aggregated vanlife news stories (7 languages, 400+ sources). Filter by search query, category, country, locale.

输入模式

{
  "type": "object",
  "properties": {
    "search": {
      "type": "string",
      "description": "Full-text search in story title."
    },
    "category": {
      "type": "string",
      "description": "Category slug, e.g. camping, travel, gear, festival, industry."
    },
    "country": {
      "type": "string",
      "minLength": 2,
      "maxLength": 2,
      "description": "ISO 3166-1 alpha-2 country code."
    },
    "locale": {
      "type": "string",
      "enum": [
        "en",
        "ru",
        "de",
        "fr",
        "es",
        "pt",
        "tr"
      ],
      "default": "en"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50,
      "default": 10
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢compare_vanbasket(from, to)

Compare food price index between two countries (world average = 100). Higher number = more expensive food.

输入模式

{
  "type": "object",
  "properties": {
    "from": {
      "type": "string",
      "minLength": 2,
      "maxLength": 2,
      "description": "Home country ISO alpha-2 code."
    },
    "to": {
      "type": "string",
      "minLength": 2,
      "maxLength": 2,
      "description": "Destination country ISO alpha-2 code."
    }
  },
  "required": [
    "from",
    "to"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_vanbasket(country_code)

Get VanBasket food price index details for one country.

输入模式

{
  "type": "object",
  "properties": {
    "country_code": {
      "type": "string",
      "minLength": 2,
      "maxLength": 2,
      "description": "ISO 3166-1 alpha-2 country code."
    }
  },
  "required": [
    "country_code"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_currency_rate(from, to, amount)

Convert an amount between two currencies using live rates (150+ currencies, daily updates).

输入模式

{
  "type": "object",
  "properties": {
    "from": {
      "type": "string",
      "minLength": 3,
      "maxLength": 3,
      "description": "Source currency ISO 4217 code, e.g. EUR."
    },
    "to": {
      "type": "string",
      "minLength": 3,
      "maxLength": 3,
      "description": "Target currency ISO 4217 code, e.g. USD."
    },
    "amount": {
      "type": "number",
      "exclusiveMinimum": 0,
      "default": 1,
      "description": "Amount to convert. Default 1."
    }
  },
  "required": [
    "from",
    "to"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢check_visa_rules(passport, destination, weight, plate)

Entry rules for one passport and destination: entry mode, allowed length of stay, how the days are counted (per entry or in a rolling window), whether a visa run resets the counter, and temporary vehicle import. Answers carry a confidence level and source — pass those on instead of stating a rule as certain.

输入模式

{
  "type": "object",
  "properties": {
    "passport": {
      "type": "string",
      "minLength": 2,
      "maxLength": 2,
      "description": "ISO 3166-1 alpha-2 code of the passport, e.g. RU."
    },
    "destination": {
      "type": "string",
      "description": "Destination: ISO alpha-2 code, slug or zone code, e.g. TR."
    },
    "weight": {
      "type": "string",
      "enum": [
        "le35",
        "gt35"
      ],
      "description": "Vehicle weight class for the vehicle rule: le35 (<=3.5 t) or gt35."
    },
    "plate": {
      "type": "string",
      "enum": [
        "eu",
        "non_eu",
        "eaeu",
        "third"
      ],
      "description": "Plate origin for the green card rule."
    }
  },
  "required": [
    "passport",
    "destination"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_route_visa_rules(countries, passports, weight)

Visa rules for every country of a route in one call, for up to 10 passports at once, plus the tightest leg of the route.

输入模式

{
  "type": "object",
  "properties": {
    "countries": {
      "type": "string",
      "description": "Countries in travel order, comma separated ISO alpha-2 codes or slugs, up to 12, e.g. RU,GE,TR."
    },
    "passports": {
      "type": "string",
      "description": "Passports to answer for, comma separated, up to 10, e.g. RU,BY."
    },
    "weight": {
      "type": "string",
      "enum": [
        "le35",
        "gt35"
      ],
      "description": "Vehicle weight class for the vehicle rules."
    }
  },
  "required": [
    "countries"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_vehicle_import_rules(country)

Temporary admission rules for a foreign-plated vehicle in one country: allowed days, per entry or per window, carnet requirement, green card. A country without a rule we can stand behind returns nothing rather than a guess.

输入模式

{
  "type": "object",
  "properties": {
    "country": {
      "type": "string",
      "description": "Country: ISO alpha-2 code, slug or zone code, e.g. georgia or GE."
    }
  },
  "required": [
    "country"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_toll_rates(country_code, locale)

Toll reference for one country: payment system, per-km rates by vehicle class (car, campervan up to 3.5 t, over 3.5 t), vignette prices for every duration, concession sections and toll bridges/tunnels, each with verification date and source.

输入模式

{
  "type": "object",
  "properties": {
    "country_code": {
      "type": "string",
      "minLength": 2,
      "maxLength": 2,
      "description": "ISO 3166-1 alpha-2 country code, e.g. FR."
    },
    "locale": {
      "type": "string",
      "description": "Language of names: en, ru, de, fr, es, pt, tr."
    }
  },
  "required": [
    "country_code"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢estimate_route_tolls(waypoints, vehicle_class, locale)

Estimate toll cost for a road trip from 2-10 place names: per-km tolls, vignettes, bridges and tunnels, as a EUR range with a per-country breakdown. Flags partial results when a country on the route has no data.

输入模式

{
  "type": "object",
  "properties": {
    "waypoints": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 120
      },
      "minItems": 2,
      "maxItems": 10,
      "description": "2-10 place names in travel order: cities, addresses or countries (a country means its capital), e.g. [\"Rome\", \"Paris\"]."
    },
    "vehicle_class": {
      "type": "string",
      "enum": [
        "car",
        "van",
        "heavy"
      ],
      "default": "van",
      "description": "car; van = campervan/motorhome up to 3.5 t (default); heavy = over 3.5 t."
    },
    "locale": {
      "type": "string",
      "description": "Language of bridge/section names: en, ru, de, fr, es, pt, tr."
    }
  },
  "required": [
    "waypoints"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢list_license_plate_countries(locale)

Countries whose license plates are available: international code, number of regions and an example plate.

输入模式

{
  "type": "object",
  "properties": {
    "locale": {
      "type": "string",
      "enum": [
        "en",
        "ru",
        "de",
        "es",
        "fr",
        "pt",
        "tr"
      ],
      "description": "Language of country and region names. Default en."
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_license_plate_country(country, locale)

How a country's license plate looks and reads (standard, size, format) and every region code on its plates, grouped by region — e.g. which region is 77 or 199 on Russian plates.

输入模式

{
  "type": "object",
  "properties": {
    "country": {
      "type": "string",
      "minLength": 2,
      "maxLength": 2,
      "description": "ISO 3166-1 alpha-2 country code, e.g. RU."
    },
    "locale": {
      "type": "string",
      "enum": [
        "en",
        "ru",
        "de",
        "es",
        "fr",
        "pt",
        "tr"
      ],
      "description": "Language of country and region names. Default en."
    }
  },
  "required": [
    "country"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢check_license_plate(country, number, region, locale)

Validate a plate number against the country's format (look-alike letters are normalized) and say which region its code belongs to. Never identifies the owner or the vehicle's location.

输入模式

{
  "type": "object",
  "properties": {
    "country": {
      "type": "string",
      "minLength": 2,
      "maxLength": 2,
      "description": "ISO 3166-1 alpha-2 country code, e.g. RU."
    },
    "number": {
      "type": "string",
      "description": "Plate number without the region, e.g. A123BC. Look-alike Latin letters are normalized."
    },
    "region": {
      "type": "string",
      "description": "Region code if the country shows one, e.g. 77."
    },
    "locale": {
      "type": "string",
      "enum": [
        "en",
        "ru",
        "de",
        "es",
        "fr",
        "pt",
        "tr"
      ],
      "description": "Language of country and region names. Default en."
    }
  },
  "required": [
    "country",
    "number"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_license_plate_image(country, number, region, custom)

Draw a license plate as an image (PNG shown inline, plus SVG/PNG links) exactly as openvan.camp renders it. custom=true draws any text, e.g. a name, in the plate layout.

输入模式

{
  "type": "object",
  "properties": {
    "country": {
      "type": "string",
      "minLength": 2,
      "maxLength": 2,
      "description": "ISO 3166-1 alpha-2 country code, e.g. RU."
    },
    "number": {
      "type": "string",
      "description": "Plate number without the region, or any text with custom=true."
    },
    "region": {
      "type": "string",
      "description": "Region code if the country shows one."
    },
    "custom": {
      "type": "boolean",
      "description": "Draw any text (e.g. a name) in the plate layout instead of requiring a real format."
    }
  },
  "required": [
    "country",
    "number"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

社区

评价此服务器

证据

最近观测

已验证未记录版本20 个工具
已验证未记录版本14 个工具
已验证未记录版本14 个工具