Sign inTry it

Let Claude search Deutsche Bahn train connections with prices

To let Claude search Deutsche Bahn connections, install Wield and ask in plain words, for example: "Find train connections from Berlin Hbf to Munich Hbf tomorrow morning with prices, 2nd class." Claude runs the bahn.de/search-connections recipe in your own browser. It returns departure and arrival times, transfers, trains and the cheapest fare. No login is needed.

Updated

Live recipebahn.de/search-connectionsv2

Deutsche Bahn Search train connections between two stations with prices

Read-only, no loginRuns in your browser only

Parameters (8)
adultsintegerNumber of adult travellers without discount card
datestringrequiredTravel date YYYY-MM-DD
fromstringrequiredDeparture station, e.g. 'Berlin Hbf', 'Hamburg'
modestringABFAHRT = depart at or after time, ANKUNFT = arrive by time "ABFAHRT" | "ANKUNFT"
page_refstringnext_page_ref from a previous result, to get later connections with otherwise identical params
timestringHH:mm, Europe/Berlin local time
tostringrequiredArrival station, e.g. 'München Hbf'
travel_classstring2nd or 1st class (changes the price) "KLASSE_2" | "KLASSE_1"
Use it with your agent
Measured on the live site
MetricWield recipeBrowser Use + Claude Sonnet 5.5
Success100%0%
Median time2.1 s676 s
Cost per run$0$0.589

9 runs each, 7 November 2026. How we measure

Wield recipes for Deutsche Bahnbahn.de
Everything for Deutsche Bahn

What you need

  • Claude Desktop, Claude Code, Cursor, Codex or another MCP client.
  • A Chromium browser (Chrome, Edge, Brave, Arc, Vivaldi, Opera) with the Wield extension.
  • wield-mcp. Run npx -y wield-mcp init, or use the one-click Claude Desktop bundle on wield.run/install.

If you need the full setup, follow the quick start.

Ask your agent

Name the two stations, the date and, if it matters, the departure time and the class. Claude first calls find_recipe to find the recipe, then run with the parameters. Claude needs an exact date, so say the date if you want a precise search.

You: Find train connections from Berlin Hbf to Munich Hbf tomorrow morning with prices, 2nd class.

Claude then runs bahn.de/search-connections with from, to, date, time and travel_class.

Params: what to put where

ParamRequiredWhat to put in it
fromyesDeparture station, for example Berlin Hbf or Hamburg.
toyesArrival station, for example München Hbf.
dateyesTravel date as YYYY-MM-DD.
timenoStart time as HH:mm, Europe/Berlin local time. Default 08:00.
modenoABFAHRT departs at or after the time. ANKUNFT arrives by the time. Default ABFAHRT.
travel_classnoKLASSE_2 (default) or KLASSE_1. The class changes the price.
adultsnoAdults without a discount card. Default 1.
page_refnonext_page_ref from an earlier result, to get later connections.

Station names are free text. Wield uses the first station match and returns the name it used. Check the from and to fields in the result to confirm the match.

What comes back

The result has from, to, date, connections and next_page_ref. Each connection lists the departure and arrival, both planned and real-time, plus the stations, duration_min, transfers, the trains, the legs, price_eur, currency and price_class. The price is the cheapest fare for the class you chose. If next_page_ref is set, ask for the next page with the same parameters.

What leaves your computer

The recipe makes 3 requests to www.bahn.de. They go out from a bahn.de tab in your browser, at the pace of one person. Nothing passes through wield.run.

bahn.de's protection rejects requests that lack the cookies your browser already holds. Wield does not read, copy or send those cookies. Wield logs each request on your computer only, with method, host, path, status and timing. It never logs bodies or query values.

Limits and terms

  • bahn.de's terms do not allow automated bulk queries of timetable or fare data. This recipe runs one search at a time, from your browser. Don't poll it or page through results in bulk.
  • The recipe never books. Booking and payment stay with you on bahn.de.
  • Status on 7 Nov 2026 is pending. Only a real Chrome with the Wield extension has verified it. Akamai blocks curl and automated browsers on this site. The parser was checked against synthetic responses in both leg shapes.

In our benchmark (as of 7 Nov 2026, preliminary, still running), the recipe passed 9 of 9 runs with a median of 2127 ms and no model cost. A cloud browser agent, Browser Use with Claude Sonnet 5.5, passed 0 of 1 runs. Bot protection blocked it in that run, so treat it as one data point. The method is on the benchmark page.

FAQ

Can Claude buy the ticket for me?

No. The recipe only searches. It never books, and payment stays on bahn.de. Open bahn.de yourself to book the connection you chose.

Does it need a login?

No. Searching connections needs no login.

Is there an official Deutsche Bahn MCP server?

Not that we know of as of 7 November 2026.

Which AI apps work with it?

Any MCP client. npx -y wield-mcp init sets up Claude Desktop, Claude Code, Cursor and Codex. See AI apps that work with Wield.

How fast is it compared with a browser agent?

In our preliminary benchmark, the recipe's median was 2127 ms. The browser agent's single run took 675.9 s, and it was blocked by bot protection. Full details are on the benchmark page.