{"name":"live.cityalert/cityalert","slug":"cityalert","title":"CityAlert","description":"Free live public-safety incident map: global crime, fire, disaster, weather and news feeds","url":"https://mcp.market/server/cityalert","rating":null,"grade":"C","score":60,"certified":false,"status":"active","category":"maps","tags":["maps"],"presence":{"score":8,"stars":null,"forks":null,"downloads_week":null,"last_push_at":null,"license":null},"uptime":{"percent":100,"checks":1,"ok":1,"last_checked_at":"2026-09-19T20:20:46.686Z","last_ok_at":"2026-09-19T20:20:46.686Z","latency_ms":827},"claimed":false,"transport":"remote","callable_via_gateway":true,"default_price_micros":0,"repository":"https://github.com/homezloco/cityalert","website":"https://cityalert.live","version":"0.1.0","remotes":[{"type":"streamable-http","url":"https://cityalert.live/api/mcp"}],"packages":[],"tools":[{"name":"create_dashboard","description":"Create a shareable dashboard. Returns {id, token} — the token grants write access via PUT /api/dashboards, so save it.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"name":{"type":"string","maxLength":100},"config":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"Dashboard config object, e.g. {areas, categories, defaultTab}"}},"required":["config"],"$schema":"https://json-schema.org/draft/2020-12/schema"}},{"name":"get_crime_year","description":"Full-year VPD crime data: totals and ranked neighbourhood stats. Vancouver only, 2003-present.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"year":{"type":"integer","minimum":2003,"maximum":2026,"description":"Year, 2003 to present"},"includeIncidents":{"description":"Include every incident point (large; default false)","type":"boolean"}},"required":["year"],"$schema":"https://json-schema.org/draft/2020-12/schema"}},{"name":"get_dashboard","description":"Read a saved dashboard by id (shareable, read-only).","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"id":{"type":"string"}},"required":["id"],"$schema":"https://json-schema.org/draft/2020-12/schema"}},{"name":"get_incidents","description":"Merged live incidents from all feeds plus manual reports. Filter by region key, category, group, severity, source, or bbox. Anonymous and free-key calls get a shared ~15-minute delayed snapshot; a pro/business x-api-key header (from cityalert.live/account) unlocks real-time refresh and higher limits.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"region":{"description":"Focus-region key, e.g. 'vancouver' (see list_regions)","type":"string"},"category":{"description":"Incident category","type":"string","enum":["crime","fire","disaster","weather","unrest","health","infra","report"]},"groups":{"description":"Normalized subtypes to include, e.g. ['violent','property','collision','wildfire']. See group keys in the /api/incidents OpenAPI doc.","type":"array","items":{"type":"string"}},"minSeverity":{"description":"Minimum severity (low < medium < high < critical)","type":"string","enum":["low","medium","high","critical"]},"q":{"description":"Case-insensitive substring match on type/title/neighbourhood","type":"string","maxLength":100},"source":{"description":"Feed source, e.g. 'usgs', 'gdacs', 'eccc', 'vpd', 'bcws', 'vernon-media', 'manual'","type":"string"},"bbox":{"description":"[minLon, minLat, maxLon, maxLat]","type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"items":false,"minItems":4,"maxItems":4},"limit":{"description":"Max incidents to return (default 250)","type":"integer","minimum":1,"maximum":5000},"refresh":{"description":"Bypass the feed cache and re-fetch sources","type":"boolean"}},"$schema":"https://json-schema.org/draft/2020-12/schema"}},{"name":"get_news","description":"Per-region safety news items, or news for an arbitrary place name.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"place":{"description":"Place name for ad-hoc news, e.g. 'Kelowna'","type":"string","maxLength":60},"refresh":{"description":"Bypass the news cache","type":"boolean"}},"$schema":"https://json-schema.org/draft/2020-12/schema"}},{"name":"get_trends","description":"Historical aggregates: VPD crime by year/month/type (6y), USGS M4+ quakes per region (10y), GDACS global events (3y), report and live snapshot stats.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{}}},{"name":"list_regions","description":"List CityAlert focus regions (key, label, center, zoom, bbox). Use region keys with get_incidents.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{}}},{"name":"submit_report","description":"File a manual geolocated incident report (same as POST /api/reports).","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"title":{"type":"string","minLength":1,"maxLength":200},"lat":{"type":"number","minimum":-90,"maximum":90},"lon":{"type":"number","minimum":-180,"maximum":180},"category":{"type":"string","enum":["crime","fire","disaster","weather","unrest","health","infra","report"]},"severity":{"type":"string","enum":["low","medium","high","critical"]},"description":{"type":"string","maxLength":2000}},"required":["title","lat","lon"],"$schema":"https://json-schema.org/draft/2020-12/schema"}}],"scan":{"score":60,"grade":"C","scanned_at":"2026-09-19T19:53:21.163Z","report":{"scannerVersion":"0.1.5","scannedAt":"2026-09-19T19:53:21.121Z","components":{"code":{"score":-1,"max":25,"notes":["remote-only server, no package to scan"]},"reliability":{"score":20,"max":20,"notes":["remote reachable in 382ms"]},"poisoning":{"score":15,"max":15,"notes":["8 tool descriptions checked"]},"auth":{"score":3,"max":15,"notes":["open endpoint exposes 2 write-action tools with no auth"]},"maintenance":{"score":3,"max":15,"notes":["repository not readable: repo not found"]},"identity":{"score":4,"max":10,"notes":["verified namespace with website, no repo"]}},"findings":[{"id":"auth.open-write","severity":"high","component":"auth","title":"Write-action tools reachable without authentication"}],"inputs":{"probes":[{"url":"https://cityalert.live/api/mcp","reachable":true,"authRequired":false,"latencyMs":382,"serverInfo":{"name":"cityalert","version":"0.1.0"}}],"packages":[],"repo":{"found":false,"owner":"homezloco","repo":"cityalert","error":"repo not found"},"icon":{"url":"https://cityalert.live/icon.svg?icon.29nn_ue3ks5hn.svg","source":"registry"},"presence":{"stars":null,"forks":null,"downloadsWeek":null,"license":null,"lastPushAt":null,"score":8}}}},"grade_history":[],"reviews":[]}