ViaFrei
MCP serverDev toolsLets your agent look up German travel data like Autobahn traffic, trains, fuel prices, and charging stations.
Use ViaFrei in Claude, ChatGPT or Ahel Desktop
Free. Sign in, add ViaFrei and connect your AI. About a minute.
Also: Claude Code · Cursor · Codex
Then ask your AI: use ViaFrei to check autobahn traffic
No other account needed.
Details
Available today. Use it from your connected AI after setup.
No other account needed.
Add ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.
About this server
German open mobility data: Autobahn traffic, trains, transit, fuel, charging, parking, weather.
Install ViaFrei
The server’s own address, for the clients that take one directly. Or connect ahel once and every client you use reads it from one address, with the account kept on ahel rather than in each client’s config.
Claude Code
claude mcp add --transport http --scope user viafrei 'https://mcp.viafrei.de/mcp'Run it once in your project, then open /mcp to approve any sign-in the server asks for.
Claude Desktop
https://mcp.viafrei.de/mcpAdd a custom connector in Settings, paste this address, and approve the sign-in.
Cursor
cursor://anysphere.cursor-deeplink/mcp/install?name=viafrei&config=eyJ1cmwiOiJodHRwczovL21jcC52aWFmcmVpLmRlL21jcCJ9Open the link and Cursor adds the server at that address.
ChatGPT
https://mcp.viafrei.de/mcpIn Settings, enable Developer mode, create an MCP app, and paste this address. Your plan and workspace must allow custom apps.
Codex
codex mcp add viafrei --url 'https://mcp.viafrei.de/mcp'Run it once, then sign in with codex mcp login viafrei if the server asks for an account.
From the project's README
As published by mavrovde/viafrei-mcp in README.md.
Germany's traffic, trains, charging and roads — in your AI assistant.
Ask in plain words. Get the live answer, with its source.
viafrei.de · Connect your assistant · For developers · For businesses · All tools · API reference
claude mcp add --transport http viafrei https://mcp.viafrei.de/mcp
Free. No account, no API key, no sign-up. One line and your assistant knows whether the A8 is jammed, whether your train is late, where the nearest Type 2 charger is (and whether it is free, where the operator publishes that) and whether the lift at your station works — from official German open data, live, with the source named in every answer.
Beta. ViaFrei is being stabilised: sources are still being added, and answers and coverage can change. The answers are written by an AI assistant from our data, and AI can make mistakes, so check anything important (a closure, a departure, a price) against the source each answer names.
New in 1.8: a twenty-first tool,
find_sharing, for shared bikes (nextbike and Donkey Republic). Berlin and Brandenburg punctuality now comes from VBB's own realtime feed. Road answers now include police and city traffic reports from Baden-Württemberg, Schleswig-Holstein and Berlin (and from Köln and Hannover whenever those cities publish one), and roadworks on Bundes- and Landesstraßen in Niedersachsen, Sachsen and Thüringen. Charging gains the Bundesnetzagentur register and more live status, and parking gains Hamburg, Münster and NRW car parks. Every source is listed in SOURCES.md.
🧳 What you can ask
You don't need to know any tool names. Ask the way you'd ask a friend who happens to have every German traffic feed open. German or English; the answer comes back in the language you asked in.
| when you're… | ask |
|---|---|
| 🌅 about to commute | Fahren Busse und Bahnen in Bayern gerade pünktlich? · When does the next train leave Hamburg Hbf? |
| 🚗 about to drive | Gibt es Stau auf der A8? · Are there roadworks on the A7 next week? · Is the A1 closed anywhere? |
| 🚧 stuck in traffic | How much time is the jam on the A3 between Frankfurt and Würzburg costing right now? · Is traffic backed up on the Cologne motorway ring — A1, A3 or A4? · Ist der Elbtunnel auf der A7 heute Nacht gesperrt? |
| ⚡ driving electric | Where can I charge with Type 2 near Leipzig? · Wo gibt es einen Schnelllader mit 150 kW bei Nürnberg? |
| 🅿️ driving a lorry | Find a rest area with lorry parking on the A9 · Wo ist der nächste Lkw-Parkplatz an der A7? |
| ♿ travelling step-free | Funktioniert der Aufzug am Bahnhof Köln Messe/Deutz? |
| 🌦️ watching the weather | Gibt es eine Unwetterwarnung für Freiburg? |
| 📍 looking for a place | What is the address of the Elbphilharmonie in Hamburg? · Welche Apotheken gibt es in Fulda? · My satnav shows 50.1109, 8.6821 — what address is that? |
| 🇩🇪 new to German roads | Do I need an emission sticker for Stuttgart? · Is there a speed limit on the Autobahn? |
| ⏳ waiting for news | Tell me as soon as the closure on the A7 is lifted. · Sag mir Bescheid, wenn in Köln ein Viertel oder mehr der Bus- und Bahnfahrten verspätet ist. · Warn me when a DWD severe-weather warning comes into force for Cologne. |
What the answers cover, honestly. Live traffic is the motorways. Closures and roadworks also cover federal roads, Land roads in Niedersachsen, Sachsen and Thüringen, and the traffic reports some Länder and cities publish (Baden-Württemberg, Schleswig-Holstein, Berlin, Köln, Hannover); other city streets are not covered. Places and addresses come from OpenStreetMap, so what is not mapped there cannot be found, and opening hours and ratings are not part of it. A watch lives in the conversation that opened it: the server keeps every change there, and your assistant shows it when you ask, or on its own if your client supports MCP notifications. Nothing is sent by e-mail or SMS. Up to 10 watches per conversation, each for up to 24 hours (3 by default), and a road is watched as a whole, not one section of it.
💬 Real answers
These came back from the production server at https://mcp.viafrei.de/mcp
(server 1.8.18) on 2026-10-06, 23:00 Berlin time. They are not mock-ups. Each
one shows the first lines of what the tool returned, and the source line exactly
as it was sent, shortened where marked.
Abfahrten ab Hamburg Hbf (nächste 60 Minuten):
23:00 S S5 → Hamburg Elbgaustraße, ab Hamburg Hbf (S-Bahn), Gleis 2, pünktlich
23:00 S S7 → Hamburg-Altona(S), ab Hamburg Hbf (S-Bahn), Gleis 1, pünktlich
23:02 S S5 → Hamburg-Neugraben, ab Hamburg Hbf (S-Bahn), Gleis 4, pünktlich
23:06 RE RE5 → Cuxhaven, ab Hamburg Hbf, Gleis 14A-C, pünktlich
Stand 22:59 · Quelle: Fahrplandaten: Deutsche Bahn AG, DB API Marketplace, CC BY 4.0, bearbeitet (https://developers.deutschebahn.com; …) · …
Platform, delay and the estimated real departure, in one line each. Edited: six of ten departures omitted. The board listed the first two S-Bahn rows twice; that is a known defect being fixed, and the repeats are among the omitted rows.
In Köln Messe/Deutz ist 1 von 10 gemeldeten Anlagen außer Betrieb.
Fahrtreppe zu Gleis 4/5: außer Betrieb
Aufzug Aufzug Gl. 12 KVB Tunnel: in Betrieb
Aufzug zu Gleis 11: in Betrieb
…
Stadtbahn Köln Bf Deutz/Messe LANXESS arena (Störungsliste Stand 22:59): 1 von 17 gemeldeten Anlagen ist außer Betrieb. …
Fahrtreppe 60 - HÜ 083 (Bf. Deutz/Messe): außer Betrieb, gemeldet seit 17:32
The railway station and the Stadtbahn stop below it, from two operators, in one answer. For anyone with a wheelchair, a pram or a heavy suitcase, this is the difference between a station being usable and not. Edited: most facilities of both lists omitted, and the source lines cut.
Charging around Leipzig (within 10 km, Type 2), nearest first:
1. Parkhaus Neumarkt, Neumarkt 30, 04109 Leipzig (Parkhaus Neumarkt) — 0.2 km, Type 2, up to 22 kW, no status data, per charging point register
2. Motel One Leipzig Nikolaikirche, Schuhmachergäßchen 5, 04109 Leipzig (Wirelane GmbH) — 0.3 km, Type 2, up to 11 kW, no status data, per charging point register
…
Only a few operators publish live occupancy; "no status data" means unknown, not free.
Charging point register as of 2026-09-01 — chargers as reported by their operators to the Bundesnetzagentur, with no live occupancy and no warranty of accuracy or completeness.
As of 23:00 · Source: Ladesäulenregister: Bundesnetzagentur.de, CC BY 4.0, bearbeitet (…) · …
It says what it does not know: "no status data" is unknown, never free.
Edited: entries 3–5 omitted, a municipality key removed from the heading, and the sources cut to ….
North Rhine-Westphalia: 8% of observed trips more than 5 minutes late (324 of 4,088 trips
in the last 60 minutes, from 60,858 reports at 18,923 stops), 90 trips with cancelled stops.
…
Trend: about the same as the 60 minutes before (9%).
…
Published service alerts for North Rhine-Westphalia, in force now (1):
- Line 515: Straßensperrung Liebigstraße / Haltestellenentfall (valid 2026-05-18 to 2026-11-12)
As of 22:58 · Source: Echtzeitdaten: DELFI e.V. via Mobilithek, CC BY-SA, bearbeitet (…) · …
Region-wide, with the method stated, and the operators' own service alerts
beside the figure. The share-alike condition arrives as part of the answer,
because it is part of the data.
Edited: the method paragraphs between the figure and the alerts omitted, and the sources cut to ….
Description of 52.5163, 13.3777:
- Nearest address: Pariser Platz 1, 10117 Berlin (3 m)
- Settlement: Unter den Linden (0.7 km)
- District: Berlin (1.9 km)
- Administrative area: Berlin (2.3 km)
- Junction: AS Sachsendamm (A100) (5.0 km)
Address data as of 2026-10-04
As of 23:00 · Source: Ortsdaten: © GeoNames (CC BY 4.0), bearbeitet (…) · … · OSM-Standortdaten: © OpenStreetMap-Mitwirkende, ODbL 1.0 (https://www.openstreetmap.org/copyright; …)
That's the Brandenburg Gate. Edited: two of four sources cut to ….
Low-emission zone Stuttgart: yes, you need the green Feinstaubplakette.
• Stuttgart: Zone covering the entire city area — it starts at the city boundary, not at the centre.
Required: the green plaque (emission group 4). …
[to verify: Stuttgart's additional diesel restrictions have changed repeatedly; check the city's current position]
(Umweltbundesamt, Umweltzonen in Deutschland)
…
Every statement carries its source, and says [to verify] where we could not confirm it. Edited: most points omitted.
Parking along the A9:
1. Aster Moos O — Lorry parking (Lkw-Parkplatz), 14 lorry spaces, no occupancy published
2. Baarer Weiher O — Lorry parking (Lkw-Parkplatz), 45 lorry spaces, no occupancy published
…
As of 23:00 · Source: Verkehrsdaten: Autobahn GmbH des Bundes (https://verkehr.autobahn.de)
Where no "free" count is shown the operator publishes no occupancy — it does not mean the site is full.
Edited: three of five sites omitted.
Why the source line matters. Every answer ends with one, and it is the licence speaking: show it to whoever reads the answer. Copy the line the server sends you, not the ones on this page, which are shortened. See Using the data you get back.
🔌 Connect in one minute
The product is a hosted MCP server. Point your client at it and the tools appear. There is nothing to install, no key to request and no quota to negotiate. Step-by-step guides for each assistant: viafrei.de/en/connect.
Claude Code
claude mcp add --transport http viafrei https://mcp.viafrei.de/mcp
Claude (desktop app and claude.ai), ChatGPT and other apps that take a connector URL — add a custom connector with this address (in Claude: Settings → Connectors → Add custom connector; in ChatGPT the connector settings need developer mode):
https://mcp.viafrei.de/mcp
Cursor, and any client with an mcpServers file that takes a url, over HTTP:
{ "mcpServers": { "viafrei": { "url": "https://mcp.viafrei.de/mcp" } } }
VS Code (.vscode/mcp.json, or MCP: Add Server from the command palette):
{ "servers": { "viafrei": { "type": "http", "url": "https://mcp.viafrei.de/mcp" } } }
Clients that speak only stdio — for example Claude Desktop's config file
(claude_desktop_config.json, opened from Settings → Developer → Edit Config).
That is what this package is for:
{ "mcpServers": { "viafrei": { "command": "npx", "args": ["-y", "viafrei"] } } }
Node 22 or newer. npx fetches the bridge when your client starts it. If the
file already has an mcpServers block, add the "viafrei" entry inside it
rather than pasting a second block.
An older client on HTTP+SSE is answered too, at https://mcp.viafrei.de/sse.
The transport is deprecated in the specification, so prefer the address above
when you can:
claude mcp add --transport sse viafrei https://mcp.viafrei.de/sse
Restart the client and ask one of the questions above.
Where to find ViaFrei
- npm —
viafrei. This package: the stdio bridge, for the config line above. Its page shows the current version and this README. - Smithery — smithery.ai/servers/viafrei/viafrei. Connect through Smithery's hosted connection, with no local install.
- Glama — glama.ai/mcp/servers/mavrovde/viafrei-mcp. The directory listing for this repository, with the tool list.
🧰 Everything it can do
21 tools, 9 prompts, 10 resources and 2 resource templates — server 1.8.29, snapshot of 2026-10-07. Each line is the server's own words; the full parameters are in API.md.
🚗 On the road
| tool | what it answers |
|---|---|
check_autobahn_traffic — Autobahn traffic | Jams, slow traffic, closures and roadworks in force this minute on up to 5 motorways, with delay/speed. |
check_road_status — Road status and closures | Whether a motorway, B road or Land road (NI, SN, TH) is open, closed or restricted, now and in coming days; by place, jams and city/Land messages near a town. |
find_roadworks_ahead — Planned roadworks | Returns roadworks PLANNED on one German motorway, or one Bundes- or Landesstraße in Niedersachsen, Sachsen or Thüringen, in a date window: section, restriction, start and end. |
find_parking — Parking nearby | Returns parking near a place, a coordinate or along one motorway: rest areas with lorry spaces, car parks and P+R sites, with total spaces and, where published, free spaces now and the reading's age. |
🚆 Public transport
| tool | what it answers |
|---|---|
get_train_departures — Train departures | Next departures from a German railway station, with platform, delay, cancellations. |
get_departures — Scheduled departures (bus, tram, train) | Scheduled departures from any German stop — bus, tram, U-Bahn, S-Bahn, train, ferry — with line, destination, platform. |
check_transit_disruption — Public-transport disruption in a region | How punctual public transport is now in one German region: the share of trips ever over 5 min late, trips with a cancelled stop, the trend, and the service alerts in force there (diversions, closed stops). |
check_station_facilities — Station lifts and escalators | Report whether the lifts and escalators of a German railway station — or of a Köln Stadtbahn stop — are working now: each one, where it is, its state (in service / out of service / unknown) and the operator's explanation. |
⚡ Charging and fuel
| tool | what it answers |
|---|---|
find_charging_station — EV charging nearby | Returns EV charging sites near a place or coordinate with operator, connector types, maximum power, price per kWh where published, and how many points are free right now where the operator publishes live status. |
find_cheapest_fuel — Cheapest fuel nearby | Returns the cheapest stations for one fuel grade near a place or coordinate: price per litre, brand, address, distance, open state. |
find_fuel_station — Find a filling station | Finds filling stations around a place or coordinate under any combination of filters — grade, brand, name, open now, open at a time you name, open 24 h — sorted by distance, price or name. |
📍 Places and addresses
| tool | what it answers |
|---|---|
find_place — Look up a place | Looks up a place name and returns every place that matches, each with its kind, official key (AGS/RS), population, English name and coordinate. |
find_poi — Find a named place | Finds a named business or landmark — company, shop, clinic, hotel — and returns its address, category and coordinate. |
find_address — Look up a street address | Looks up a street address and returns its coordinate, plus what OpenStreetMap holds under it. |
describe_location — Describe a coordinate | Turns a coordinate into words: the nearest address, settlement, Kreis, administrative area and motorway junction, each with its own distance. |
find_nearby — What is nearby | Overview of what is around a place or coordinate: nearby fuel stations, EV charging, parking, the nearest railway station and motorway junction, each with its distance. |
🚲 Sharing
| tool | what it answers |
|---|---|
find_sharing — Shared bikes nearby | Returns rentable shared bikes near a place or coordinate: bike-sharing stations with bikes and free docks now, and free-floating bikes around, with distance and data age (nextbike incl. KVB Rad, MyRadl, VAG_Rad; Donkey Republic). |
🌦️ Weather and rules
| tool | what it answers |
|---|---|
check_weather_warnings — Official weather warnings | Returns the official DWD weather warnings in force for a place or coordinate — storm, snow, ice, heavy rain, thunderstorm, heat — with the DWD's own Warnstufe 1–4, the area, the local validity window and the official text unaltered. |
get_driving_rules — German driving rules | Returns the German road rules a visitor needs: low-emission zones (Umweltzone) and which Feinstaubplakette a city requires, speed limits (advisory 130), winter tyres, alcohol, the Sunday lorry ban, tolls (no car toll), Rettungsgasse, what must be in the car, and electric cars (E-Kennzeichen, ad-hoc payment, plugs). |
🔔 Watches
| tool | what it answers |
|---|---|
watch_situation — Watch for a change | Opens a watch so THIS conversation is told when something changes: a road reopening, a stop running late, a weather warning starting, a charge point turning free. |
stop_watch — Stop a watch | Ends a watch this conversation opened with watch_situation, so no further notifications arrive for it. |
🧭 Prompts — ready-made briefings
Pick one in your client's prompt menu and fill in the blanks; it calls the right tools in the right order.
| prompt | what it does |
|---|---|
plan_departure — Trip briefing before departure — Reise-Briefing vor der Abfahrt | Briefs a drive that is about to start: the official weather warnings at both ends, whether each motorway is open, and the jams in force this minute, ending in one go/no-go sentence. |
compare_travel_options — Drive or take the train? — Auto oder Bahn? | Weighs one trip by car against the same trip by rail: closures and live jams on the motorway side, the next departures and the region's punctuality on the rail side, as two paragraphs the traveller can compare. |
prepare_car_trip — What you need before driving in Germany — Vorbereitung der Autofahrt | Collects what a driver must carry and know before driving in Germany and into one particular city: the low-emission-zone badge, speed limits, winter tyres, the alcohol limit, tolls, mandatory equipment and the rules for an electric car. |
plan_fuel_stop — Refuel or charge on the way — Tank- oder Ladestopp unterwegs | Finds where this traveller fills up or charges on the way: the cheapest stations for one fuel grade around one place, or the charging points with the right connector and power, and the rest area beside them if they also need a break. |
plan_commute — Plan today's commute by train — Pendelfahrt für heute planen | Plans one public-transport leg on the day itself: the next departures from the station with delays, platforms and cancellations, and whether the region's buses and trains are running normally at this hour. |
plan_arrival_parking — Where to leave the car on arrival — Parken am Ziel | Finds where to leave the car at the end of the drive: the car park in town, the park-and-ride at the edge with the onward departures, or the rest area if the traveller is early. |
find_a_place — Find out what a name refers to — Herausfinden, was ein Name meint | Resolves a bare name of unknown kind into a place, a named thing, or an address, trying each table in turn and stopping at the first that answers. |
plan_local_errand — What is around this place? — Was ist hier in der Nähe? | Answers "what is around here" for one place: the nearest fuel, EV charging, parking, railway station and motorway junction in one glance, then — only if the traveller wants more than the nearest one — the depth tool for that one category. |
explain_this_coordinate — Say where a coordinate is — Sagen, wo eine Koordinate liegt | Turns a bare lat/lon into a sentence a traveller understands: the nearest address, settlement, Kreis, administrative area and motorway junction, each with its own distance. |
📚 Resources — reference your assistant can read
Shortened here. Read the whole README on GitHub.
Tools it offers (21)
What this server listed when ahel dialed its public endpoint in Oct 2026, with no key and no account of yours. The names are the server’s own.
check_autobahn_trafficfind_cheapest_fuelfind_fuel_stationfind_parkingcheck_road_statusfind_roadworks_aheadfind_charging_stationfind_placefind_poifind_addressdescribe_locationfind_nearbyfind_sharingget_driving_rulescheck_transit_disruptioncheck_weather_warningsget_train_departuresget_departurescheck_station_facilitieswatch_situationstop_watch
Signals
- Forks
- 1
- Last commit
- Oct 2026
- Weekly_downloads
- 2k weekly_downloads
Advanced
- Delivery
- ViaFrei MCP server → your ahel connector (mcp.ahel.ai) → your AI.
- Item type
- mcp-server
- Key
de-viafrei-mcp- Source
- github.com/mavrovde/viafrei-mcp
- Hosted endpoint
https://mcp.viafrei.de/mcp
github.com/mavrovde/viafrei-mcp