A Model Context Protocol (MCP) server that provides access to NS (Dutch Railways) travel information through Claude AI. This server enables Claude to fetch real-time train travel information and disruptions using the official Dutch NS API.
- • Core MCP protocol features implemented (20/40)
- • Room for improvement in GitHub community
- • Optimal dependency management (20/20)
- • Room for improvement in deployment maturity
- • Documentation (8/8)
- • Archestra MCP Trust score badge is missing
{
"ns-mcp-server": {
"command": "npx",
"args": [
"-y",
"ns-mcp-server"
],
"env": {
"NS_API_KEY": "your_api_key_here"
}
},
"ns-mcp-server-local": {
"command": "node",
"args": [
"/path/to/ns-server/build/index.js"
],
"env": {
"NS_API_KEY": "your_api_key_here"
}
}
}NS Travel Information MCP Server
Transform your AI assistant into a Dutch railways expert! This MCP server connects Claude to real-time NS (Nederlandse Spoorwegen) travel information, making it your perfect companion for navigating the Netherlands by train.
Installation
You can install this server in three ways:
1. Using Claude Desktop with NPM Package
Update your Claude configuration file (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"ns-server": {
"command": "npx",
"args": [
"-y",
"ns-mcp-server"
],
"env": {
"NS_API_KEY": "your_api_key_here"
}
}
}
}
You can get an API key from NS API Portal
2. Using Smithery
To install NS Travel Information Server automatically via Smithery:
npx -y @smithery/cli install ns-server --client claude
3. From Source
- Clone this repository
- Install dependencies:
npm install - Copy the example environment file:
cp .env.example .env - Add your NS API key to the
.envfile:NS_API_KEY=your_api_key_here
Then update your Claude configuration file:
{
"mcpServers": {
"ns-server": {
"command": "node",
"args": [
"/path/to/ns-server/build/index.js"
],
"env": {
"NS_API_KEY": "your_api_key_here"
}
}
}
}
Make sure to:
- Replace
/path/to/ns-serverwith the actual path to your installation - Add your NS API key in the
envsection. It can be obtained from here https://apiportal.ns.nl/product#product=NsApp
After updating the configuration, restart Claude Desktop for the changes to take effect.
Real-World Use Cases
- "Is my usual 8:15 train from Almere to Amsterdam running on time?"
- "Are there any delays on the Rotterdam-Den Haag route today?"
- "What's the best alternative route to Utrecht if there's maintenance on the direct line?"
- "Which train should I take to arrive at my office in Amsterdam Zuid before 9 AM?"
- "Which route to Amsterdam has the fewest transfers with a stroller?"
- "What's the earliest train I can take to make my 10 AM meeting in The Hague?"
- "When's the last train back to Groningen after a night out in Amsterdam?"
- "Are there any weekend engineering works that might affect my Monday morning class?"
- "Are there OV-fiets bikes available at Utrecht Centraal for my afternoon meeting?"
- "Is Eindhoven Strijp-S station wheelchair accessible and what platforms does it have?"
- "What trains are arriving at Utrecht Centraal in the next hour?"
- "Has the train from Venlo to Schiphol Airport arrived on time?"
- "How much does a first-class ticket from Amsterdam to Rotterdam cost?"
- "What's the price for 2 adults and 1 child traveling to Den Haag?"
🔑 Environment Variables
| Variable | Description |
|---|---|
| NS_API_KEY | Your NS API key (required) |
🌟 Features
This MCP server provides comprehensive access to NS train information through the following endpoints:
Real-time Train Information
- Departures: Get real-time departure information including platform numbers, delays, and travel notes
- Arrivals: Access upcoming train arrivals with origin stations, platform changes, and status updates
- Journey Planning: Find optimal travel routes with transfers and real-time updates
- Service Updates: Check for disruptions, maintenance work, and engineering activities
Pricing Information
- Ticket Prices: Get accurate pricing for single and return journeys
- Travel Classes: Compare prices for first and second class travel
- Group Pricing: Calculate fares for adults and children
- Discount Options: Check joint journey discounts and special offers
- Validity Details: View ticket validity periods and travel conditions
Station Information
- Station Details: Access comprehensive station information including:
- Facilities and accessibility features
- Platform layouts and track information
- OV-fiets (bike rental) availability
- Location and approach details
Additional Features
- Multi-language Support: Information available in Dutch and English
- Flexible Queries: Search by station name, code, or UIC identifier
- Time Zones: Proper handling of time zones for international stations
- Status Updates: Track changes, delays, and cancellations in real-time
License
This project is licensed under the MIT License - see the LICENSE file for details
[](https://archestra.ai/mcp-catalog/r-huijts__ns-mcp-server)NS Travel Information MCP Server
Transform your AI assistant into a Dutch railways expert! This MCP server connects Claude to real-time NS (Nederlandse Spoorwegen) travel information, making it your perfect companion for navigating the Netherlands by train.
Installation
You can install this server in three ways:
1. Using Claude Desktop with NPM Package
Update your Claude configuration file (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"ns-server": {
"command": "npx",
"args": [
"-y",
"ns-mcp-server"
],
"env": {
"NS_API_KEY": "your_api_key_here"
}
}
}
}
You can get an API key from NS API Portal
2. Using Smithery
To install NS Travel Information Server automatically via Smithery:
npx -y @smithery/cli install ns-server --client claude
3. From Source
- Clone this repository
- Install dependencies:
npm install - Copy the example environment file:
cp .env.example .env - Add your NS API key to the
.envfile:NS_API_KEY=your_api_key_here
Then update your Claude configuration file:
{
"mcpServers": {
"ns-server": {
"command": "node",
"args": [
"/path/to/ns-server/build/index.js"
],
"env": {
"NS_API_KEY": "your_api_key_here"
}
}
}
}
Make sure to:
- Replace
/path/to/ns-serverwith the actual path to your installation - Add your NS API key in the
envsection. It can be obtained from here https://apiportal.ns.nl/product#product=NsApp
After updating the configuration, restart Claude Desktop for the changes to take effect.
Real-World Use Cases
- "Is my usual 8:15 train from Almere to Amsterdam running on time?"
- "Are there any delays on the Rotterdam-Den Haag route today?"
- "What's the best alternative route to Utrecht if there's maintenance on the direct line?"
- "Which train should I take to arrive at my office in Amsterdam Zuid before 9 AM?"
- "Which route to Amsterdam has the fewest transfers with a stroller?"
- "What's the earliest train I can take to make my 10 AM meeting in The Hague?"
- "When's the last train back to Groningen after a night out in Amsterdam?"
- "Are there any weekend engineering works that might affect my Monday morning class?"
- "Are there OV-fiets bikes available at Utrecht Centraal for my afternoon meeting?"
- "Is Eindhoven Strijp-S station wheelchair accessible and what platforms does it have?"
- "What trains are arriving at Utrecht Centraal in the next hour?"
- "Has the train from Venlo to Schiphol Airport arrived on time?"
- "How much does a first-class ticket from Amsterdam to Rotterdam cost?"
- "What's the price for 2 adults and 1 child traveling to Den Haag?"
🔑 Environment Variables
| Variable | Description |
|---|---|
| NS_API_KEY | Your NS API key (required) |
🌟 Features
This MCP server provides comprehensive access to NS train information through the following endpoints:
Real-time Train Information
- Departures: Get real-time departure information including platform numbers, delays, and travel notes
- Arrivals: Access upcoming train arrivals with origin stations, platform changes, and status updates
- Journey Planning: Find optimal travel routes with transfers and real-time updates
- Service Updates: Check for disruptions, maintenance work, and engineering activities
Pricing Information
- Ticket Prices: Get accurate pricing for single and return journeys
- Travel Classes: Compare prices for first and second class travel
- Group Pricing: Calculate fares for adults and children
- Discount Options: Check joint journey discounts and special offers
- Validity Details: View ticket validity periods and travel conditions
Station Information
- Station Details: Access comprehensive station information including:
- Facilities and accessibility features
- Platform layouts and track information
- OV-fiets (bike rental) availability
- Location and approach details
Additional Features
- Multi-language Support: Information available in Dutch and English
- Flexible Queries: Search by station name, code, or UIC identifier
- Time Zones: Proper handling of time zones for international stations
- Status Updates: Track changes, delays, and cancellations in real-time
License
This project is licensed under the MIT License - see the LICENSE file for details
Related MCP Servers
mcp-server-airbnb
56/100MCP server from openbnb-org/mcp-server-airbnb
tripadvisor-mcp
50/100A Model Context Protocol (MCP) server for Tripadvisor Content API. This provides access to Tripadvisor location data, reviews, and photos through standardized MCP interfaces, allowing AI assistants to search for travel destinations and experiences.
mcp-server-nationalparks
44/100MCP server from KyrieTangSheng/mcp-server-nationalparks
Campertunity
42/100MCP server from campertunity/mcp-server
mcp-national-rail
42/100A Model Context Protocol (MCP) server to retrieve train schedules from National Rail
alltrails-mcp-server
41/100MCP server from srinath1510/alltrails-mcp-server

