Live weather and air quality (GAIA)
Weather, air quality and nearest live sensors anywhere, each with a signed receipt. Free, no key.
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 »).
claude mcp add --transport http live-weather-and-air-quality-gaia 'https://modelmarket.dev/tools/mcp/weather'
{
"mcpServers": {
"live-weather-and-air-quality-gaia": {
"type": "http",
"url": "https://modelmarket.dev/tools/mcp/weather"
}
}
}
Documentation
Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.
Sommaire
🔄 Synced from a monorepo — but with a live history.
gaiamirrors the canonical AI-Factory monorepo. History here is append-only (no force-push). Pull requests are welcome — merged PRs are imported back into the monorepo and re-synced here, so your contribution becomes canonical. 💬 Issues · Pull requests both welcome.
GAIA — physical-world oracle gateway
Own a weather station or air-quality sensor? Sell your readings through your own Hub + GAIA.
For an existing MQTT station, see the single-station MQTT adapter.
=3.11" />
GAIA is a physical-world oracle gateway that sells Ed25519-attested sensor readings from
virtual IoT devices as paid AIMarket v2 capabilities, and serves a Metis-envelope-compatible
/v1/verify so the hub's Pay-on-Verified escrow can settle them —
an honest reading gets the provider paid, a lying sensor refunds the buyer automatically.
It is the ecosystem's third oracle class: math oracles prove computations, Metis judges LLM output, GAIA grounds settlement in physics. The demo fleet is simulated (two co-located weather stations sharing one site truth, an air-quality node, an energy meter — models imitate BME280/SDS011/SCD30/Shelly-EM-class hardware), but every wire surface — manifest, invoke, receipts, provider signature, verify envelope, W3C WoT Thing Descriptions — is the real one.
📖 Deep-dive (monorepo):
docs/iot-physical-oracles.md🌍 Live devices:gaia/devices/live.py🎬 3D visualization:frontend/(cd frontend && npm i && npm run dev)
Quickstart
# Container
docker pull ghcr.io/alexar76/gaia:latest
docker run --rm -p 9320:9320 ghcr.io/alexar76/gaia:latest
# From source (satellite checkout vendors oracle-core)
pip install -e vendor/oracle-core -e ".[dev]" # or: pip install -e ../oracles/core -e ".[dev]"
python -m gaia.main # :9320
Poke it:
curl -s localhost:9320/.well-known/ai-market.json
curl -s localhost:9320/ai-market/v2/manifest
curl -s -X POST localhost:9320/ai-market/v2/invoke \
-H 'Content-Type: application/json' \
-d '{"capability_id": "gaia.weather.read@v1", "product_id": "gaia.gateway",
"input": {"device_id": "ws-01"}}'
Live devices — relay real public sensors
Set GAIA_ENABLE_LIVE=1 to register real public-API relays alongside the simulators.
Every relay uses the same Ed25519 attestation + plausibility path. Unreachable upstream
→ DeviceOffline → 503 / {ok:false} → no debit. Upstream hosts are allowlisted
(SSRF defence); invoke clients never supply a URL.
| Device id | Capability | Upstream | Key? |
|---|---|---|---|
nws-01 | gaia.weather.read@v1 | NOAA/NWS api.weather.gov | no |
om-wx-01 | gaia.weather.read@v1 | Open-Meteo weather | no |
osm-01 | gaia.air.read@v1 | openSenseMap | no |
om-aq-01 | gaia.air.read@v1 | Open-Meteo air quality | no |
sta-01 | gaia.air.read@v1 | OGC SensorThings (Fraunhofer) | no |
openaq-01 | gaia.air.read@v1 | OpenAQ v3 | yes — free key from explore.openaq.org → GAIA_OPENAQ_API_KEY |
uk-grid-01 | gaia.grid.read@v1 | UK Carbon Intensity | no |
usgs-quake-01 | gaia.quake.read@v1 | USGS GeoJSON feed | no |
noaa-tide-01 | gaia.tide.read@v1 | NOAA CO-OPS tides | no |
firms-fire-01 | gaia.fire.read@v1 | NASA FIRMS VIIRS (cite NASA) | no |
safecast-01 | gaia.radiation.read@v1 | Safecast (CC0) | no |
cybernews-jam-01 | gaia.jamming.read@v1 | CyberNews GNSS (CC BY 4.0) | no |
feeder-adsb-01 | gaia.adsb.read@v1 | Own dump1090 ingest | GAIA_FEEDER_* |
feeder-ais-01 | gaia.ais.read@v1 | Own AIS ingest | GAIA_FEEDER_* |
Full operator notes (5 languages): docs/LIVE-RELAYS.md.
Add a sensor / pin (GAIA → ATLAS): docs/add-gaia-atlas-sensor.md (EN · RU · ES · FR · ZH).
curl -s -X POST https://iot.modelmarket.dev/ai-market/v2/invoke \
-H 'Content-Type: application/json' \
-d '{"capability_id":"gaia.grid.read@v1","product_id":"gaia.gateway",
"input":{"device_id":"uk-grid-01"}}'
Beyond reading — places, power prices, imagery, device control
| Capability | Price | What it does | Guide |
|---|---|---|---|
gaia.place.resolve@v1 | free | Any populated place by name ("Kraków", "Paris, Texas", "東京") → one place, or the candidates when the name is ambiguous; says which GAIA reads cover it (GeoNames, CC BY 4.0) | Places |
gaia.power.price.read@v1 | $0.001 | Day-ahead electricity price of a European bidding zone, now and over the next 24 h (SMARD, CC BY 4.0; 15 zones) | Power prices |
gaia.power.window@v1 | $0.002 | When is power cheapest for N hours — with the prices used and their SHA-256 (an 11 kW EV charge was 38 % cheaper at 12:30 than at 08:40 on 2026-10-16) | Power prices |
gaia.imagery.read@v1 | $0.005 | Latest cloud-free Sentinel-2 view of any land point: NDVI, NDWI, NBR, NDMI | Imagery |
gaia.actuator.list@v1 | free | The operator's switchable devices and their limits | Device control |
gaia.actuate@v1 | $0.05 | Switch the public demo plug on for N seconds or off — paid only for the effect its meter measures (Pay-on-Verified). A real plug answers only its owner | Device control |
gaia.owner.command@v1 | free | The owner (or a delegate) switches their own plug, signed with their wallet (EIP-712) — no hub, no payment | Device control |
gaia.owner.consumption@v1 | free | The owner reads their plug's hourly or daily consumption, signed by the plug's key | Device control |
gaia.consumption.read@v1 | $0.01 | A plug's consumption statistics, only where its owner put them on sale, in whole finished hours or days | Device control |
License
MIT — see LICENSE.
Questions fréquentes
Qu'est-ce que Live weather and air quality (GAIA) ?
Weather, air quality and nearest live sensors anywhere, each with a signed receipt. Free, no key.
Comment installer Live weather and air quality (GAIA) ?
Il fonctionne comme serveur distant. Dans Claude Code : claude mcp add --transport http live-weather-and-air-quality-gaia 'https://modelmarket.dev/tools/mcp/weather'. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.
Faut-il une clé API pour Live weather and air quality (GAIA) ?
Son entrée au registre n'indique aucune clé ni secret obligatoire. Certaines fonctions peuvent tout de même demander un compte auprès du service auquel il se connecte.
Live weather and air quality (GAIA) est-il open source ?
Oui. Son code est sur GitHub sous licence MIT.
Qui maintient Live weather and air quality (GAIA) ?
Il est publié par alexar76. 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.