CityAlert
Free live public-safety incident map: global crime, fire, disaster, weather and news feeds
Sollte ich dies verwenden
Qualität und Sicherheit
Befunde (3)
- LOWin get_crime_year
- LOWin get_news
- LOWin submit_report
Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.
Kontextkosten
Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.
Installieren
Installation mit einem Klick
Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:
{
"mcpServers": {
"cityalert": {
"url": "https://cityalert.live/api/mcp"
}
}
}Remote-Endpunkte
https://cityalert.live/api/mcpstreamable-httpWas es kann
Tool-Inventar
Tools (8)
🟢list_regions
List CityAlert focus regions (key, label, center, zoom, bbox). Use region keys with get_incidents.
Eingabe-Schema
{
"type": "object",
"properties": {}
}🟢get_incidents(region, category, groups, minSeverity, q, ...)
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 ~1-minute snapshot; a pro/business x-api-key header (from cityalert.live/account) unlocks real-time refresh and higher limits.
Eingabe-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",
"alert",
"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"
}🟢get_trends
Historical aggregates: VPD crime by year/month/type (6y), USGS M4+ quakes per region (10y), GDACS global events (3y), report and live snapshot stats.
Eingabe-Schema
{
"type": "object",
"properties": {}
}🟢get_crime_year(year, includeIncidents)
Full-year VPD crime data: totals and ranked neighbourhood stats. Vancouver only, 2003-present.
Eingabe-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"
}🟢get_news(place, refresh)
Per-region safety news items, or news for an arbitrary place name.
Eingabe-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 (pro/business keys only)",
"type": "boolean"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟡submit_report(title, lat, lon, category, severity, ...)
File a manual geolocated incident report (same as POST /api/reports).
Eingabe-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",
"alert",
"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"
}🟢get_dashboard(id)
Read a saved dashboard by id (shareable, read-only).
Eingabe-Schema
{
"type": "object",
"properties": {
"id": {
"type": "string"
}
},
"required": [
"id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟡create_dashboard(name, config)
Create a shareable dashboard. Returns {id, token} — the token grants write access via PUT /api/dashboards, so save it.
Eingabe-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"
}Empfohlene Prompts
get_incidentsget_incidentslist_regionslist_regionslist_regionsget_incidentsCommunity
Nachweis