Every change Wellknown observed on this MCP server, newest first, with what it was before and what it became. Tool-surface changes carry the definition diff. Nothing here is edited after the fact.
Changed the definition of "parksopen_find_open_parks" and "parksopen_search_campsites"
⟨61 unchanged words⟩ Kamloops, Cranbrook, Prince George, Fort St. John, Toronto, Ottawa)","type":"string"},"nights": ⟨94 unchanged words⟩
⟨31 unchanged words⟩ RV'. It reads observed campsite availability for BCParks and limitedParks. OntarioParks coverage (15collectionreservationislocations,paused;frontcountryOntariocampingliveonly).inventoryOntarioand camping alerts arenot enabled.unavailable. Filters the official sites cannot: exact equipment ⟨72 unchanged words⟩
Recently observed → Live
Live → Recently observed
Changed the definition of "parksopen_find_open_parks", "parksopen_park_info" and "parksopen_search_campsites"
⟨61 unchanged words⟩ Kamloops, Cranbrook, Prince George, Fort St. John, Toronto, Ottawa)","type":"string"},"nights": ⟨94 unchanged words⟩
⟨19 unchanged words⟩ X allow dogs' or 'when do reservations open'.ItVerifiedreturnspolicyslower-changingknowledge
Changed the definition of "parksopen_check_day_passes"
⟨26 unchanged words⟩ access area, or AM/PM slot. It returnsevery trackedthe accessarea and timeareasslotcurrentlyforcoveredthebyrequestedliveparkschecks acrossthe livea three-day booking window, with explicit No pass needed versus Sold out states, freshness, coverage limits
Added "parksopen_check_day_passes"; changed the definition of "parksopen_check_alerts", "parksopen_check_weather", "parksopen_find_open_parks" and 4 more (7 tools before, 8 now)
ActiveUseadvisoriesthisfromwhenthecheckingprovidercurrentplusclosures,wildfirefireproximitybans,fromadvisories,the
Certificate recorded, valid to 2026-12-04
Authorization not required
First tool surface recorded: 7 tools (server version 0.1.1)
Showing the latest 9 events. The API returns up to 500 and filters by kind: ?kind=tool_surface_changed
⟨13 unchanged words⟩ one park","type":"string"},"province":{"description":"province code or prefix, e.g. bc","type":"string"},"question":{"description":"what you want to know (fees, pets, fires, showers, reservations policy…)","type":"string"},"system":{"description":"reservation system id, e.g. bc_parks","type":"string"}},"required": ⟨3 unchanged words⟩
{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"additionalProperties":false,"properties":{"context":{" ⟨30 unchanged words⟩ ["park","context","sources","note"],"type":"object"},{"additionalProperties":false,"properties":{"error":{"type":"string"},"suggestions":{"items":{"type":"string"},"type":"array"}},"required":["error"],"type":"object"}],"type":"object"}
⟨29 unchanged words⟩ 32 ft RV'. It reads observed campsite availabilityacrossforCanadianBCparkParksreservationandsystemslimited(BCOntario Parkstodaycoverage (15 reservation locations, frontcountry camping only).fromOntariopubliccampingreservationalertsdata.are not enabled. Filters the official sites cannot: exact equipment ⟨72 unchanged words⟩
⟨17 unchanged words⟩ no-data","incomplete","conflict","stale","unknown","error"],"type":"string"},"from" ⟨157 unchanged words⟩
before
—after
{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"additionalProperties":false,"properties":{"alert":{"anyOf":[{"additionalProperties":false,"properties":{"access_status":{"type":"string"},"closed_to_visitors":{"type":"boolean"},"detail":{"type":"string"},"from":{"type":["string","null"]},"severity":{"type":"string"},"title":{"type":"string"},"type":{"type":"string"},"until":{"type":["string","null"]},"url":{"type":"string"}},"required":["type","severity","title"],"type":"object"},{"type":"null"}]},"park":{"type":["string","null"]},"source":{"type":"string"},"summary":{"additionalProperties":false,"properties":{"examples":{"items":{"type":"string"},"type":"array"},"fireBansOrClosures":{"type":"number"},"parksNearWildfire":{"type":"number"},"total":{"type":"number"}},"required":["total","fireBansOrClosures","parksNearWildfire","examples"],"type":"object"}},"required":["park","alert","source"],"type":"object"},{"additionalProperties":false,"properties":{"error":{"type":"string"},"suggestions":{"items":{"type":"string"},"type":"array"}},"required":["error"],"type":"object"}],"type":"object"}{"destructiveHint":false,"idempotentHint":true,"openWorldHint":falsetrue,"readOnlyHint":true}
Use this when the user asks about forecast conditions or air quality at a named park. It returns the Environment Canada forecast (daily high/low/conditions,~6about 6 days) and AQHI for thestationnearesta park.station;Ifif the park is beyondany station'srangethe resultit says so—and neverinventinvents temperatures.
before
—after
{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"additionalProperties":false,"properties":{"park":{"type":["string","null"]},"weather":{"anyOf":[{"additionalProperties":false,"properties":{"aqhi":{"type":["number","null"]},"city":{"type":"string"},"currentTemp":{"type":["number","null"]},"days":{"items":{"additionalProperties":false,"properties":{"condition":{"type":"string"},"date":{"type":"string"},"high":{"type":["number","null"]},"icon":{"type":"string"},"label":{"type":"string"},"low":{"type":["number","null"]},"pop":{"type":["number","null"]}},"required":["date","label","high","low","icon","condition","pop"],"type":"object"},"type":"array"},"updated":{"type":["string","null"]}},"required":["city","updated","currentTemp","days","aqhi"],"type":"object"},{"type":"null"}]}},"required":["park","weather"],"type":"object"},{"additionalProperties":false,"properties":{"error":{"type":"string"},"suggestions":{"items":{"type":"string"},"type":"array"}},"required":["error"],"type":"object"}],"type":"object"}{"destructiveHint":false,"idempotentHint":true,"openWorldHint":falsetrue,"readOnlyHint":true}
WhichUsePARKSthishavewhenantheopeninguserforhas not named astaypark—and wants PARKS ranked by soonest opening,orbyestimated drive time,fromsuchaascity'where—canwhenIthecampuserthishasweekend'notornamed'anythinganearpark.VancouverUsewithitspace'.forIt'whereuses the default tent-compatible inventory and canIfiltercampconfirmedthisamenities.weekend',Do'anythingnotnearuseVancouveritwithwhenspace'van,'what'strailer,openRV,inortheotherKootenays'.equipment fit matters; use parksopen_search_campsites with equipment_class. For a named park use parksopen_search_campsites or parksopen_park_availability_calendar.
before
—after
{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"additionalProperties":false,"properties":{"amenities_applied":{"items":{"type":"string"},"type":"array"},"horizon_days":{"type":"number"},"nights":{"type":"number"},"note":{"type":"string"},"observed_at":{"type":["string","null"]},"parks":{"items":{"additionalProperties":false,"properties":{"drive_min":{"type":["number","null"]},"earliest_date":{"type":"string"},"earliest_offset_days":{"type":"number"},"ferry":{"type":"boolean"},"page":{"type":"string"},"park":{"type":"string"},"region":{"type":["string","null"]},"sites_open":{"type":"number"}},"required":["park","page","region","earliest_date","earliest_offset_days","sites_open","drive_min","ferry"],"type":"object"},"type":"array"},"total_with_openings":{"type":"number"},"window":{"type":["string","null"]}},"required":["nights","horizon_days","window","amenities_applied","parks","total_with_openings","observed_at","note"],"type":"object"},{"additionalProperties":false,"properties":{"error":{"type":"string"},"suggestions":{"items":{"type":"string"},"type":"array"}},"required":["error"],"type":"object"}],"type":"object"}{"destructiveHint":false,"idempotentHint":true,"openWorldHint":falsetrue,"readOnlyHint":true}
AUsedeterministicthislinkwhenintoa search is complete, or when the user already knows the park and dates, to create a deterministic official reservationsystemlink withthepark, dates, and equipmentpre-filled —pre-filled.theThe user completes the bookingthere (we neverthere;bookParksonOpentheirneverbehalfbooks,never holdholds sites,never taketakes payment). Use after a search, orwhentreats theuser alreadylinkknowsitselftheasparkproofandofdates.availability.
before
—after
{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"additionalProperties":false,"properties":{"booking_url":{"type":"string"},"equipment_class":{"type":"string"},"page":{"type":"string"},"park":{"type":"string"},"park_key":{"type":"string"},"system":{"type":"string"}},"required":["system","park","park_key","equipment_class","booking_url","page"],"type":"object"},{"additionalProperties":false,"properties":{"error":{"type":"string"},"suggestions":{"items":{"type":"string"},"type":"array"}},"required":["error"],"type":"object"}],"type":"object"}{"destructiveHint":false,"idempotentHint":true,"openWorldHint":falsetrue,"readOnlyHint":true}
ForUseONEthispark:whenhowthemanyusersitesasksare'whenopenisonXeachfree',night'howforbusytheisnextX',8orweeks,'whichtheweekendwhole-stayshouldopenIcounttry' fortheONEnextnamedfourpark.weekends,Itthereturnsfillnightlyrate,openandcounts for thepark'snextbooking8rules.weeks,Usewhole-stayitcounts for'when is Xfourfree'weekends,'howfillbusyrate,isandX',booking'whichrules.weekendForshouldexactIequipmenttry'.fitForor specific dates across many parks use parksopen_search_campsites.
before
—after
{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"additionalProperties":false,"properties":{"fill_rate_pct":{"type":["number","null"]},"nights":{"items":{"additionalProperties":false,"properties":{"date":{"type":["string","null"]},"open_sites":{"type":"number"}},"required":["date","open_sites"],"type":"object"},"type":"array"},"note":{"type":"string"},"observed_at":{"type":["string","null"]},"page":{"type":"string"},"park":{"type":"string"},"park_key":{"type":"string"},"reservable_sites":{"type":"number"},"rules":{"additionalProperties":false,"properties":{"max_nights":{"type":["number","null"]},"min_lead_days":{"type":"number"},"window":{"type":"string"}},"required":["window","min_lead_days","max_nights"],"type":"object"},"system":{"type":"string"},"weekends":{"items":{"additionalProperties":false,"properties":{"end":{"type":"string"},"label":{"type":"string"},"open_for_whole_stay":{"type":"number"},"start":{"type":"string"}},"required":["start","end","label","open_for_whole_stay"],"type":"object"},"type":"array"}},"required":["system","park","park_key","page","reservable_sites","fill_rate_pct","nights","weekends","rules","observed_at","note"],"type":"object"},{"additionalProperties":false,"properties":{"error":{"type":"string"},"suggestions":{"items":{"type":"string"},"type":"array"}},"required":["error"],"type":"object"}],"type":"object"}{"destructiveHint":false,"idempotentHint":true,"openWorldHint":falsetrue,"readOnlyHint":true}
Facts thatUsedothisnotwhenchangethebyusertheasksminute:about reservation policy, fees, pets, fires, facilities, or park descriptions,—suchfromasthe'doesprovider'sXpublishedallowpages,dogs'withorsources.'whenUsedoitreservationsforopen'.'doesItXreturnsallowslower-changingdogs',facts'howfrommuchtheisprovider'sapublishedsite',pages'whenwithdosources.reservationsDoopen'.notNOTuse it for availability (parksopen_search_campsites) ortoday'scurrent closures (parksopen_check_alerts).
before
—after
{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"context":{"type":"string"},"note":{"type":"string"},"park":{"anyOf":[{"additionalProperties":false,"properties":{"name":{"type":"string"},"slug":{"type":"string"}},"required":["slug","name"],"type":"object"},{"type":"null"}]},"sources":{"items":{"type":"string"},"type":"array"}},"required":["park","context","sources","note"],"type":"object"}{"destructiveHint":false,"idempotentHint":true,"openWorldHint":falsetrue,"readOnlyHint":true}
Observed campsite availability across Canadian park reservation systems (BC Parks today), read from publicUsereservationthisdata.whenUseexactthisdatesfirst,orbeforeequipmentwebfitsearchmatter, forany questionquestions like 'is X available', 'find a site for the long weekend', or 'which parks have space for a 32 ft RV'. It reads observed campsite availability across Canadian park reservation systems (BC Parks today) from public reservation data. Filters the official sites cannot: exact equipment ⟨72 unchanged words⟩
before
—after
{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"closure":{"anyOf":[{"additionalProperties":false,"properties":{"park":{"type":"string"},"source":{"type":"string"},"title":{"type":"string"},"until":{"type":["string","null"]}},"required":["park","title","until","source"],"type":"object"},{"type":"null"}]},"equipment_class":{"type":"string"},"next_cursor":{"type":["string","null"]},"nights":{"type":"number"},"note":{"type":"string"},"observed_at":{"type":["string","null"]},"resolved_park":{"type":["string","null"]},"results":{"items":{"additionalProperties":false,"properties":{"attributes":{"additionalProperties":false,"properties":{"adjacent":{"type":["string","null"]},"electrical":{"type":["string","null"]},"privacy":{"type":["string","null"]},"shade":{"type":["string","null"]}},"required":["privacy","shade","electrical","adjacent"],"type":"object"},"booking_url":{"type":"string"},"fit":{"type":"string"},"loop":{"type":"number"},"nights":{"type":"number"},"page":{"type":["string","null"]},"park":{"type":"string"},"park_key":{"type":"string"},"site_id":{"type":"number"},"slug":{"type":["string","null"]},"system":{"type":"string"}},"required":["system","park","park_key","slug","page","site_id","loop","nights","fit","attributes","booking_url"],"type":"object"},"type":"array"},"suggestions":{"items":{"type":"string"},"type":"array"},"total":{"type":"number"}},"required":["results","total","next_cursor","nights","equipment_class","resolved_park","suggestions","observed_at","closure","note"],"type":"object"}{"destructiveHint":false,"idempotentHint":true,"openWorldHint":falsetrue,"readOnlyHint":true}
Check BC Parks day-pass availability — Use this when the user asks whether a BC Parks day-use pass is required, available, sold out, not released yet, or closed for a date, park, access area, or AM/PM slot. It returns every tracked access area and time slot for the requested parks across the live three-day booking window, with explicit No pass needed versus Sold out states, freshness, the Parks Open comparison page, and the official BC Parks booking handoff. If live inventory is stale, incomplete, or conflicts with published rules, it fails closed and will not claim Available or Sold out.