home / mcp / berlin transport mcp server
An MCP server for the Berlin Public Transport
Configuration
View docs{
"mcpServers": {
"harshil1712-berlin-transport-mcp": {
"url": "https://berlin-transport.mcp-tools.app/sse"
}
}
}This MCP Server provides access to Berlin’s public transport data via the VBB API, wrapping the v6.vbb.transport.rest endpoints. You can connect with remote MCP clients or run a local instance to query stops, departures, and journeys.
You interact with the Berlin Transport MCP Server through an MCP client. Once connected, you can search for Berlin–Brandenburg stops, fetch upcoming departures for a specific stop, or get journey options between two stops. Use the client’s built‑in tools to perform these actions without dealing with raw API calls.
Available tools you can access (as described in the server manifest): search_stops to find public transport stops, get_departures to see upcoming departures for a stop, and get_journeys to view journey options between two stops.
Prerequisites: you should have Node.js and npm installed on your machine. You may also run via a remote MCP proxy if you prefer to connect from a local client.
Install and run the MCP server by creating a new project from a template that ships an MCP server and then starting the server. The example below shows using a Cloudflare-based remote MCP template to host the server.
Step 1: Create the remote MCP server project (Cloudflare example). Run this command to scaffold a remote MCP server project:
npm create cloudflare@latest -- my-mcp-server --template=cloudflare/ai/demos/remote-mcp-authlessConfiguration and usage details are included below for quick setup with MCP clients. You can also connect via a remote proxy to access the Berlin MCP server from Claude Desktop or other clients.
Here are the connection options shown for Claude Desktop. You can either use a remote HTTP URL or a local proxy URL. The example uses a remote proxy URL.
{
"mcpServers": {
"calculator": {
"command": "npx",
"args": [
"mcp-remote",
"https://berlin-transport.mcp-tools.app/sse" // or if local http://localhost:8787/sse
]
}
}
}The server exposes three primary tools: search_stops, get_departures, and get_journeys.
- search_stops: Search for public transport stops in Berlin‑Brandenburg using a query string.
- get_departures: Retrieve upcoming departures for a specific stop by its stop_id, with an optional number of results.
- get_journeys: Retrieve journey options from a origin stop to a destination stop, with optional departure time and results count.
When hosting or exposing the MCP server, ensure you control who can connect to the MCP endpoints. Prefer using HTTPS endpoints for remote access and restrict access to trusted clients in production.
If you cannot see tools in your MCP client, verify that the connection is configured to the correct MCP URL and that the server is reachable. For local testing, ensure the local proxy URL is running and the port is accessible.
The server relies on the VBB API family, wrapping v6.vbb.transport.rest endpoints to provide Berlin public transport data in a consistent MCP interface.
Search for public transport stops in Berlin-Brandenburg using a query string.
Get upcoming departures for a specific stop by its stop_id with an optional number of results.
Get journey options from an origin stop to a destination stop, with optional departure time and results count.