# r-huijts/ns-mcp-server [Health: Active]

**Category:** 🚆 Travel & Transportation  
**Repository:** https://github.com/r-huijts/ns-mcp-server  
**GitHub Stars:** 62  
**npm Downloads (last month):** 131  
**Views:** 3  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/r-huijts-ns-mcp-server

## Description
Access Dutch Railways (NS) travel information, schedules, and real-time updates

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "ns-mcp-server": {
    "command": "npx",
    "args": ["-y","ns-mcp-server"],
    "env": {
      "NS_API_KEY": ""
    }
  }
}
```

**Requires environment variables:** `NS_API_KEY` — the values above are empty placeholders; fill in real credentials before running (see the repository for what each one is for).

## Documentation

## What r-huijts/ns-mcp-server does

The r-huijts/ns-mcp-server MCP server exposes Dutch Railways (NS) travel information to an AI assistant. It covers scheduled and real-time train data, allowing an assistant to answer questions about departures, arrivals, delays, cancellations, route options, transfers, and engineering work across the Netherlands.

It also provides fare information for single and return journeys, first- and second-class travel, adult and child passenger groups, discounts, ticket validity, and travel conditions. Station queries can return facilities, accessibility details, platforms, tracks, location information, approach details, and OV-fiets rental availability.

This server belongs in the 🚆 Travel & Transportation category and is relevant when an application needs conversational access to NS journey data rather than a static timetable.

## How it works

The r-huijts/ns-mcp-server MCP server uses the NS API as its data source and makes the results available through MCP tools. Queries can identify stations by name, station code, or UIC identifier. The service handles time zones for international stations and can return information in Dutch or English.

The available data includes live status changes such as delays, cancellations, platform changes, and other travel notes. Journey-planning requests can include transfers and current updates, while departure and arrival requests focus on upcoming services at a station.

## Setup and configuration

An NS API key is required. Obtain one through the NS API Portal, then provide it as the `NS_API_KEY` environment variable.

For an npm-based installation, configure the MCP client to run `npx -y ns-mcp-server` and pass `NS_API_KEY` in the server environment. The repository also supports installation from source: clone it, run `npm install`, copy `.env.example` to `.env`, and add the key. Build and run the generated `build/index.js` from the client configuration, using the actual installation path.

After changing the Claude Desktop configuration, restart the application so the server is loaded.

## Tools and capabilities

The r-huijts/ns-mcp-server MCP server supports these information areas:

- Real-time departures with platforms, delays, and travel notes
- Upcoming arrivals with origins, platform changes, and status information
- Journey planning with route alternatives, transfers, and live updates
- Disruptions, maintenance, and engineering-work information
- Ticket prices, travel classes, passenger groups, discounts, and validity
- Station facilities, accessibility, platforms, tracks, locations, and OV-fiets availability

These capabilities support requests such as finding an early or late train, checking whether a service is running, comparing routes with fewer transfers, checking a station’s accessibility, or estimating fares for adults and children.

## Limitations and notes

The server depends on access to the NS API and therefore requires a valid `NS_API_KEY`.

_Full upstream README: https://allmcps.com/mcp/r-huijts-ns-mcp-server/readme_

