AQICN MCP Server

by mattmarcin
MIT License
  • Linux
  • Apple

Servidor MCP de AQICN

Este es un servidor de Protocolo de Contexto de Modelo (MCP) que proporciona herramientas de datos de calidad del aire del proyecto Índice Mundial de Calidad del Aire (AQICN). Permite a los LLM obtener datos de calidad del aire en tiempo real de ciudades y coordenadas de todo el mundo.

Instalación

Instalación mediante herrería

Para instalar AQICN MCP Server para Claude Desktop automáticamente a través de Smithery :

npx -y @smithery/cli install @mattmarcin/aqicn-mcp --client claude

Instalación mediante UV recomendada (manual)

Recomendamos utilizar uv para administrar su entorno Python:

# Install the package and dependencies uv pip install -e .

Configuración del entorno

Cree un archivo .env en la raíz del proyecto (puede copiarlo desde .env.example ):

# .env AQICN_API_KEY=your_api_key_here

Alternativamente, puede configurar la variable de entorno directamente:

# Linux/macOS export AQICN_API_KEY=your_api_key_here # Windows set AQICN_API_KEY=your_api_key_here

Ejecución del servidor

Modo de desarrollo

La forma más rápida de probar y depurar su servidor es con el Inspector MCP:

mcp dev aqicn_server.py

Integración de escritorio de Claude

Una vez que su servidor esté listo, instálelo en Claude Desktop:

mcp install aqicn_server.py

Ejecución directa

Para pruebas o implementaciones personalizadas:

python aqicn_server.py

Herramientas disponibles

1. ciudad_aqi

Obtenga datos de calidad del aire para una ciudad específica.

@mcp.tool() def city_aqi(city: str) -> AQIData: """Get air quality data for a specific city."""

Aporte:

  • city : Nombre de la ciudad de la que se obtendrán datos de calidad del aire

Salida: AQIData con:

  • aqi : valor del índice de calidad del aire
  • station : Nombre de la estación
  • dominant_pollutant : Contaminante principal (si está disponible)
  • time : Marca de tiempo de la medición
  • coordinates : Latitud y longitud de la estación

2. geo_aqi

Obtenga datos de calidad del aire para una ubicación específica utilizando coordenadas.

@mcp.tool() def geo_aqi(latitude: float, longitude: float) -> AQIData: """Get air quality data for a specific location using coordinates."""

Aporte:

  • latitude : Latitud de la ubicación
  • longitude : Longitud de la ubicación

Salida: Igual que city_aqi

3. estación de búsqueda

Busque estaciones de monitoreo de calidad del aire por palabra clave.

@mcp.tool() def search_station(keyword: str) -> list[StationInfo]: """Search for air quality monitoring stations by keyword."""

Aporte:

  • keyword : Palabra clave para buscar estaciones (nombre de la ciudad, nombre de la estación, etc.)

Salida: Lista de StationInfo con:

  • name : Nombre de la estación
  • station_id : Identificador único de la estación
  • coordinates : Latitud y longitud de la estación

Ejemplo de uso

Usando el cliente Python de MCP:

from mcp import Client async with Client() as client: # Get air quality data for Beijing beijing_data = await client.city_aqi(city="beijing") print(f"Beijing AQI: {beijing_data.aqi}") # Get air quality data by coordinates (Tokyo) geo_data = await client.geo_aqi(latitude=35.6762, longitude=139.6503) print(f"Tokyo AQI: {geo_data.aqi}") # Search for stations stations = await client.search_station(keyword="london") for station in stations: print(f"Station: {station.name} ({station.coordinates})")

Contribuyendo

No dude en abrir problemas y solicitudes de incorporación de cambios. Asegúrese de que sus cambios incluyan pruebas y documentación adecuadas.

Licencia

Este proyecto está licenciado bajo la licencia MIT.

-
security - not tested
A
license - permissive license
-
quality - not tested

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Permite la interacción con el Índice Mundial de Calidad del Aire para obtener datos de calidad del aire en tiempo real para ciudades y coordenadas de todo el mundo a través del Protocolo de Contexto de Modelo (MCP).

  1. Installation
    1. Installing via Smithery
    2. Installing via recommended uv (manual)
  2. Environment Setup
    1. Running the Server
      1. Development Mode
      2. Claude Desktop Integration
      3. Direct Execution
    2. Available Tools
      1. 1. city_aqi
      2. 2. geo_aqi
      3. 3. search_station
    3. Example Usage
      1. Contributing
        1. License

          Related MCP Servers

          • -
            security
            A
            license
            -
            quality
            A Model Context Protocol server that retrieves current weather information for specified cities using the Open-Meteo API, requiring no API key.
            Last updated -
            Python
            Apache 2.0
            • Linux
            • Apple
          • -
            security
            F
            license
            -
            quality
            Provides current weather and air quality data for any city using WeatherAPI, easily integrating with MCP clients like n8n and Claude Desktop App.
            Last updated -
            214
            JavaScript
          • -
            security
            -
            license
            -
            quality
            Provides a Model Context Protocol server that enables large language models to query and retrieve real-time weather forecasts for cities and regions across China.
            Last updated -
            Python
          • A
            security
            A
            license
            A
            quality
            Model Context Protocol (MCP) server that provides weather forecast, warnings, water level associated with flood, and earthquake reports from Malaysia Government's Open API.
            Last updated -
            4
            Python
            MIT License

          View all related MCP servers

          ID: pi3py17y7w