NS Travel Information MCP server

Access real-time Dutch Railways data for trip planning.
Back to servers
Setup instructions
Provider
R Huijts
Release date
Dec 04, 2024
Language
TypeScript
Stats
39 stars

The NS Travel Information MCP server connects Claude to real-time Nederlandse Spoorwegen (Dutch Railways) data, allowing your AI assistant to access train schedules, delays, routes, and pricing information for the Netherlands railway system.

Installation Options

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 need to obtain an API key from the NS API Portal.

Using Smithery

For automatic installation via Smithery:

npx -y @smithery/cli install ns-server --client claude

From Source

  1. Clone the repository
  2. Install dependencies:
    npm install
    
  3. Copy the example environment file:
    cp .env.example .env
    
  4. Add your NS API key to the .env file:
    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"
      }
    }
  }
}

Remember to:

  • Replace /path/to/ns-server with the actual path to your installation
  • Add your NS API key in the env section
  • Restart Claude Desktop after updating the configuration

Using the NS Travel Information Server

The server provides access to various NS train information endpoints that Claude can utilize to answer your queries:

Example Queries

  • Check train status: "Is my usual 8:15 train from Almere to Amsterdam running on time?"
  • Find route alternatives: "What's the best alternative route to Utrecht if there's maintenance on the direct line?"
  • Plan time-specific journeys: "Which train should I take to arrive at my office in Amsterdam Zuid before 9 AM?"
  • Get accessibility information: "Which route to Amsterdam has the fewest transfers with a stroller?"
  • Plan around meetings: "What's the earliest train I can take to make my 10 AM meeting in The Hague?"
  • Check late-night options: "When's the last train back to Groningen after a night out in Amsterdam?"
  • Check for disruptions: "Are there any weekend engineering works that might affect my Monday morning class?"
  • Verify facility availability: "Are there OV-fiets bikes available at Utrecht Centraal for my afternoon meeting?"
  • Get station accessibility info: "Is Eindhoven Strijp-S station wheelchair accessible and what platforms does it have?"
  • Check upcoming arrivals: "What trains are arriving at Utrecht Centraal in the next hour?"
  • Verify train status: "Has the train from Venlo to Schiphol Airport arrived on time?"
  • Get pricing information: "How much does a first-class ticket from Amsterdam to Rotterdam cost?"
  • Check group fares: "What's the price for 2 adults and 1 child traveling to Den Haag?"

Available Features

The server provides comprehensive information across several categories:

Real-time Train Information

  • Departures with platform numbers, delays, and travel notes
  • Arrivals with origin stations and status updates
  • Journey planning with transfers and real-time updates
  • Service disruptions and maintenance work alerts

Pricing Information

  • Ticket prices for single and return journeys
  • First and second class travel price comparison
  • Group fares for adults and children
  • Discount options and special offers
  • Ticket validity periods and conditions

Station Information

  • Facilities and accessibility features
  • Platform layouts and track information
  • OV-fiets (bike rental) availability
  • Location and approach details

How to install this MCP server

For Claude Code

To add this MCP server to Claude Code, run this command in your terminal:

claude mcp add-json "ns-server" '{"command":"npx","args":["-y","ns-mcp-server"],"env":{"NS_API_KEY":"your_api_key_here"}}'

See the official Claude Code MCP documentation for more details.

For Cursor

There are two ways to add an MCP server to Cursor. The most common way is to add the server globally in the ~/.cursor/mcp.json file so that it is available in all of your projects.

If you only need the server in a single project, you can add it to the project instead by creating or adding it to the .cursor/mcp.json file.

Adding an MCP server to Cursor globally

To add a global MCP server go to Cursor Settings > Tools & Integrations and click "New MCP Server".

When you click that button the ~/.cursor/mcp.json file will be opened and you can add your server like this:

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

Adding an MCP server to a project

To add an MCP server to a project you can create a new .cursor/mcp.json file or add it to the existing one. This will look exactly the same as the global MCP server example above.

How to use the MCP server

Once the server is installed, you might need to head back to Settings > MCP and click the refresh button.

The Cursor agent will then be able to see the available tools the added MCP server has available and will call them when it needs to.

You can also explicitly ask the agent to use the tool by mentioning the tool name and describing what the function does.

For Claude Desktop

To add this MCP server to Claude Desktop:

1. Find your configuration file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json

2. Add this to your configuration file:

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

3. Restart Claude Desktop for the changes to take effect

Want to 10x your AI skills?

Get a free account and learn to code + market your apps using AI (with or without vibes!).

Nah, maybe later