protogrid

Search / io.github.chenweilie/cleanairdata

CleanAirData

R0· no sign-in

Historical PM2.5 and Clean Air Score for US cities; copied records name their source city.

v0.1.0 · active · website · descriptor JSON · versions

An agent can connect right now, no human step.Remote endpoint, no authentication, reachable on the last probe.
Quality89new
Trust78of 100
Uptime, 30 days91%
Latency p50319 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "cleanairdata": {
      "type": "http",
      "url": "https://cleanairdata.org/api/mcp"
    }
  }
}
claude mcp add --transport http cleanairdata https://cleanairdata.org/api/mcp
[mcp_servers.cleanairdata]
url = "https://cleanairdata.org/api/mcp"
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "cleanairdata": {
      "type": "remote",
      "url": "https://cleanairdata.org/api/mcp",
      "enabled": true
    }
  }
}
{
  "mcpServers": {
    "cleanairdata": {
      "type": "http",
      "url": "https://cleanairdata.org/api/mcp"
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=cleanairdata&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vY2xlYW5haXJkYXRhLm9yZy9hcGkvbWNwIn0%3D"
}
{
  "servers": {
    "cleanairdata": {
      "type": "http",
      "url": "https://cleanairdata.org/api/mcp"
    }
  }
}
{
  "mcpServers": {
    "cleanairdata": {
      "httpUrl": "https://cleanairdata.org/api/mcp"
    }
  }
}
extensions:
  "cleanairdata":
    enabled: true
    name: "cleanairdata"
    type: streamable_http
    uri: "https://cleanairdata.org/api/mcp"
    timeout: 300

Quality 89 / 100new

protocol75 · weight 25
  • warn
    protocol.modernnewest supported version is 2025-06-18; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
  • n/a
    protocol.statelessonly applies to 2026-07-28 servers
  • pass
    protocol.transportstreamable HTTP
  • n/a
    protocol.list_ttlonly applies to 2026-07-28 servers
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene100 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • pass
    tools.description_lengthdescriptions are concise
  • pass
    tools.schemasevery tool has an object input schema
  • pass
    tools.annotations3 of 3 tools declare readOnlyHint or destructiveHint
  • pass
    tools.directory_hintsevery tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
  • pass
    tools.token_costabout 660 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
stabilityn/a · weight 15
  • n/a
    stability.changes, stability.rug_pulltool history recorded for 2 of the 7 days needed
dependenciesn/a · weight 15
  • n/a
    deps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI package

3 tools, about 660 tokens to load them all · tool set 9c1eb3092ca4 · checked 2026-10-19 16:53 UTC

Tool changes

No tool definition changes recorded. A server's first observation is its baseline; later probes record what changes.

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.

Trust 78 / 100

no-repository
provenance45
liveness96
freshness100
hygiene80

+website +reachable +uptime-91% +updated-3d-ago -no-repository

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://cleanairdata.org/api/mcp streamable-httpnoneyes91%319 ms2025-06-182026-10-19

Tools (3)

compare_citiesread-onlySide-by-side historical records for two US cities with the difference in Clean Air Score and PM2.5. Warnings list any copied record. Each city is either an own_record (scored from its own data) or a copied_record (the full record of the nearest scored city, named in source_city, source_state and source_distance_miles). A copied_record describes the source city, not measurements taken in the named city. Values are historical annual data, not the current AQI.
get_city_air_qualityread-onlyHistorical Clean Air Score, grade, latest annual PM2.5 mean, unhealthy-day share, trend and yearly PM2.5 for one US city. Each city is either an own_record (scored from its own data) or a copied_record (the full record of the nearest scored city, named in source_city, source_state and source_distance_miles). A copied_record describes the source city, not measurements taken in the named city. Values are historical annual data, not the current AQI.
rank_citiesread-onlyCities with the highest Clean Air Score (cleanest first), optionally within one state. By default only cities with their own record are ranked, so copied records do not crowd the list. Each city is either an own_record (scored from its own data) or a copied_record (the full record of the nearest scored city, named in source_city, source_state and source_distance_miles). A copied_record describes the source city, not measurements taken in the named city. Values are historical annual data, not the current AQI.

Schemas: list_tools.

Similar MCP servers

Official server.json
{
  "name": "io.github.chenweilie/cleanairdata",
  "title": "CleanAirData",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://cleanairdata.org/api/mcp",
      "type": "streamable-http"
    }
  ],
  "version": "0.1.0",
  "websiteUrl": "https://cleanairdata.org/developers/api",
  "description": "Historical PM2.5 and Clean Air Score for US cities; copied records name their source city."
}