
Openvan Travel
io.github.Kopaev由 GitHub 账号 Kopaev 发布v0.9.3更新于 Oct 27, 2026
Vanlife & RV data: roadbooks, fuel, tolls, visas, holidays, hazards, weather, currency. openvan.camp
发布方自己的服务:travel.art
概览
只读的房车与露营旅行数据服务器:提供油价、过路费、签证、天气、风险、活动与新闻,用于行程规划。
- 可以做什么
- 规划整段行程:生成逐日路书,含预算、入境与车辆规定
- 查询各国出行数据:油价、过路费、节假日、海关、电源插头、风险与火灾
- 核对入境规定:按护照与路线查询签证和临时车辆进口规则
- 比较花费:汇率与两国之间的食品价格指数
- 查看天气:房车适宜度评分、排名以及某地某日的典型气候
- 浏览房车活动与聚合新闻,以及各国车牌格式
- 适用场景
- 适合让助手协助规划或预算跨国房车、露营车旅行,或回答油价、过路费、签证、海关、天气适宜度以及房车活动与新闻相关问题。
- 运行要求
- 远程 MCP 端点 mcp.openvan.camp;无需认证、API 密钥或注册。另提供本地 npm 包供桌面客户端使用。需要能访问该服务的网络。
安装
在 SourceWeft 中
- 打开 控制台中的 Openvan Travel,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。
交给智能体安装
把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。
阅读 https://sourceweft.com/mcp/io.github.Kopaev%2Fopenvan-travel/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。其他 MCP 客户端
把它添加到你客户端的 mcpServers 配置中。
{
"mcpServers": {
"openvan-travel": {
"type": "http",
"url": "https://mcp.openvan.camp/mcp"
}
}
}README
OpenVan.camp Public API
[OpenVan.camp — free road-trip data API for every country]
[MCP server on npm] [SDK on npm] [npm downloads] [Data: CC BY 4.0] [CI] [Published packages work] [OpenVan.camp MCP server on Glama]
Free, no-auth API for vanlife data: fuel prices, route fuel cost, toll roads, holidays and peak traffic days, travel hazards, ferry and river crossings with operator sites and timetables, power plugs, customs rules, currency rates, food cost index, weather suitability scores, visa and vehicle-import rules, vanlife events, news stories, and license plates of the world — all in one place, no registration required.
Base URL: https://openvan.camp
Auth: None required
CORS: Enabled
License: data is CC BY 4.0; code in this repository (SDK, MCP server, examples) is MIT
Attribution required: show Data: <a href="https://openvan.camp/">OpenVan.camp</a> wherever you display the data — see Attribution
JavaScript/TypeScript SDK: @openvancamp/sdk — npm install @openvancamp/sdk. Zero-config, typed, Node.js / browser / edge. SDK docs →
Python SDK: openvan — pip install openvan. No dependencies, Python 3.9+, works with pandas. Python docs →
Daily CSV snapshots: openvancamp/openvan-travel-data — fuel prices, exchange rates, food cost index and weather scores as CSV/JSON, one commit a day, with history.
MCP Server (for AI agents): mcp-server/ — 32 read-only tools with interactive cards in Claude and ChatGPT (incl. plan_road_trip — a whole-trip roadbook), hosted at https://mcp.openvan.camp/mcp, or locally npx -y @openvancamp/mcp-server for Claude Desktop / Cursor / Windsurf. Install docs → · AI agents guide →
Gemini CLI extension: install this repository with gemini extensions install https://github.com/openvancamp/openvan-camp-public-api. The root gemini-extension.json connects Gemini CLI directly to the hosted OpenVan.camp MCP server; no API key is required.
Plugin for coding agents (Claude Code, Codex): the hosted MCP server plus two agent skills — openvan-travel answers trip questions with the right tools, openvan-api writes code on this API with attribution, per-grade fuel units and caching done right. Claude Code: /plugin install openvan-camp --marketplace openvancamp/openvan-camp-public-api (or /plugin marketplace add openvancamp/openvan-camp-public-api, then /plugin install openvan-camp@openvan-camp). Codex: codex plugin marketplace add openvancamp/openvan-camp-public-api, then install OpenVan.camp from the Plugins Directory. Skills only, for any agent: npx skills add openvancamp/openvan-camp-public-api.
In your AI assistant, no code: Claude connector · ChatGPT app · Telegram bot @OpenVanCampBot — the same data as interactive cards in the chat. How to connect →
What is authoritative
The OpenAPI spec at /docs.openapi is generated from the live codebase and is the authoritative contract. Numbers in this README (country counts, story totals) are approximate and updated periodically — check /api/fuel/prices meta or /api/stories pagination for current totals.
Endpoints
Quick Start
Fuel Prices — /api/fuel/prices
Weekly retail prices from 45+ official government sources.
Cache TTL: 6 hours. Please poll no faster than every 10 minutes.
Notes:
unitis"liter"for most countries,"gallon"for US and Ecuadoris_excluded: truemeans the country has heavy fuel subsidies (prices don't reflect market rates)price_changes= delta vs last week's prices
Currency Rates — /api/currency/rates
EUR-based exchange rates from multiple open-source providers with automatic fallback.
Cache TTL: 25 hours. Refreshed daily at 07:00 UTC.
Convert to any currency:
VanBasket Food Price Index — /api/vanbasket/*
Relative cost of a food basket compared to world average (World = 100).
Based on World Bank ICP 2021 data, adjusted with IMF CPI.
Data source: CC BY 4.0
Compare response:
budget_100: if you spend €100 on food in the from country, you'd spend €69 in the to country.
Events — /api/events
Vanlife events: exhibitions, festivals, meetups, road trips. Updated in real time.
Query params:
Notes:
- Unknown or missing
localesilently falls back toen /api/event/{slug}/articlesreturns source articles filtered bylocale; if none match, all articles are returned (may be in the original publisher language)
Stories / News — /api/stories
Vanlife news stories aggregated from 200+ publishers and translated into 7 languages. Each story clusters multiple source articles covering the same topic.
Query params:
Notes:
titleandsummaryare translated to the requestedlocalesources[].languageis always the original publisher language, regardless oflocalesources[].original_urlis the direct link to the publisher article
License Plates — /api/plates/*
License plates of the world: plate formats, every region code grouped by region (with ISO 3166-2 units), validation, and the plate itself as an image. Images are drawn by the same engine as openvan.camp/en/license-plates — the plate typeface is inside as vector outlines, so there are no fonts to install.
The simplest integration is a plain image:
plate.png?width=800— PNG, 200–2000 px wide, transparent background- Look-alike Latin letters are normalized (
A123BC→А123ВСon Russian plates) - A number outside the country format returns
422; addcustom=1to draw any text (e.g. a name) - Images are served
Cache-Control: public, max-age=31536000, immutable; image URLs returned by the API carryv=<engine version>, so an engine update arrives under a new URL
Plate types — special plates have their own colour and number format. GET /api/plates/{code}/types
lists them (on Russian plates: private, diplomatic red, police blue, military black, taxi_bus yellow,
motorcycle, trailer, tractor, export_transit), each with an example number. Pass type to the image,
/random and /validate; the response says which type was used:
To draw plates in the browser yourself (e.g. an interactive generator), load the scripts listed in
data.engine.scripts of /api/plates/{code} in order and call
Plates.render(code, number, region) → {svg} (an SVG element) or {error}.
Images and the engine are available for countries whose plate typeface may be redistributed
(glyphs_license: free or sharealike); for the rest the data endpoints still work.
Rate limit: 60 requests/minute for images and /random, 120 for the rest.
Roadbook — /api/roadbook/from-places
A whole trip plan — the same roadbook people build in the wizard: route, driving days and overnights, budget (fuel, tolls, vignettes, ferries), and for every country on the way the entry and vehicle rules for the given passports and plates, holidays, safety and power. Identical requests return the same roadbook.
10 roadbooks per minute per IP. The MCP tool plan_road_trip does all of this and returns the plan itself.
Holidays, Hazards, Power Plugs, Customs
Trip-planning data for a country you are about to drive into. Every list endpoint has a
/countries index; pass locale for translated names.
- A country without holiday or customs data returns an error that says so — it does not mean "no holidays" or "nothing is restricted"
- Hazards describe the situation now, not a forecast; fire data for a new area may return "being loaded, retry in a minute" on the first request
Response Format
All JSON endpoints follow a consistent envelope:
Every response includes an _attribution object:
Errors:
If you call without Accept: application/json, some error responses may return HTML. Always send the header:
Rate Limiting
120 requests per minute per IP. Please be responsible:
- Cache fuel prices for at least 6 hours
- Cache currency rates for at least 1 hour
- Cache stories/events for at least 15 minutes
Attribution
Attribution is required by the CC BY 4.0 license. Wherever you show the data — website, app, bot, dashboard, article — place a visible link next to it:
The same snippet comes in every response as _attribution.attribution_html, and in the X-Attribution-Required response header.
Ferries are the exception: lines and ports from /api/ferries are an OpenStreetMap derivative under ODbL — credit "© OpenStreetMap contributors" as well, and timetables carry the license of their GTFS feed (_attribution and sources name it).
Building with an AI coding agent? Tell it to keep this link in the UI it generates — or just let it read _attribution.instructions from any response.
Identify your integration
Pass ?source=yoursite.com with any request — no registration needed. Your value is echoed back as _attribution.your_source so you can verify it's working:
This helps us understand how the data is being used and acknowledge active projects.
Built with OpenVan
Public projects using the API:
Built something with the data? Open a pull request adding it to this table, or tell us in Discussions.
Badge for your README:
JavaScript / TypeScript SDK
ESM-native, fully typed (TypeScript included), works in Node.js ≥ 18, browser, Cloudflare Workers, Deno, Bun. No API key.
npm: @openvancamp/sdk · Full SDK docs →
Resources
- Interactive docs: openvan.camp/docs
- OpenAPI 3.0 spec: https://openvan.camp/docs.openapi
- Postman collection: https://openvan.camp/docs.postman
- JavaScript SDK: https://www.npmjs.com/package/@openvancamp/sdk
- Python SDK:
python-sdk/—pip install openvan - Daily CSV snapshots with history: openvancamp/openvan-travel-data
- Claude, ChatGPT and Telegram: openvan.camp/en/assistant
- Developer page: openvan.camp/en/developers
- For AI agents (MCP, llms.txt): openvan.camp/ai
The same data on the site
Fuel prices by country · Passport & visa checker · Roadbook trip planner · VanSky weather · Food cost index · Vanlife events · Vanlife news
来源:README.md,提交 9b3892b
工具
0版本历史
12- v0.9.3最新Oct 13, 2026
- v0.9.0Oct 11, 2026
- v0.8.3Oct 11, 2026
- v0.8.0Oct 10, 2026
- v0.7.1Oct 6, 2026
- v0.6.2Oct 4, 2026
- v0.6.1Oct 3, 2026
- v0.5.1Sep 29, 2026
- v0.5.0Sep 29, 2026
- v0.4.1Sep 29, 2026
- v0.4.0Sep 27, 2026
- v0.2.3Sep 16, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通必需25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式必需10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分
其他 Travel 集成

travel.art
art.travel官方发布者
travel.art 的只读 MCP 服务器,让助手查询艺术活动、博物馆参观指南、转机短途行程和城市艺术之旅建议。

OlaChill Vietnam — Travel and Private Transport
由 GitHub 账号 dang13021993 发布
只读的越南出行目录,让助手查询包车大巴与私人用车车型,并说明如何申请报价。

Mono eSIM — Travel Connectivity for AI Agents
由 GitHub 账号 Andrii-Tiurin 发布
搜索旅行eSIM套餐、检查设备,并创建由客户付款的安全结账链接。AI 翻译

Alibaba Travel
由 GitHub 账号 sepehr071 发布
非官方只读 MCP 服务器,让助手搜索 Alibaba(alibaba.ir)伊朗出行信息:火车、巴士、航班、酒店、别墅和旅游套餐及价格。

Travel Tracker
由 GitHub 账号 changzhiai 发布
六张地图上的9种语言旅行清单:世界、美国、美国国家公园、欧洲、中国、印度。AI 翻译