Environment Canada Weather Alerts MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_weather_alertsA | Fetches real-time weather alerts from Environment Canada. Args: province: Two-letter Canadian province/territory code (e.g. 'ON', 'BC', 'AB', 'QC', 'NS', 'NB', 'MB', 'SK', 'PE', 'NL', 'YT', 'NT', 'NU'). alert_type: Type of alert filter ('warning', 'watch', 'advisory', 'statement'). search_query: Optional keyword to search in location names or alert description (e.g., 'Toronto', 'blizzard', 'fog'). language: Language for names and description ('en' for English, 'fr' for French). Default is 'en'. Returns: JSON formatted string containing matching weather alerts. Each alert includes its 'status' (e.g. 'active', 'ended'). |
| get_alert_summaryB | Gets an executive breakdown summary of active Canadian weather alerts. Args: province: Optional two-letter province code to restrict summary (e.g. 'ON'). Returns: JSON string summarizing alert counts (warnings, watches, advisories) by province. |
| get_alerts_near_coordinatesA | Checks for weather alerts intersecting a specific latitude and longitude coordinate. Args: latitude: Latitude in decimal degrees (e.g., 43.6532 for Toronto). longitude: Longitude in decimal degrees (e.g., -79.3832 for Toronto). language: Output language ('en' or 'fr'). Default is 'en'. Returns: JSON string of alerts affecting the given coordinates. Each alert includes its 'status'. |
| get_alert_detailsA | Retrieves full details including text description and boundary geometry for a specific alert. Args: feature_id: Unique feature ID or item ID of the weather alert. language: Output language ('en' or 'fr'). Default is 'en'. Returns: JSON string containing detailed alert metadata and polygon geometry. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| analyze_weather_safety | Generates an prompt for analyzing weather safety and providing emergency advice based on current alerts. Args: province: Canadian province code (e.g. 'ON', 'BC'). location: Specific city or region name (e.g. 'Toronto', 'Ottawa'). |
| daily_weather_alert_briefing | Generates an executive briefing prompt on active severe weather across Canadian provinces. Args: provinces: Comma-separated list of province codes (e.g. 'ON,QC,BC,AB'). |
| severe_weather_report | Generates a formal severe weather incident report prompt for a specific alert ID. Args: alert_id: Feature ID or alert ID. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| active_alerts_resource | Resource providing live JSON stream of weather alerts in Canada. |
| summary_alerts_resource | Resource providing a national summary breakdown of active weather alerts. |
TDQS
Scored across 4 tools
The four tools split into clear roles: summary (aggregate), details (single alert), list/filter (by province/keyword), and spatial (coordinates). The only mild overlap is between get_weather_alerts and get_alerts_near_coordinates, since both return alert lists, but their inputs (province/filters vs lat/lon) distinguish them well.
All tools share a consistent 'get_' prefix and snake_case convention. Minor deviations exist in noun form ('alert' vs 'alerts', 'weather_alerts' vs 'alerts_near_coordinates'), but the pattern remains predictable.
Four tools is a reasonable, well-scoped set for a read-only weather-alert service covering aggregate, detail, list, and spatial views. It is slightly lean and could arguably support one or two more query modes, but nothing is redundant.
The domain is alert retrieval, and the surface covers the main access patterns: summary, per-alert detail, filtered listing, and coordinate lookup. As a read-only external data feed, no CRUD lifecycle is expected, so coverage is nearly complete with only minor gaps.