{"$schema":"https://verifymcp.io/schemas/trust-report.json","schemaVersion":1,"license":{"name":"CC BY-NC 4.0","url":"https://creativecommons.org/licenses/by-nc/4.0/"},"generatedAt":"2026-11-05T17:41:22.184Z","url":"https://verifymcp.io/servers/donniertf-hub-ca-weather-alerts-mcp/ca-weather-alerts-mcp","markdownUrl":"https://verifymcp.io/servers/donniertf-hub-ca-weather-alerts-mcp/ca-weather-alerts-mcp.md","server":{"slug":"donniertf-hub-ca-weather-alerts-mcp","name":"Canada Weather Alerts MCP","registryName":"io.github.donniertf-hub/ca-weather-alerts-mcp","description":"Active Environment Canada weather warnings for any Canadian postal code.","registryStatus":"active","deletedAt":null,"statusMessage":null,"liveness":"live","publisher":{"class":"unknown","claimed":false}},"component":{"slug":"ca-weather-alerts-mcp","type":"remote","identifier":"https://ca-weather-alerts-mcp.donniertf.workers.dev/mcp","withdrawn":false,"url":"https://verifymcp.io/servers/donniertf-hub-ca-weather-alerts-mcp/ca-weather-alerts-mcp","version":"1.0.0","transport":null,"scoredAt":"2026-11-05T10:39:52.355Z"},"score":{"total":56,"tier":"low","status":"scored","weekDelta":3,"history":[{"date":"2026-11-05","total":56},{"date":"2026-11-04","total":55},{"date":"2026-11-03","total":55},{"date":"2026-11-02","total":54},{"date":"2026-11-01","total":54},{"date":"2026-10-31","total":53},{"date":"2026-10-30","total":53},{"date":"2026-10-29","total":53}]},"categories":[{"name":"Endpoint Security","score":46,"verdict":"fail","reasons":["The endpoint's TLS certificate is valid, in date, and uses a strong key.","Authorisation not fully verified: no authorisation is required to call this server, and 3 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe.","HTTPS check failed: the endpoint is reachable over plaintext HTTP.","HSTS check failed: the Strict-Transport-Security header is absent.","DNSSEC check failed: this domain isn't protected by DNSSEC."],"codes":[{"code":"tls.valid","args":{}},{"code":"auth.none_undeclared","args":{"undeclared_tools":"3"}},{"code":"https.plaintext","args":{}},{"code":"headers.hsts_absent","args":{}},{"code":"dnssec.absent","args":{}}]},{"name":"Transport & Reachability","score":100,"verdict":"pass","reasons":["Verified streamable-http transport via a live MCP handshake."],"codes":[{"code":"transport.verified","args":{"transport":"streamable-http"}}]},{"name":"Schema Quality & AI Usability","score":57,"verdict":"fail","reasons":["AI-judged instruction clarity (fair).","Tool/resource definitions use about 226 tokens (~75/item across 3 items; 3 tools + 0 resources), lean.","Usage-examples check failed: none of the tools include examples."],"codes":[{"code":"schema.ai_quality","args":{"band":"fair"}},{"code":"schema.footprint_lean","args":{"avg":"75","items":"3","tools":"3","tokens":"226","resources":"0"}},{"code":"schema.examples_absent","args":{}}]},{"name":"Stability & Change Management","score":23,"verdict":"partial","reasons":["Stability observed for 7 of 30 days with no destabilising changes; credit accrues until the full window elapses."],"codes":[{"code":"stability.building_history","args":{"days":"7"}}]},{"name":"Tool Coverage","score":78,"verdict":"partial","reasons":["100% of tools have a non-trivial description (not blank, and not just the tool's name).","33% of tool parameters carry a description."],"codes":[{"code":"toolquality.descriptions","args":{"pct":"100"}},{"code":"toolquality.param_docs","args":{"pct":"33"}}]},{"name":"Tool Safety","score":100,"verdict":"pass","reasons":["No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.","We read all 3 captured tool definition(s), and no name or description among them implies an irreversible operation.","An AI judge read all 4 captured unit(s) of tool text and found none that tries to manipulate the model reading it."],"codes":[{"code":"toolsafety.injection_clean","args":{}},{"code":"toolsafety.destructive_none","args":{"tools":"3"}},{"code":"toolsafety.manipulation_clean","args":{"units":"4","judged":"4"}}]},{"name":"Capabilities","score":40,"verdict":"fail","reasons":["Spec-recency check failed: implements MCP spec 2025-03-26; the latest is 2026-07-28."],"codes":[{"code":"protocol.outdated","args":{"latest":"2026-07-28","version":"2025-03-26"}}]}],"inconclusive":["Authorisation not fully verified: no authorisation is required to call this server, and 3 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe."],"malware":[],"components":[{"slug":"ca-weather-alerts-mcp","type":"remote","identifier":"https://ca-weather-alerts-mcp.donniertf.workers.dev/mcp","withdrawn":false,"score":56,"current":true,"url":"https://verifymcp.io/servers/donniertf-hub-ca-weather-alerts-mcp/ca-weather-alerts-mcp","markdownUrl":"https://verifymcp.io/servers/donniertf-hub-ca-weather-alerts-mcp/ca-weather-alerts-mcp.md"}],"facts":[{"label":"Endpoint","value":"https://ca-weather-alerts-mcp.donniertf.workers.dev/mcp"},{"label":"Transports","value":"streamable-http"},{"label":"Auth","value":"none"},{"label":"Version","value":"1.0.0"}],"install":{"available":true,"bundleSha256":null},"tools":[{"name":"weather_alerts","title":null,"description":"FREE. Active Environment Canada warnings, watches and advisories near a Canadian postal code (first 3 characters used). Top 3.","inputs":[{"name":"postal_code","type":"string","required":true,"description":null}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":44},{"name":"sites_check","title":null,"description":"PRO. Check up to 25 postal codes (stores, job sites, depots) for active alerts at once, worst first.","inputs":[{"name":"access_token","type":"string","required":false,"description":"Subscriber token from /success (or Authorization: Bearer)"},{"name":"postal_codes","type":"array","required":true,"description":null}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":62},{"name":"area_alerts","title":null,"description":"PRO. All active alerts within a radius (km, max 300) of a postal code, with full text.","inputs":[{"name":"access_token","type":"string","required":false,"description":"Subscriber token from /success (or Authorization: Bearer)"},{"name":"postal_code","type":"string","required":true,"description":null},{"name":"radius_km","type":"number","required":false,"description":null}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":69}],"toolsTruncatedAtCapture":false,"diagnostics":{"capturedAt":"2026-11-05T10:39:52.000Z","track":"remote","endpoint":"https://ca-weather-alerts-mcp.donniertf.workers.dev/mcp","declaredUrl":null,"truncated":false,"tls":{"outcome":"valid","label":"Valid","version":"TLS 1.3","cipherSuite":"TLS_AES_128_GCM_SHA256","chainError":null,"certificates":[{"subject":"CN=donniertf.workers.dev","issuer":"CN=YE1,O=Let's Encrypt,C=US","notBefore":"2026-09-29T23:46:29Z","notAfter":"2026-12-28T23:46:28Z","keyType":"ECDSA","keyBits":256,"isCa":false},{"subject":"CN=YE1,O=Let's Encrypt,C=US","issuer":"CN=Root YE,O=ISRG,C=US","notBefore":"2025-09-03T00:00:00Z","notAfter":"2028-09-02T23:59:59Z","keyType":"ECDSA","keyBits":384,"isCa":true},{"subject":"CN=Root YE,O=ISRG,C=US","issuer":"CN=ISRG Root X2,O=Internet Security Research Group,C=US","notBefore":"2026-05-13T00:00:00Z","notAfter":"2032-09-02T23:59:59Z","keyType":"ECDSA","keyBits":384,"isCa":true},{"subject":"CN=ISRG Root X2,O=Internet Security Research Group,C=US","issuer":"CN=ISRG Root X1,O=Internet Security Research Group,C=US","notBefore":"2026-05-13T00:00:00Z","notAfter":"2032-09-02T23:59:59Z","keyType":"ECDSA","keyBits":384,"isCa":true}]},"dnssec":{"result":"insecure","label":"Not signed","name":"ca-weather-alerts-mcp.donniertf.workers.dev.","steps":[{"zone":".","outcome":"verified","label":"Verified"},{"zone":"dev.","outcome":"verified","label":"Verified"},{"zone":"workers.dev.","outcome":"insecure_proven","label":"Unsigned (proven)"}]},"auth":{"outcome":"none","label":"No authorisation required","gate":null,"gateLabel":null,"status":200,"authorizationServers":[]},"httpsRedirect":{"outcome":"plaintext_served","label":"Served over HTTP","status":200},"transports":[{"transport":"streamable-http","outcome":"verified","label":"Verified","status":200,"followed":false}],"provenance":null,"installScripts":[],"installScriptsTotal":null,"vulnerabilities":[],"vulnerabilitiesTotal":null,"dependencies":null},"mismatches":[],"changelog":{"trackingSince":"2026-10-29","recent":[{"id":"chg_01a1ab4b-2a38-7f0b-89b6-0256e7d6cd4e","kind":"score.total_changed","summary":"Trust score (55 → 56)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-11-05","url":"https://verifymcp.io/servers/donniertf-hub-ca-weather-alerts-mcp/ca-weather-alerts-mcp#chg-chg_01a1ab4b-2a38-7f0b-89b6-0256e7d6cd4e"},{"id":"chg_01a1a0fc-e0d9-75f4-a1a1-be07d9969407","kind":"score.total_changed","summary":"Trust score (54 → 55)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-11-03","url":"https://verifymcp.io/servers/donniertf-hub-ca-weather-alerts-mcp/ca-weather-alerts-mcp#chg-chg_01a1a0fc-e0d9-75f4-a1a1-be07d9969407"},{"id":"chg_01a196ac-149b-7951-9b8a-70cfac8c831e","kind":"score.total_changed","summary":"Trust score (53 → 54)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-11-01","url":"https://verifymcp.io/servers/donniertf-hub-ca-weather-alerts-mcp/ca-weather-alerts-mcp#chg-chg_01a196ac-149b-7951-9b8a-70cfac8c831e"},{"id":"chg_01a18c60-7b03-7a40-b007-46260f4a1470","kind":"check.reverified","summary":"Stability (unverified → 0.03)","materiality":"functional","direction":"improvement","scoreDelta":null,"occurredOn":"2026-10-30","url":"https://verifymcp.io/servers/donniertf-hub-ca-weather-alerts-mcp/ca-weather-alerts-mcp#chg-chg_01a18c60-7b03-7a40-b007-46260f4a1470"},{"id":"chg_01a189e4-ded3-763d-9a8d-23c5d615a5a0","kind":"score.first_scored","summary":"First indexed and scored","materiality":"functional","direction":"neutral","scoreDelta":null,"occurredOn":"2026-10-29","url":"https://verifymcp.io/servers/donniertf-hub-ca-weather-alerts-mcp/ca-weather-alerts-mcp#chg-chg_01a189e4-ded3-763d-9a8d-23c5d615a5a0"}],"truncated":false,"feedUrl":"https://verifymcp.io/servers/donniertf-hub-ca-weather-alerts-mcp/ca-weather-alerts-mcp/changelog.json"},"links":{"html":"https://verifymcp.io/servers/donniertf-hub-ca-weather-alerts-mcp/ca-weather-alerts-mcp","markdown":"https://verifymcp.io/servers/donniertf-hub-ca-weather-alerts-mcp/ca-weather-alerts-mcp.md","changelogJson":"https://verifymcp.io/servers/donniertf-hub-ca-weather-alerts-mcp/ca-weather-alerts-mcp/changelog.json","changelogRss":"https://verifymcp.io/servers/donniertf-hub-ca-weather-alerts-mcp/ca-weather-alerts-mcp.xml","external":[{"label":"Remote endpoint","href":"https://ca-weather-alerts-mcp.donniertf.workers.dev/mcp"},{"label":"Repository","href":"https://github.com/donniertf-hub/uk-mcp-fleet"},{"label":"Website","href":"https://ca-weather-alerts-mcp.donniertf.workers.dev/"}]}}