Search / io.github.BurettoSofuto/smogrank
SmogRank
R0· no sign-inPM2.5 air pollution by city: worst-first rankings, current air and daily history.
v1.0.0 · active · website · descriptor JSON · versions
Search / io.github.BurettoSofuto/smogrank
R0· no sign-inPM2.5 air pollution by city: worst-first rankings, current air and daily history.
v1.0.0 · active · website · descriptor JSON · versions
{
"mcpServers": {
"smogrank": {
"type": "http",
"url": "https://smogrank.com/mcp"
}
}
}claude mcp add --transport http smogrank https://smogrank.com/mcp[mcp_servers.smogrank]
url = "https://smogrank.com/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"smogrank": {
"type": "remote",
"url": "https://smogrank.com/mcp",
"enabled": true
}
}
}{
"mcpServers": {
"smogrank": {
"type": "http",
"url": "https://smogrank.com/mcp"
}
},
"deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=smogrank&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vc21vZ3JhbmsuY29tL21jcCJ9"
}{
"servers": {
"smogrank": {
"type": "http",
"url": "https://smogrank.com/mcp"
}
}
}{
"mcpServers": {
"smogrank": {
"httpUrl": "https://smogrank.com/mcp"
}
}
}extensions:
"smogrank":
enabled: true
name: "smogrank"
type: streamable_http
uri: "https://smogrank.com/mcp"
timeout: 300
protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28protocol.statelessonly applies to 2026-07-28 serversprotocol.transportstreamable HTTPprotocol.list_ttlonly applies to 2026-07-28 serversauth.prm, auth.as_metadata, auth.cimdno remote uses OAuthauth.secret_in_urlno templated URLtools.descriptionsevery tool has a descriptiontools.description_lengthdescriptions are concisetools.schemasevery tool has an object input schematools.annotations4 of 4 tools declare readOnlyHint or destructiveHinttools.directory_hintsno tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: city_air (destructiveHint, idempotentHint); find_city (destructiveHint, idempotentHint); city_history (destructiveHint, idempotentHint); …tools.token_costabout 715 tokens to load every tooltools.api_dumptools are not a one-to-one API dumpstability.changes2 tool changes in 30 daysstability.rug_pullno tool changed its meaning under the same namedeps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI packagecity_airchangeddescriptionPM2.5 now in a city: the latest hourly value, its 24-hour, 7-day, 30-day and year-to-date averages with its rank among all measured cities, the US EPA category, how it compares with the WHO guideline, and the "why it ranks here" notes (patterns in its own history and nearby fire, smoke and volcano evidence, named as likely causes, never confirmed), and the local hours its air was usually worst and cleanest over the last 30 days. Cities without a monitor get a model estimate, labelled as one. No forecasts.
PM2.5 now in a city: the latest hourly value, its 24-hour, 7-day, 30-day and year-to-date averages with its rank among all measured cities, the US EPA category, how it compares with the WHO guideline, and the "why it ranks here" notes (patterns in its own history and nearby fire, smoke and volcano evidence, named as likely causes, never confirmed), and the local hours its air was usually worst and cleanest over the last 30 days. Each measured city's trust says what stands behind it: checked (reference monitors at 2+ sites), one (a single reference site) or low (3+ low-cost sensors). Cities without a monitor get a model estimate, labelled as one, plus few_sensors when one or two low-cost sensors measure there (not ranked). No forecasts.
city_airchangeddescriptionPM2.5 now in a city: the latest hourly value, its 24-hour, 7-day, 30-day and year-to-date averages with its rank among all measured cities, the US EPA category, how it compares with the WHO guideline, and the "why it ranks here" notes (patterns in its own history and nearby fire, smoke and volcano evidence, named as likely causes, never confirmed). Cities without a monitor get a model estimate, labelled as one. No forecasts.
PM2.5 now in a city: the latest hourly value, its 24-hour, 7-day, 30-day and year-to-date averages with its rank among all measured cities, the US EPA category, how it compares with the WHO guideline, and the "why it ranks here" notes (patterns in its own history and nearby fire, smoke and volcano evidence, named as likely causes, never confirmed), and the local hours its air was usually worst and cleanest over the last 30 days. Cities without a monitor get a model estimate, labelled as one. No forecasts.
Full history: list_changes · trend: quality JSON.
Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.
+website +reachable +uptime-100% +updated-14d-ago -no-repository
Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.
| remote | auth | reachable | uptime 30d | p50 | protocol | last ok |
|---|---|---|---|---|---|---|
https://smogrank.com/mcp streamable-http | none | yes | 100% | 293 ms | 2025-11-25 | 2026-10-20 |
city_airread-only | PM2.5 now in a city: the latest hourly value, its 24-hour, 7-day, 30-day and year-to-date averages with its rank among all measured cities, the US EPA category, how it compares with the WHO guideline, and the "why it ranks here" notes (patterns in its own history and nearby fire, smoke and volcano evidence, named as likely causes, never confirmed), and the local hours its air was usually worst and cleanest over the last 30 days. Each measured city's trust says what stands behind it: checked (reference monitors at 2+ sites), one (a single reference site) or low (3+ low-cost sensors). Cities without a monitor get a model estimate, labelled as one, plus few_sensors when one or two low-cost sensors measure there (not ranked). No forecasts. |
city_historyread-only | A measured city's daily mean PM2.5 (its local calendar days, µg/m³) and its daily rank, between two dates (up to 400 days; default the last 30), with monthly means. |
find_cityread-only | Search SmogRank's cities by name, or find the nearest ones to a point. Returns each city's path for the other tools, whether it is measured by ground monitors (ranked) or only estimated from a model, and its page. |
rankingsread-only | The ranking of measured cities by average PM2.5, worst first: a rolling window (24h, 7d, 30d, year to date) or a past period (a day 2026-09-30, a week 2026-W40, a month 2026-09, a year 2025). Optionally one country. |
Schemas: list_tools.
{
"name": "io.github.BurettoSofuto/smogrank",
"title": "SmogRank",
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"remotes": [
{
"url": "https://smogrank.com/mcp",
"type": "streamable-http"
}
],
"version": "1.0.0",
"websiteUrl": "https://smogrank.com",
"description": "PM2.5 air pollution by city: worst-first rankings, current air and daily history."
}