Skip to main content
Glama

qingping-mcp

MCP server for Qingping air quality monitors (Air Monitor CGS1, Air Monitor 2, Lite, thermometers…), through the official cloud Open API.

Ask Claude (or any MCP client): "what's the CO₂ in the bedroom?", "did CO₂ go above 1000 ppm last night?", "show me the PM2.5 curve over 7 days".

Tools

Tool

What it does

qingping_current

Latest readings (CO₂, PM2.5, PM10, tVOC, temperature, humidity, battery…) with a plain-language level (good / high — ventilate…), the age of the reading and a warning when it is stale

qingping_history

History over a period: min / max / average per metric, time of the peak, minutes above thresholds (CO₂ > 1000 / 1500 ppm, PM2.5 > 15 / 35, humidity > 60 / 70 %), share of the period actually covered, optional series to draw a chart

qingping_alerts

Triggered alerts (thresholds set in the app)

qingping_set_intervals

Measurement and cloud upload intervals

Related MCP server: mcp-airq-cloud

Setup

  1. On developer.qingping.co, log in with the Qingping+ / Qingping IoT account that owns your sensors, then Access management → copy the App Key and App Secret.

  2. Build the server:

    git clone https://github.com/nicolascoutureau/qingping-mcp.git
    cd qingping-mcp
    npm install && npm run build
  3. Put the keys in a .env file at the project root (it is git-ignored):

    QINGPING_APP_KEY=...
    QINGPING_APP_SECRET=...

    or pass them as environment variables.

  4. Add the server to Claude Code:

    claude mcp add -s user qingping -- node /path/to/qingping-mcp/dist/index.js

Troubleshooting

  • The device is listed but has no reading at all (readingAt: null, empty history, "No historical data" in the app): the sensor is not reaching the Qingping cloud. Check the date and time on the sensor's screen: if they are wrong (e.g. 2015), it is connected to Wi-Fi but has no Internet access. Reset its Wi-Fi and pair it again in the app (2.4 GHz network). The app's "Now" values may arrive over Bluetooth and hide the problem.

  • Freshness: the cloud only knows what the sensor uploads (every 15 min by default). qingping_set_intervals can bring it down to a few minutes for a plugged-in device.

  • tVOC: the API returns it in ppb (the app shows mg/m³).

Development

npm test          # tests (simulated API)
npm run inspect   # MCP Inspector

License

MIT

Available Tools

4 tools
qingping_alertsTriggered alertsA
Read-only

Alerts triggered by a Qingping sensor over a period (thresholds set in the Qingping app, e.g. CO₂ > 1000 ppm).

Inputs: end, hours, start, device.

qingping_currentCurrent readingsA
Read-only

Latest readings of Qingping sensors (CO₂, PM2.5, PM10, tVOC, temperature, humidity, battery…) with a plain-language level (good / high — ventilate…). readingAt / ageMin give the time and age of the reading: the sensor only sends to the cloud once per report interval (often 15 min). staleWarning appears when the reading is late relative to that interval.

Inputs: device.

qingping_historyReading historyA
Read-only

History of a Qingping sensor over a period. Returns, per metric, min / max / average / first / last value, the time of the min and max, and the minutes spent above thresholds (CO₂ > 1000 and > 1500 ppm, PM2.5 > 15 and > 35, humidity > 60 and > 70 %). With max_points > 0, also returns the series (averaged per bucket) to draw a chart. coverage gives the share of the period actually measured: an empty or partial history means "no data", not "nothing to report".

Inputs: end, hours, start, device, +2 more.

qingping_set_intervalsSet intervalsA
Idempotent

Changes the measurement (collect) and cloud upload (report) intervals of a Qingping sensor. A short report interval gives fresher data but drains the battery faster when the device is not plugged in.

Inputs: report_interval_min (required), collect_interval_min (required), device.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4/5.0

    Scored across 4 tools

    Disambiguation5/5

    The four tools map to clearly distinct operations: latest readings, historical aggregation, alert retrieval, and interval configuration. There is no meaningful overlap between current vs. history or alerts vs. readings.

    Naming Consistency5/5

    All tools use a consistent `qingping_` prefix followed by a concise snake_case noun or verb phrase. The pattern is predictable and readable throughout.

    Tool Count5/5

    Four tools is well-scoped for a focused sensor-monitoring server, with each tool covering a distinct part of the lifecycle. No tool feels redundant or out of place.

    Completeness4/5

    The surface covers live readings, history, alerts, and device interval configuration, which are the core monitoring workflows. A device listing or sensor inventory tool would help multi-sensor setups, but the existing set is otherwise complete.

    Maintenance

    ActivityMaintained
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      D
      maintenance
      Enables interaction with the World Air Quality Index to fetch real-time air quality data for cities and coordinates worldwide via Model Context Protocol (MCP).
      1
      MIT
    • A
      license
      Not graded
      quality
      C
      maintenance
      MCP server for the air-Q Cloud API, enabling remote retrieval of air quality sensor data and historical analysis through read-only tools like listing devices, fetching readings, and exporting charts or data.
      46 PyPI
      Apache 2.0
    • F
      license
      Not graded
      quality
      C
      maintenance
      Enables retrieval of real-time air quality data from IQAir, including AQI, pollutant levels, weather, and forecasts for any location, via an MCP-compatible interface without an official API key.
      -