OpenAQ

live Environment

Real-time and historical air quality measurements from thousands of sensors worldwide

3 tools
0ms auth
free tier 50 calls/day

Tools

get_latest

Get the latest air quality measurements from sensor stations. Optionally filter by country. Returns readings for pollutants like PM2.5, PM10, ozone, NO2, SO2, and CO.

Parameters
Name Type Description
limit opt number Maximum number of station results to return (default 10, max 100).
country opt string ISO 3166-1 alpha-2 country code to filter by (e.g. "US", "GB", "DE").
Try it
get_locations

Search for air quality sensor locations. Filter by city and/or country to find monitoring stations near a place of interest.

Parameters
Name Type Description
limit opt number Maximum number of locations to return (default 10, max 100).
city opt string City name to filter locations by (e.g. "London", "Los Angeles").
country opt string ISO 3166-1 alpha-2 country code to filter by (e.g. "US", "GB").
Try it
get_measurements required: location_id

Get historical measurements for a specific sensor location. Optionally filter by parameter (pm25, pm10, o3, no2, so2, co).

Parameters
Name Type Description
location_id req number Numeric location ID from get_locations (e.g. 2178).
limit opt number Maximum number of measurement records to return (default 20, max 100).
parameter opt string Pollutant parameter to filter by. One of: pm25, pm10, o3, no2, so2, co.
Try it

Test with curl

The gateway speaks JSON-RPC 2.0 over HTTP POST. You can test any pack directly from the terminal.

List available tools
bash
curl -X POST https://gateway.pipeworx.io/openaq/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
Call a tool
bash
curl -X POST https://gateway.pipeworx.io/openaq/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"get_latest","arguments":{}}}'