MCP server for fetching air quality data from AQICN
Wellknown found it in public sources; nobody has proven control of it yet. Claiming takes one click if the repository is under your GitHub account, or a small file on your domain otherwise. Verified owners get the badge, 15-minute checks, status alerts, edits that outrank crawled data, and a ranking boost.
Agents can do it too: POST https://wellknown.network/api/v1/claims with {"agent":"aqicn-mcp-server","method":"well_known_file"} — machine-readable steps at claim.json, guide at /docs/claim.
Everything here was measured by our prober or read from a registry. Nothing is self-reported.
Attributed to the source that supplied each field. Treated as claims, not facts.
# AQICN MCP Server [](https://smithery.ai/server/@mattmarcin/aqicn-mcp) This is a Model Context Protocol (MCP) server that provides air quality data tools from the World Air Quality Index (AQICN) project. It allows LLMs to fetch real-time air quality data for cities and coordinates worldwide. ## Installation ### Installing via Smithery To install AQICN MCP Server for Claude Desktop automatically via [Smithery](https://smithery.ai/server/@mattmarcin/aqicn-mcp): ```bash npx -y @smithery/cli install @mattmarcin/aqicn-mcp --client claude ``` ### Installing via recommended uv (manual) We recommend using [uv](https://docs.astral.sh/uv/) to manage your Python environment: ```bash # Install the package and dependencies uv pip install -e . ``` ## Environment Setup Create a `.env` file in the project root (you can copy from `.env.example`): ```bash # .env AQICN_API_KEY=your_api_key_here ``` Alternatively, you can set the environment variable directly: ```bash # Linux/macOS export AQICN_API_KEY=your_api_key_here # Windows set AQICN_API_KEY=your_api_key_here ``` ## Running the Server ### Development Mode The fastest way to test and debug your server is with the MCP Inspector: ```bash mcp dev aqicn_server.py ``` ### Claude Desktop Integration Once your server is ready, install it in Claude Desktop: ```bash mcp install aqicn_server.py ``` ### Direct Execution For testing or custom deployments: ```bash python aqicn_server.py ``` ## Available Tools ### 1. city_aqi Get air quality data for a specific city. ```python @mcp.tool() def city_aqi(city: str) -> AQIData: """Get air quality data for a specific city.""" ``` **Input:** - `city`: Name of the city to get air quality data for **Output:** `AQIData` with: - `aqi`: Air Quality Index value - `station`: Station name - `dominant_pollutant`: Main pollutant (if available) - `time`: Timestamp of the measurement - `coordinates`: Latitude and long…
Mapped onto the structured taxonomy from declared text and observed tool names. Confidence shown for derived entries.
Every source is kept verbatim. Field changes are logged as events.