mcpbeat Sign in

Openaq MCP Server

not responding

Openaq MCP Server is listed as active in the registry but did not answer our last check. 202 installs a week from npm. It exposes 7 tools. Last commit 27 Sep 2026.

Find air-quality stations and read pollutant observations from government monitors via OpenAQ v3.

Installs per day peak 98 · avg 19 · +132% w/w
a month agotoday
Uptime history 91 days of history · worst day 0%
91 days agonow
0.0%
Uptime 24h
0 of 92 checks
7
Tools
read from the server
6 ms
Response time
average over 24h
202
Installs / week
npm and PyPI

What changed 32

Every tool that appeared, vanished or quietly changed what it asks for. Recorded since 25 August 2026. No other catalogue keeps this.

27 Sep a tool changed version
24 Sep 5 tools changed the parameters they ask for7 times that day openaq_find_locations, openaq_get_measurements, openaq_get_readings and 2 more
24 Sep 5 tool descriptions were rewritten openaq_find_locations, openaq_get_measurements, openaq_get_readings and 2 more
24 Sep a tool changed version
22 Sep 3 tools changed the parameters they ask for openaq_dataframe_describe, openaq_dataframe_query, openaq_get_measurements
22 Sep 2 tool descriptions were rewritten openaq_dataframe_query, openaq_get_measurements
22 Sep a tool changed version
20 Sep 3 tools changed the parameters they ask for openaq_dataframe_describe, openaq_dataframe_query, openaq_get_measurements
20 Sep a tool changed version
25 Aug 7 tools changed the parameters they ask for openaq_dataframe_describe, openaq_dataframe_query, openaq_find_locations and 4 more
and 3 more, back to 25 August 2026

Openaq MCP Server does not always answer

Over the last week it answered 0.0% of our checks. We check every 15 minutes, so you hear about the next outage within the hour — not from your users.

Three servers free · no card

Connect this server

Endpoint below is the one we actually reach during checks — not the one copied from a README. Last verified 3 min ago.

run in your terminal
claude mcp add openaq-mcp-server --transport http https://openaq.caseyjhand.com/mcp
Settings → Connectors → Add custom connector, then paste this address
https://openaq.caseyjhand.com/mcp
~/.codex/config.toml
[mcp_servers.openaq-mcp-server]
url = "https://openaq.caseyjhand.com/mcp"
.cursor/mcp.json
{
  "mcpServers": {
    "openaq-mcp-server": {
      "url": "https://openaq.caseyjhand.com/mcp"
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "openaq-mcp-server": {
      "type": "http",
      "url": "https://openaq.caseyjhand.com/mcp"
    }
  }
}

Available tools 7

Read directly from the server with tools/list, grouped by what they act on. If a tool disappears, we record the date.

openaq
openaq_dataframe_describe
List the tables and columns staged on a DataCanvas so you can write valid SQL for openaq_dataframe_query without guessing column names. Returns each measurement table (measurements_<sensorId>) with its row count and column names. Requires DataCanvas to be enabled.
openaq_dataframe_query
Run a read-only SQL SELECT against the measurement tables openaq_get_measurements staged on a DataCanvas. Reference tables by the name the measurements call returned (measurements_<sensorId>). For aggregation (monthly means, exceedance counts) and cross-sensor comparison over series too large to inline. Only SELECT is allowed — writes, DDL, and file/network table functions are rejected. Responses carry at most 200 rows; aggregate in SQL, or page with ORDER BY plus LIMIT/OFFSET, rather than selecting a whole table.
openaq_find_locations
Find air-quality monitoring stations (measured by physical sensors, not modeled) near a point, within a bounding box, or by country, optionally narrowed to one parameter, one station class (reference monitors or low-cost sensors, mobile or fixed), or one provider network. Returns each station's id, name, coordinates, distance from the query point (when searching by coordinates), country, provider name and id, the parameters its sensors measure, and the timestamp of its most recent data (datetimeLast). Required first step: openaq_get_readings and openaq_get_measurements key on the location id this returns. Coverage is uneven and real — a station only reports the parameters it measures, and the absence of a nearby station means no monitoring there, not clean air. For dense modeled coverage anywhere on Earth, use open-meteo-mcp-server's air-quality tool instead.
openaq_get_measurements
Historical measurement series for one pollutant at one station over a date range — for trend analysis and "was last week worse than the monthly average?". Pass a locationId and a parametersId and work in stations — you get the series for that pollutant at that station. Choose aggregation: raw (every reported value), hourly, or daily — daily and hourly add a per-bucket statistical summary (min, median, max, mean, sd). A date-only bound means the station's local calendar day. Large ranges produce thousands of rows and stage on a DataCanvas: the response returns a preview plus a canvasId and table name — call openaq_dataframe_describe on the canvasId for the table's columns, then openaq_dataframe_query to run SQL over it. Passing a canvas_id stages the series there whatever its size, so two stations land on one canvas for a side-by-side comparison. Values carry their unit; the server never converts between µg/m³, ppm, and ppb.
openaq_get_readings
Latest measured value for every sensor at a monitoring station — the current-conditions tool. Returns one record per parameter, each with the value, its unit, the UTC and local timestamp, and the sensor id, joined so every value carries its pollutant and unit (the raw latest feed is keyed only by sensor id). The station block names its provider (for attribution) and timezone. Pass a locationId from openaq_find_locations, or pass coordinates to auto-resolve to the nearest station that measures the requested parametersId. Data recency varies by station reporting cadence — read each value's timestamp to know whether "latest" is minutes or hours old. These are measured observations with coverage gaps, not a modeled grid.
openaq_list_countries
Catalog of country-level coverage: id, OpenAQ country code, name, the date span of available station data (datetimeFirst/datetimeLast), and which parameters are measured anywhere in that country. The availability check before a regional sweep — answers "which countries have NO2 monitoring?" and tells you whether a country has recent data before you call openaq_find_locations. Coverage is uneven worldwide; this surfaces where measured data exists. Results come a page at a time (20 countries by default); totalCount is the full filtered count.
openaq_list_parameters
Catalog of every measurable pollutant and its canonical unit: id, code, display name, unit, and a one-line description (pm25, pm10, o3, no2, so2, co, bc, and more). This is the unit-disambiguation reference — the same pollutant exists under several ids with different units (CO is id 4 in µg/m³, id 8 in ppm, id 102 in ppb), so use this to pick the exact parametersId for openaq_find_locations / openaq_get_readings / openaq_get_measurements and to interpret a reading's unit. A small bounded catalog fetched live from OpenAQ.

Endpoints

URLTransportStateLatencyChecked
https://openaq.caseyjhand.com/mcp streamable-http answering 6 ms 3 min ago

Alternatives to Openaq MCP Server

same job, measured the same way
UK Air Quality MCP Server from MCPBundles
by mcpbundles

Access UK air quality data, monitoring sites, and hourly pollutant measurements across regions

answering
StatOSS
by statoss

Status pages and uptime monitoring: read status, monitors and incidents; open incidents.

answering
Semantica AI — AI Search Visibility
by ai-semantica

Monitor brand visibility, citations, competitors, sentiment, and GEO performance in AI search.

94 tools answering
MC-Data Monitor
by evozim

SQL pipeline observability and DBT integration monitor.

1 tools answering
whatmount — TV and monitor mount facts
by whatmount

VESA pattern, dimensions and weight per TV or monitor model, from the makers' manuals. Read-only.

3 tools answering
Statuser
by statuser-cloud

Monitor services, manage incidents and status pages in Statuser.cloud from your AI assistant.

116 installs/wk answering
Reg Monitoring
by regmonitoring

Financial regulatory updates, deadlines and enforcement actions from regulators worldwide.

answering
Vivere
by vivere

Know when cron jobs and AI agents stop running: create monitors and check in from your agent.

37 tools answering

Openaq MCP Server — questions

Answers built from our own checks of this server.

What can Openaq MCP Server do?
It exposes 7 tools, read directly from the server on our last check. Among them: openaq_dataframe_describe, openaq_dataframe_query, openaq_find_locations, openaq_get_measurements, openaq_get_readings, openaq_list_countries and 1 more. The full list with descriptions is on this page — we take it from the server itself via tools/list, not from a README. How MCP servers expose tools in the first place →
Is Openaq MCP Server working right now?
We send a real MCP handshake every 15 minutes. Over the last 24 hours 0 of 92 checks got a reply (0.0%), average response time 6 ms. The bar chart above shows every period we have measured.
The registry lists Openaq MCP Server as active — why does it not respond?
The official MCP registry stores what the author submitted; it does not verify that the server still runs. We check the endpoint ourselves, and this one does not answer. Catalogues that copy the registry without checking will show it as working.
How do I connect Openaq MCP Server?
Copy the ready config from this page. We generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each in the form that client actually reads. It is a remote server, so there is nothing to install — the client connects to the address.
Does Openaq MCP Server need an API key?
No. Openaq MCP Server completed a full MCP handshake with us as an anonymous client and listed its tools without asking for anything. All 7 of them are readable on this page. This is what we observed, not what the docs claim.
How many people use Openaq MCP Server?
The npm package @cyanheads/openaq-mcp-server was installed 202 times in the last week. Week over week that is +132%. We show installs rather than GitHub stars on purpose: a star is a bookmark, an install is someone actually running it.
Is Openaq MCP Server open source?
The code is open source: it is published under the Apache-2.0 licence, written in TypeScript, 3 stars on GitHub and 3 open issues. The licence covers the code in the repository, not the hosted service at openaq.caseyjhand.com, which runs on its operator's own terms.