Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@DriveBC MCP ServerWhat are the current conditions on Highway 1?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
DriveBC MCP Server
An MCP (Model Context Protocol) server that provides AI assistants with access to real-time BC highway conditions, road closures, and weather alerts via the Open511-DriveBC API.
Features
Highway Conditions: Get current conditions for specific BC highways
Regional Overview: View all events within a BC region
Road Closures: List active closures and restrictions
Weather Alerts: Access weather-related incidents and warnings
Smart Caching: 5-minute cache to reduce API load while keeping data fresh
Type-Safe: Full TypeScript implementation with proper types
Installation
npm install
npm run buildUsage
Running the Server
npm startThe server runs on stdio transport and is designed to be used with MCP-compatible AI clients like Claude Desktop.
Development Mode
npm run devConfiguration
Claude Desktop
Add the following to your Claude Desktop configuration file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Linux: ~/.config/Claude/claude_desktop_config.json
{
"mcpServers": {
"drivebc": {
"command": "node",
"args": ["/path/to/drivebc_mcp/build/index.js"]
}
}
}After adding the configuration, restart Claude Desktop.
LM Studio
LM Studio supports MCP as of version 0.3.17. Add the following to your LM Studio MCP configuration:
macOS/Linux: ~/.lmstudio/mcp.json
Windows: %USERPROFILE%/.lmstudio/mcp.json
{
"mcpServers": {
"drivebc": {
"command": "node",
"args": ["/path/to/drivebc_mcp/build/index.js"]
}
}
}After adding the configuration, restart LM Studio.
Available Tools
1. get_highway_conditions
Get current conditions, incidents, and closures for a specific BC highway.
Parameters:
highway(required): Highway number or name (e.g., "Highway 1", "99", "1")severity(optional): Filter by severity level (MINOR, MODERATE, MAJOR, UNKNOWN)includeScheduled(optional): Include scheduled construction (default: true)
Example:
Check Highway 1 conditions2. get_regional_conditions
Get road conditions and events for a specific BC region.
Parameters:
region(required): BC region name (Lower Mainland, Vancouver Island, Thompson Okanagan, Kootenay Rockies, Cariboo, Northern BC)eventType(optional): Filter by event type (CONSTRUCTION, INCIDENT, WEATHER_CONDITION, ROAD_CONDITION, SPECIAL_EVENT)limit(optional): Maximum events to return (default: 50, max: 500)
Example:
Show road conditions in the Lower Mainland3. get_road_closures
List all current road closures and major restrictions.
Parameters:
region(optional): Filter by BC regionhighway(optional): Filter by specific highwayseverityMinimum(optional): Minimum severity to include (MINOR, MODERATE, MAJOR; default: MODERATE)
Example:
Are there any road closures on Highway 1?4. get_weather_alerts
Get active weather alerts and road condition warnings.
Parameters:
region(optional): Filter by BC regionalertType(optional): Type of alert (WEATHER_CONDITION, ROAD_CONDITION, INCIDENT)severityMinimum(optional): Minimum severity level (default: MINOR)
Example:
Show weather alerts for Northern BCData Source
This server uses the Open511-DriveBC API which provides:
Real-time road events and incidents
Road closures and construction updates
Weather conditions and alerts
Travel advisories
The API is public and requires no authentication.
Caching
The server implements a 5-minute cache to:
Reduce load on the DriveBC API
Improve response times
Maintain reasonably fresh data
Cache hits and misses are logged to stderr for monitoring.
Project Structure
drivebc_mcp/
├── src/
│ ├── index.ts # MCP server entry point
│ ├── tools/
│ │ ├── highway-conditions.ts # Highway-specific queries
│ │ ├── regional-conditions.ts # Regional overview
│ │ ├── road-closures.ts # Closures and restrictions
│ │ └── weather-alerts.ts # Weather and incidents
│ ├── api/
│ │ ├── client.ts # API client with caching
│ │ ├── types.ts # TypeScript type definitions
│ │ └── constants.ts # BC regions and highways
│ ├── cache/
│ │ └── manager.ts # Cache implementation
│ └── utils/
│ └── formatters.ts # Response formatting
├── package.json
├── tsconfig.json
└── README.mdDevelopment
Type Checking
npm run type-checkBuilding
npm run buildBC Regions
The server supports the following BC regions:
Lower Mainland
Vancouver Island
Thompson Okanagan
Kootenay Rockies
Cariboo
Northern BC
License
MIT
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.