home / mcp / singapore lta mcp server
MCP server for Singapore's Land Transport Authority (LTA) DataMall API
Configuration
View docs{
"mcpServers": {
"arjunkmrm-mcp-sg-lta": {
"command": "npx",
"args": [
"-y",
"arjunkmrm/mcp-sg-lta"
],
"env": {
"LTA_API_KEY": "YOUR-API-KEY"
}
}
}
}This MCP Server provides real-time access to Singaporeās LTA DataMall API, delivering up-to-date bus arrivals, traffic conditions, train service updates, and other transit-related data to your MCP clients. It enables you to build responsive transport-aware applications that react to live mobility information.
You interact with this MCP Server through your MCP client by specifying the server name as a source. It exposes real-time data endpoints such as bus arrivals, station crowding, train alerts, carpark availability, travel times, traffic incidents, and crowd forecast. Use the client to request information for specific inputs (for example, a bus stop code or train line) and receive structured results suitable for dashboards, alerts, or route planning.
Prerequisites: you need Node.js and npm installed on your system.
npx -y @smithery/cli install @arjunkmrm/mcp-sg-lta --client claudeAPI access requires an LTA DataMall API key. Obtain your key by registering an account, subscribing to the API services, and retrieving the key from your account dashboard. When you configure the client, provide this key as an environment variable to authorize requests to the LTA DataMall.
Add the MCP server configuration to your Claude Desktop setup to enable the server: you will place the configuration in your claude_desktop_config.json under mcpServers. The example below shows how to reference the MCP server using npx with the appropriate arguments and environment variable for the API key.
{
"mcpServers": {
"lta": {
"command": "npx",
"args": [
"-y",
"arjunkmrm/mcp-sg-lta"
],
"env": {
"LTA_API_KEY": "YOUR-API-KEY"
}
}
}
}- Retrieve real-time bus arrivals for a specific stop to populate a transit dashboard.
- Monitor MRT/LRT station crowding to adjust service recommendations in a passenger-facing app.
Get real-time bus arrival information for specific bus stops using the 5-digit stop code and an optional service number to filter results.
Fetch real-time crowding levels for MRT/LRT stations, updated every 10 minutes, keyed by train line code.
Return real-time train service alerts including disruptions and shuttle services.
Provide real-time parking availability for HDB, LTA, and URA lots, refreshing every minute.
Estimate travel times on expressway segments with updates every 5 minutes.
Report current road incidents like accidents, roadworks, and heavy traffic with updates every 2 minutes.
Forecast MRT/LRT station crowdedness in 30-minute intervals for planning.