Canada City Weather Forecast and Current Conditions (MSC Datamart)
mscdatamart/citypage-forecast
The Environment and Climate Change Canada city weather page for one site, read from a Datamart file named by citypage-files: the site and region, any active weather watches and warnings (word for word), current conditions at the nearest observing station (temperature, dew point, pressure, visibility, humidity, wind), the multi-day forecast by period with temperatures and chance of precipitation, the next 24 hours hour by hour, and yesterday's high, low and precipitation. Metric units, times in UTC. English or French according to the file. A file the server does not have returns an error. Environment and Climate Change Canada data, served by Eden Engine; not an official Environment and Climate Change Canada product.
Price
$0.0026 per call
You pay the price shown. If a call turns out to cost more than its quote, you pay the actual price, capped at twice the quote. No monthly minimum. Top-ups start at $0.50.
Data source
Environment and Climate Change Canada
Data Source: Environment and Climate Change Canada. Contains information licenced under the Data Server End-use Licence of Environment and Climate Change Canada. Weather alerts are reproduced word for word. Served by Eden Engine; not an official Environment and Climate Change Canada product.
Use it
Five steps: search, inspect, learn, run, settle. No per-tool setup; your agent reaches this tool through the meta-tools it already has.
Connect once and your AI can find and run this tool, and any other it needs.
// 1. search: find the tool
omnial_search({ query: "what you need" })
// 2. inspect: price and input schema
omnial_inspect({ tool: "mscdatamart/citypage-forecast" })
// 3. learn: read the usage guide at runtime
omnial_learn({ tool: "mscdatamart/citypage-forecast" })
// 4. run: price the exact call first, then run it
omnial_execute({ tool: "mscdatamart/citypage-forecast", input: { /* see input_schema */ }, dry_run: true })
omnial_execute({ tool: "mscdatamart/citypage-forecast", input: { /* ... */ } })
// 5. settle: the call is charged when it finishes, nothing to doNot connected yet? Point your MCP client at https://mcp.eden-engine.com/mcp, then copy a config for your client.
Pricing
Every charge this tool can incur.
| Charge | Price |
|---|---|
Per call | $0.0026 |
- Updated
- Oct 24, 2026
Input and output schemas
Input schema
{
"type": "object",
"required": [
"date",
"province",
"hour",
"file"
],
"properties": {
"date": {
"type": "string",
"pattern": "^20[0-9]{6}$",
"description": "UTC date folder, YYYYMMDD, for example 20261020. The server keeps about the last thirty days; an older date is not found."
},
"file": {
"type": "string",
"pattern": "^[0-9]{8}T[0-9]{6}(\\.[0-9]{3})?Z_MSC_CitypageWeather_s[0-9]{7}_(en|fr)\\.xml$",
"description": "File name from citypage-files, for example 20261020T120149.210Z_MSC_CitypageWeather_s0000430_en.xml (Ottawa, English)."
},
"hour": {
"type": "string",
"pattern": "^(0[0-9]|1[0-9]|2[0-3])$",
"description": "UTC hour folder, 00 to 23, for example 12. Each hour folder holds the files published in that hour."
},
"province": {
"enum": [
"AB",
"BC",
"HEF",
"MB",
"NB",
"NL",
"NS",
"NT",
"NU",
"ON",
"PE",
"QC",
"SK",
"YT"
],
"type": "string",
"description": "Province or territory folder: AB, BC, MB, NB, NL, NS, NT, NU, ON, PE, QC, SK or YT (HEF is the Hydrometeorological Forecast folder)."
}
},
"additionalProperties": false
}Output schema
{
"type": "object",
"required": [
"site",
"issued",
"warnings",
"current",
"forecasts",
"hourly"
],
"properties": {
"site": {
"type": "object",
"properties": {
"code": {
"type": [
"string",
"null"
]
},
"name": {
"type": [
"string",
"null"
]
},
"region": {
"type": [
"string",
"null"
]
},
"latitude": {
"type": [
"number",
"null"
]
},
"province": {
"type": [
"string",
"null"
]
},
"longitude": {
"type": [
"number",
"null"
]
}
},
"additionalProperties": false
},
"hourly": {
"type": "array",
"items": {
"type": "object",
"properties": {
"time": {
"type": [
"string",
"null"
]
},
"condition": {
"type": [
"string",
"null"
]
},
"temperature_c": {
"type": [
"number",
"null"
]
},
"wind_direction": {
"type": [
"string",
"null"
]
},
"wind_speed_kmh": {
"type": [
"number",
"null"
]
},
"precipitation_chance_pct": {
"type": [
"number",
"null"
]
}
},
"additionalProperties": false
},
"description": "At most 48 hourly entries."
},
"issued": {
"type": [
"string",
"null"
],
"description": "When the file was created, UTC."
},
"current": {
"type": [
"object",
"null"
],
"properties": {
"station": {
"type": [
"string",
"null"
]
},
"observed": {
"type": [
"string",
"null"
]
},
"condition": {
"type": [
"string",
"null"
]
},
"dewpoint_c": {
"type": [
"number",
"null"
]
},
"pressure_kpa": {
"type": [
"number",
"null"
]
},
"station_code": {
"type": [
"string",
"null"
]
},
"temperature_c": {
"type": [
"number",
"null"
]
},
"visibility_km": {
"type": [
"number",
"null"
]
},
"wind_gust_kmh": {
"type": [
"number",
"null"
]
},
"wind_direction": {
"type": [
"string",
"null"
]
},
"wind_speed_kmh": {
"type": [
"number",
"null"
]
},
"wind_bearing_deg": {
"type": [
"number",
"null"
]
},
"pressure_tendency": {
"type": [
"string",
"null"
]
},
"relative_humidity_pct": {
"type": [
"number",
"null"
]
}
},
"additionalProperties": false
},
"warnings": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"type": [
"string",
"null"
]
},
"issued": {
"type": [
"string",
"null"
]
},
"priority": {
"type": [
"string",
"null"
]
},
"description": {
"type": [
"string",
"null"
]
}
},
"additionalProperties": false
},
"description": "Active watches, warnings and statements, word for word; empty when none."
},
"forecasts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"period": {
"type": [
"string",
"null"
]
},
"summary": {
"type": [
"string",
"null"
]
},
"condition": {
"type": [
"string",
"null"
]
},
"temperature_c": {
"type": [
"number",
"null"
]
},
"temperature_class": {
"type": [
"string",
"null"
],
"description": "high or low."
},
"precipitation_chance_pct": {
"type": [
"number",
"null"
]
}
},
"additionalProperties": false
}
},
"yesterday": {
"type": [
"object",
"null"
],
"properties": {
"low_c": {
"type": [
"number",
"null"
]
},
"high_c": {
"type": [
"number",
"null"
]
},
"precipitation_mm": {
"type": [
"number",
"null"
]
}
},
"additionalProperties": false
},
"forecast_issued": {
"type": [
"string",
"null"
]
}
},
"description": "The city page shaped as JSON; metric units, times ISO 8601 UTC, empty elements null.",
"additionalProperties": false
}