Wellness Air
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| AIRTHINGS_API_KEY | No | Optional API key for AirThings account. | |
| PURPLEAIR_API_KEY | No | Optional API key for PurpleAir. | |
| AIRGRADIENT_API_TOKEN | No | Optional API token for owned AirGradient sensors (private sensor access). | |
| WELLNESS_AIR_DEFAULT_LOCATION | Yes | The default location ID for AirGradient public sensor (numeric locationId from airgradient map). Required for basic operation. | |
| WELLNESS_AIR_DEFAULT_PROVIDER | No | The default provider: airgradient, airthings, purpleair, etc. | airgradient |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| air_agent_manifestB | Returns the wellness-air agent manifest: tool list, supported clients, env vars, recommended first calls, capabilities, privacy posture, and community links. |
| air_capabilitiesA | Lists supported providers, configured providers (via env vars), available metrics, and privacy modes. |
| air_connection_statusA | Reports which providers are configured, which is the default, and any warnings the agent should surface to the user. |
| air_privacy_auditA | Returns what wellness-air stores locally, what it sends to providers, what it never logs, and agent rules. |
| air_data_inventoryA | Returns the inventory of air-quality metrics this connector exposes plus per-provider availability hints (no remote calls). |
| air_current_readingB | Fetches the most recent air-quality reading for a location. Defaults to the AirGradient public sensor at WELLNESS_AIR_DEFAULT_LOCATION (or pass locationId). |
| air_list_devicesA | Lists devices owned by the configured provider account. v0.3 supports AirThings (requires AIRTHINGS_CLIENT_ID/SECRET). For AirGradient owned sensors use air_search_public_sensors instead. |
| air_aqi_checkA | Returns just the AQI number + band for the configured location. Use for fast 'is the air OK to go outside?' prompts. |
| air_daily_summaryB | Returns a synthesized daily snapshot for a location. v0.1 returns the current reading framed as a daily snapshot; richer multi-hour aggregation arrives in v0.2. |
| air_compare_locationsB | Compare current readings across multiple location IDs (default: AirGradient public sensors). |
| air_search_public_sensorsB | Helper for discovering AirGradient public sensors. Returns a curated list of well-maintained public sensors plus a hint to the AirGradient map for finding more. |
| air_quickstartA | Returns a personalized 3-step setup walkthrough for the human based on the current agent/env state. Call this first when the user asks 'how do I use this?' |
| air_profile_getA | Returns the shared Delx Wellness profile (~/.delx-wellness/profile.json). Read-only. Surfaces the user's preferred location, sensitivity flags (asthma, etc.), and units so wellness-air can choose tighter AQI thresholds. |
| air_profile_updateA | Persist a partial patch to the shared Delx Wellness profile. Requires explicit_user_intent: true. Rejects any field containing oauth/token/secret/password/cookie/refresh/api_key/session — the profile is for non-secret wellness context only. |
| air_onboardingA | Returns the 11-question onboarding flow for the shared Delx Wellness profile. Read-only. The agent should ask these questions next so wellness-air (and the rest of the wellness stack) can personalize responses — non-secret data only, stored at ~/.delx-wellness/profile.json. |
| air_demoA | Returns a realistic example payload of what air_current_reading + air_daily_summary look like in practice. Use this to help users understand what the connector will return BEFORE they configure anything. |
| air_health_recommendationA | Quick PM2.5-centric health recommendation. Pass current PM2.5 (µg/m³) and optionally CO2 (ppm) and VOC index; returns WHO/EPA-aligned bands per pollutant, the overall worst band, and a deduplicated list of plain-language actions. Use this when you have a reading already and just want a 'what should I do?' answer. For richer four-pollutant classification with full source citations use air_health_bands. |
| air_health_bandsA | Classify PM2.5, PM10, CO2, and VOC readings into WHO 2021 / EPA / ASHRAE / UBA health bands. Pass readings directly, or omit them and the tool will fetch the current reading from the default provider (PM2.5, PM10, CO2, VOC where available). Returns per-pollutant band + the worst signal across pollutants + deduplicated recommended actions + source citations. |
| air_trendA | Windowed trend analysis for PM2.5 / CO2 / VOC. Pulls past measurements from AirGradient (public or owned) and returns per-pollutant mean / median / min / max / current / rate_of_change_per_hour / peak_at / trough_at / time_above_threshold_minutes plus an optional natural-language observation (only when the data supports one). Pass |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/davidmosiah/wellness-air'
If you have feedback or need assistance with the MCP directory API, please join our Discord server