Conditions, trip briefs, alerts, permits, roads, hourly, areas, accuracy for WA, OR, BC. No account.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Returns the permit entry and road access shown on a route's forecast page for a covered objective: the permit status, fee, notes and official link, and the road conditions for the approach passes, with highway, temperature, restrictions, the road agency named and the time its data was fetched. Road data older than 30 minutes is marked. Informational only.
Public objective slug returned by search_objectives.
Route identifier returned by search_objectives. The permit entry resolves at route level.
Returns the permit entry and road access shown on a route's forecast page for a covered objective: the permit status, fee, notes and official link, and the road conditions for the approach passes, with highway, temperature, restrictions, the road agency named and the time its data was fetched. Road data older than 30 minutes is marked. Informational only.
| Argument | Type | Description |
|---|---|---|
| slug* | string | Public objective slug returned by search_objectives. |
| route_id* | string | Route identifier returned by search_objectives. The permit entry resolves at route level. |
{
"type": "object",
"required": [
"slug",
"route_id"
],
"properties": {
"slug": {
"type": "string",
"maxLength": 256,
"minLength": 1,
"description": "Public objective slug returned by search_objectives."
},
"route_id": {
"type": "string",
"maxLength": 256,
"minLength": 1,
"description": "Route identifier returned by search_objectives. The permit entry resolves at route level."
}
},
"additionalProperties": false
}Returns the NPS park alerts and National Weather Service fire weather alerts displayed for a covered objective, with source attribution and retrieval timestamps. ClimbCast does not carry current USDA Forest Service alerts or closures. Informational only.
| Argument | Type | Description |
|---|---|---|
| slug* | string | Public objective slug returned by search_objectives. |
{
"type": "object",
"required": [
"slug"
],
"properties": {
"slug": {
"type": "string",
"maxLength": 256,
"minLength": 1,
"description": "Public objective slug returned by search_objectives."
}
},
"additionalProperties": false
}Returns stored public regional forecast accuracy, including observed-station or model-proxy truth lineage, data sufficiency, and eligibility. Takes either a region_id or an objective slug, which resolves to the accuracy region of the NWAC zone the objective is bound to. Informational only.
| Argument | Type | Description |
|---|---|---|
| slug | string | Public objective slug returned by search_objectives. It resolves to the accuracy region of the NWAC zone the objective is bound to. Provide exactly one of slug and region_id. |
| region_id | string | Public accuracy region identifier, for example pnw-olympics. Provide exactly one of region_id and slug. |
{
"type": "object",
"properties": {
"slug": {
"type": "string",
"maxLength": 256,
"minLength": 1,
"description": "Public objective slug returned by search_objectives. It resolves to the accuracy region of the NWAC zone the objective is bound to. Provide exactly one of slug and region_id."
},
"region_id": {
"type": "string",
"maxLength": 256,
"minLength": 1,
"description": "Public accuracy region identifier, for example pnw-olympics. Provide exactly one of region_id and slug."
}
},
"additionalProperties": false
}Returns the two-hourly temperature, wind speed, and wind direction shown in the hourly view of the forecast page's weather by elevation grid, for one day in the free forecast window, with local times, ISO timestamps, the time zone, and the chosen elevation. Takes a date from the route's visible days and an optional elevation band of base, mid, or summit. Informational only.
| Argument | Type | Description |
|---|---|---|
| date* | string | Day to return, as YYYY-MM-DD, from the days in the free forecast window. |
| slug* | string | Public objective slug returned by search_objectives. |
| activity | string | Optional activity mode for the route forecast. Accepted values are the route's activities entries from search_objectives. When omitted, the route's default visible activity is used. |
| route_id* | string | Route identifier returned by search_objectives. |
| elevation_band | string | Optional elevation band for the hourly temperature and wind: base, mid, or summit. The forecast page opens on summit, which is the default. |
{
"type": "object",
"required": [
"slug",
"route_id",
"date"
],
"properties": {
"date": {
"type": "string",
"description": "Day to return, as YYYY-MM-DD, from the days in the free forecast window."
},
"slug": {
"type": "string",
"maxLength": 256,
"minLength": 1,
"description": "Public objective slug returned by search_objectives."
},
"activity": {
"type": "string",
"maxLength": 64,
"minLength": 1,
"description": "Optional activity mode for the route forecast. Accepted values are the route's activities entries from search_objectives. When omitted, the route's default visible activity is used."
},
"route_id": {
"type": "string",
"maxLength": 256,
"minLength": 1,
"description": "Route identifier returned by search_objectives."
},
"elevation_band": {
"enum": [
"base",
"mid",
"summit"
],
"type": "string",
"description": "Optional elevation band for the hourly temperature and wind: base, mid, or summit. The forecast page opens on summit, which is the default."
}
},
"additionalProperties": false
}Returns public conditions for a covered objective: summit weather, the objective page's route list with grade, type, and round-trip distance, source provenance, and timestamps, in JSON or markdown. Covers up to five days. Daylight and air quality appear for the first day only, and get_trip_brief carries the per-day values the forecast page shows. Informational only.
| Argument | Type | Description |
|---|---|---|
| slug* | string | Public objective slug returned by search_objectives. |
| format | string | Text representation; structured data is included in either format. |
{
"type": "object",
"required": [
"slug"
],
"properties": {
"slug": {
"type": "string",
"maxLength": 256,
"minLength": 1,
"description": "Public objective slug returned by search_objectives."
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string",
"default": "json",
"description": "Text representation; structured data is included in either format."
}
},
"additionalProperties": false
}Returns up to five days of public route conditions, anchored to the route high point, with catalog gain, source provenance, and timestamps. An optional activity input selects one of the route's activities listed by search_objectives. Days can carry the avalanche center, bulletin state and forecast link (danger ratings are not served), forecast uncertainty, the corn harvest window, and rock conditions where the forecast page shows them for the activity, and the document carries the route's permit entry and trailhead road access. With the markdown format, these sections appear in structuredContent only. For what the whole trip looks like, get_trip_brief returns the forecast page sections in one call. Informational only.
| Argument | Type | Description |
|---|---|---|
| slug* | string | Public objective slug returned by search_objectives. |
| format | string | Text representation; structured data is included in either format. |
| activity | string | Optional activity mode for the route forecast. Accepted values are the route's activities entries from search_objectives. When omitted, the route's default visible activity is used. |
| route_id* | string | Route identifier returned by search_objectives. |
{
"type": "object",
"required": [
"slug",
"route_id"
],
"properties": {
"slug": {
"type": "string",
"maxLength": 256,
"minLength": 1,
"description": "Public objective slug returned by search_objectives."
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string",
"default": "json",
"description": "Text representation; structured data is included in either format."
},
"activity": {
"type": "string",
"maxLength": 64,
"minLength": 1,
"description": "Optional activity mode for the route forecast. Accepted values are the route's activities entries from search_objectives. When omitted, the route's default visible activity is used."
},
"route_id": {
"type": "string",
"maxLength": 256,
"minLength": 1,
"description": "Route identifier returned by search_objectives."
}
},
"additionalProperties": false
}Returns the signed-out forecast page sections for a route in one call, covering up to five days, or one day with the date input: forecast days, daylight, air quality, and agency alerts, each with source provenance and a freshness status. Forecast days can carry the avalanche center, bulletin state and forecast link (danger ratings are not served), forecast uncertainty, the corn harvest window, and rock conditions where the forecast page shows them, and the document carries the route's permit entry and trailhead road access. Informational only.
| Argument | Type | Description |
|---|---|---|
| date | string | Optional day to return, as YYYY-MM-DD. Must be one of the days in the free forecast window. |
| slug* | string | Public objective slug returned by search_objectives. |
| include | array | Optional section names to return: forecast, daylight, airQuality, alerts. When omitted, all four are returned. |
| activity | string | Optional activity mode for the route forecast. Accepted values are the route's activities entries from search_objectives. When omitted, the route's default visible activity is used. |
| route_id* | string | Route identifier returned by search_objectives. |
{
"type": "object",
"required": [
"slug",
"route_id"
],
"properties": {
"date": {
"type": "string",
"description": "Optional day to return, as YYYY-MM-DD. Must be one of the days in the free forecast window."
},
"slug": {
"type": "string",
"maxLength": 256,
"minLength": 1,
"description": "Public objective slug returned by search_objectives."
},
"include": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional section names to return: forecast, daylight, airQuality, alerts. When omitted, all four are returned."
},
"activity": {
"type": "string",
"maxLength": 64,
"minLength": 1,
"description": "Optional activity mode for the route forecast. Accepted values are the route's activities entries from search_objectives. When omitted, the route's default visible activity is used."
},
"route_id": {
"type": "string",
"maxLength": 256,
"minLength": 1,
"description": "Route identifier returned by search_objectives."
}
},
"additionalProperties": false
}Lists the public coverage areas shown on the coverage directory, with each area's slug, name, state or province code, and visible activities. An area is a fixed geographic definition, not a distance from the caller. Its slug is the optional area input of search_objectives. Informational only.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Searches the public coverage catalog by name or alias, with optional region and activity filters. Coverage follows the current public scope. Region filters include WA, OR, and BC. Results list each objective's slug and route IDs with their activities, which the other tools take as inputs. An optional area input limits results to the objectives the coverage directory lists under that area. Query and area can be combined, and at least one of them is needed. A query that names an area or a reviewed place name lists that area's objectives, marked by matchedBy, after any objectives matched by name. Informational only.
| Argument | Type | Description |
|---|---|---|
| area | string | Optional public area slug from list_areas. Limits results to the objectives the coverage directory lists under that area. At least one of query and area is needed. |
| limit | integer | Maximum number of matching objectives. |
| query | string | Objective name, alias, place name, or area name; matching ignores case and accents. At least one of query and area is needed. |
| region | string | Optional state or province code or name: WA, Washington, OR, Oregon, BC, British Columbia, or B.C. Matching ignores case. |
| activity | string | Optional visible activity filter. |
{
"type": "object",
"properties": {
"area": {
"type": "string",
"maxLength": 64,
"minLength": 1,
"description": "Optional public area slug from list_areas. Limits results to the objectives the coverage directory lists under that area. At least one of query and area is needed."
},
"limit": {
"type": "integer",
"default": 10,
"maximum": 25,
"minimum": 1,
"description": "Maximum number of matching objectives."
},
"query": {
"type": "string",
"pattern": "\\S",
"maxLength": 80,
"minLength": 1,
"description": "Objective name, alias, place name, or area name; matching ignores case and accents. At least one of query and area is needed."
},
"region": {
"type": "string",
"examples": [
"WA",
"OR",
"BC",
"Washington",
"Oregon",
"British Columbia",
"B.C."
],
"description": "Optional state or province code or name: WA, Washington, OR, Oregon, BC, British Columbia, or B.C. Matching ignores case."
},
"activity": {
"enum": [
"mountaineering",
"skimo_splitboard",
"rock_climbing"
],
"type": "string",
"description": "Optional visible activity filter."
}
},
"additionalProperties": false
}