air-Q Cloud

Registre officiel Autres

MCP server for air-Q Cloud API — access air quality data from anywhere

Installation

Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).

PYPI package mcp-airq-cloud
Claude Code
claude mcp add air-q-cloud -e 'AIRQ_CLOUD_CONFIG_FILE=<AIRQ_CLOUD_CONFIG_FILE>' -e 'AIRQ_CLOUD_DEVICES=<your airq_cloud_devices>' -e 'AIRQ_CLOUD_API_KEY=<your airq_cloud_api_key>' -- uvx mcp-airq-cloud==1.4.6
Configuration JSON (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "air-q-cloud": {
            "command": "uvx",
            "args": [
                "mcp-airq-cloud==1.4.6"
            ],
            "env": {
                "AIRQ_CLOUD_CONFIG_FILE": "<AIRQ_CLOUD_CONFIG_FILE>",
                "AIRQ_CLOUD_DEVICES": "<your airq_cloud_devices>",
                "AIRQ_CLOUD_API_KEY": "<your airq_cloud_api_key>"
            }
        }
    }
}

Variables d'environnement

  • AIRQ_CLOUD_CONFIG_FILE Path to the air-Q Cloud device configuration JSON file
  • AIRQ_CLOUD_DEVICES secret Inline JSON array with configured air-Q Cloud devices
  • AIRQ_CLOUD_API_KEY secret Global fallback API key (used when per-device api_key is omitted)

Documentation

Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.

Sommaire
  1. mcp-airq-cloud
  2. Tools
  3. Installation
  4. CLI Usage
  5. Historical Data
  6. Configuration
  7. Usage with Claude Desktop
  8. Usage with Claude Code
  9. Development
  10. License

mcp-airq-cloud

MCP server for the air-Q Cloud API — access air quality data from anywhere.

Unlike mcp-airq (which communicates directly with devices on the local network), this server uses the air-Q Cloud REST API to retrieve sensor data remotely.

The same mcp-airq-cloud executable also works as a direct CLI when you pass a tool name as a subcommand.

Tools

ToolDescription
list_devicesList configured air-Q Cloud devices
get_air_qualityGet latest sensor readings (supports device/location/group selection)
get_air_quality_historyGet historical data within a time range as column-oriented JSON
plot_air_quality_historyRender one historical chart per sensor across all matching devices
export_air_quality_historyExport one historical sensor as one csv or xlsx across matching devices

All tools are read-only — the Cloud API does not support device configuration or control.

Installation

pip install mcp-airq-cloud

Or install from source:

git clone https://github.com/CorantGmbH/mcp-airq-cloud.git
cd mcp-airq-cloud
uv sync --frozen --extra dev

CLI Usage

Use the same command directly from the shell:

mcp-airq-cloud list-devices
mcp-airq-cloud get-air-quality --device "Living Room"
mcp-airq-cloud get-air-quality-history --device "Living Room" --last-hours 24 --sensors co2 pm2_5
mcp-airq-cloud plot-air-quality-history --sensor co2 --output-format png --output co2.png
mcp-airq-cloud export-air-quality-history --sensor co2 --output-format xlsx --output co2.xlsx

For historical plots and exports:

  • omit device, location, and group to combine all configured devices into one artifact
  • use location or group to combine only the matching devices
  • plot_air_quality_history returns one file per requested sensor, with one series per matching device
  • export_air_quality_history returns one CSV/XLSX file per request, with rows for all matching devices

The CLI subcommands mirror the MCP tool names. Both styles work:

mcp-airq-cloud list-devices
mcp-airq-cloud list_devices

To force MCP server mode from an interactive terminal, run:

mcp-airq-cloud serve

The CLI is pipe-friendly: successful command output goes to stdout, while tool errors go to stderr with exit code 1. Plot commands can also stream directly to stdout.

mcp-airq-cloud get-air-quality --device "Living Room" | jq '.co2'
mcp-airq-cloud get-air-quality-history --device "Living Room" --compact-json | jq '.columns.co2'
mcp-airq-cloud get-air-quality-history --device "Living Room" --yaml | yq '.columns.co2'
mcp-airq-cloud plot-air-quality-history --sensor co2 --device "Living Room" --output - > co2.png
mcp-airq-cloud export-air-quality-history --sensor co2 --device "Living Room" --output - > co2.xlsx

Historical Data

Three tools provide access to historical sensor data via the air-Q Cloud API:

Plotting charts

plot_air_quality_history renders a chart for one sensor. When multiple devices match, each device becomes a separate series in the same chart.

Single device (24 h, area chart, PNG)

Multiple devices at one location (24 h, area chart, PNG)

# Single device, last 24 hours (default), PNG output (default)
mcp-airq-cloud plot-air-quality-history --sensor co2 --device "Living Room"

# All devices at a location, custom time range, SVG output
mcp-airq-cloud plot-air-quality-history --sensor co2 --location "Living Room" \
  --from-datetime "2026-03-16T00:00:00" --to-datetime "2026-03-17T00:00:00" \
  --output-format svg --output co2.svg

# All configured devices, dark mode, line chart
mcp-airq-cloud plot-air-quality-history --sensor co2 --dark --chart-type line

# Save to file
mcp-airq-cloud plot-air-quality-history --sensor co2 --output co2_chart.png

Output formats: png (default), webp, svg, html (interactive Plotly chart with hover tooltips and zoom)

Customization: --title, --x-axis-title, --y-axis-title, --chart-type (line/area), --dark, --timezone-name

Exporting data

export_air_quality_history produces one CSV or Excel file containing all matching devices.

# CSV export (default)
mcp-airq-cloud export-air-quality-history --sensor co2 --device "Living Room" --last-hours 48

# Excel export for all devices at a location
mcp-airq-cloud export-air-quality-history --sensor co2 --location "Home" \
  --output-format xlsx --output co2.xlsx
Common parameters
ParameterDefaultDescription
--last-hours1 (history) / 24 (plot)Hours of data to retrieve
--from-datetime / --to-datetime—ISO 8601 time range (overrides --last-hours)
--max-points300Downsample to at most N evenly spaced points
--timezone-nameUTCIANA timezone for timestamps (e.g. Europe/Berlin)

Configuration

You need a Cloud API key and the 32-character device ID for each device. Both can be obtained at my.air-q.com.

Option 1: Environment variable (inline JSON)
export AIRQ_CLOUD_DEVICES='[{"id": "de45d2ed777780c96c0deae7a220b745", "api_key": "your-api-key", "name": "Living Room"}]'

Place a JSON file at ~/.config/airq-cloud-devices.json — no environment variable needed:

[
  {"id": "de45d2ed777780c96c0deae7a220b745", "api_key": "your-api-key", "name": "Living Room"}
]
Option 3: Custom config file path
export AIRQ_CLOUD_CONFIG_FILE=/path/to/devices.json
Option 4: Global API key

If all devices share the same API key, set it once:

export AIRQ_CLOUD_API_KEY="your-api-key"
export AIRQ_CLOUD_DEVICES='[{"id": "de45d2ed777780c96c0deae7a220b745", "name": "Living Room"}]'
Device config fields
FieldRequiredDescription
idyes32-character cloud device ID
api_keynoPer-device API key (falls back to AIRQ_CLOUD_API_KEY)
namenoFriendly name (defaults to first 8 chars of ID)
locationnoLocation for grouping (e.g. "Wohnzimmer")
groupnoGroup for grouping (e.g. "zu Hause")

Usage with Claude Desktop

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "air-Q Cloud": {
      "command": "mcp-airq-cloud",
      "env": {
        "AIRQ_CLOUD_DEVICES": "[{\"id\": \"<device-id>\", \"api_key\": \"<key>\", \"name\": \"Living Room\"}]"
      }
    }
  }
}

Usage with Claude Code

claude mcp add air-Q-Cloud mcp-airq-cloud \
  -e AIRQ_CLOUD_DEVICES='[{"id":"<ID>","api_key":"<KEY>","name":"<Name>"}]'

Development

uv sync --frozen --extra dev
uv run pre-commit install
uv run pytest

The repository uses a project-local .venv plus uv.lock for reproducible tooling. Run developer commands through uv run, for example:

uv run ruff check .
uv run ruff format --check .
uv run pyright
uv run pre-commit run --all-files

License

Apache 2.0 — see LICENSE.

Questions fréquentes

Qu'est-ce que air-Q Cloud ?

MCP server for air-Q Cloud API — access air quality data from anywhere

Comment installer air-Q Cloud ?

Il s'exécute sur votre machine. Dans Claude Code : claude mcp add air-q-cloud -e 'AIRQ_CLOUD_CONFIG_FILE=<AIRQ_CLOUD_CONFIG_FILE>' -e 'AIRQ_CLOUD_DEVICES=<your airq_cloud_devices>' -e 'AIRQ_CLOUD_API_KEY=<your airq_cloud_api_key>' -- uvx mcp-airq-cloud==1.4.6. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.

Faut-il une clé API pour air-Q Cloud ?

Oui. Il attend AIRQ_CLOUD_DEVICES, AIRQ_CLOUD_API_KEY, à renseigner dans sa configuration.

air-Q Cloud est-il open source ?

Oui. Son code est sur GitHub sous licence Apache-2.0.

Qui maintient air-Q Cloud ?

Il est publié par CorantGmbH. AI.tn le référence sans le maintenir ni le recommander.

Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.