Weather

Pronósticos meteorológicos precisos a través de la API de AccuWeather (nivel gratuito disponible).

Documentación

Servidor Meteorológico MCP

npm version license node version issues weekly downloads Trust Score

MCP Weather Server Logo Weather MCP server

Un servidor de Protocolo de Contexto de Modelo (MCP) que proporciona pronósticos meteorológicos por hora y por día utilizando la API de AccuWeather.


Inicio Rápido

Necesitas una clave de API de AccuWeather (el nivel gratuito está disponible).
Regístrate aquí y crea una aplicación para obtener tu clave.

Exporta tu clave de API como una variable de entorno:

export ACCUWEATHER_API_KEY=your_api_key_here

Luego ejecuta el servidor meteorológico MCP directamente con:

npx -y @timlukahorstmann/mcp-weather

O, para acceso HTTP/REST a través de supergateway:

npx -y supergateway --stdio "npx -y @timlukahorstmann/mcp-weather" \
  --port 4004 \
  --baseUrl http://127.0.0.1:4004 \
  --ssePath /messages \
  --messagePath /message \
  --cors "*" \
  --env ACCUWEATHER_API_KEY="$ACCUWEATHER_API_KEY"

Ejemplo de Configuración del Servidor MCP

Para la integración con Claude Desktop u otros clientes compatibles con MCP, agrega esto a tu configuración (por ejemplo, claude_desktop_config.json):

{
  "mcpServers": {
    "weather": {
      "command": "npx",
      "args": ["-y", "@timlukahorstmann/mcp-weather"],
      "env": {
        "ACCUWEATHER_API_KEY": "your_api_key_here"
      }
    }
  }
}

Resumen

Este servidor MCP permite que los modelos de lenguaje grandes (como Claude) accedan a datos meteorológicos en tiempo real. Cuando se integra con un LLM, permite que el modelo:

  • Obtenga pronósticos meteorológicos precisos y actualizados
  • Proporcione datos meteorológicos por hora para las próximas 12 horas
  • Acceda a pronósticos meteorológicos diarios de hasta 15 días
  • Muestre datos en unidades métricas (°C) e imperiales (°F)
  • Vea temperatura, condiciones, información de precipitación y otros detalles meteorológicos

Herramientas Disponibles

Pronóstico Meteorológico por Hora

  • Nombre de la herramienta: weather-get_hourly
  • Proporciona pronósticos por hora para las próximas 12 horas
  • Parámetros:
    • location (obligatorio): Nombre de la ciudad o ubicación
    • units (opcional): "metric" (Celsius, predeterminado) o "imperial" (Fahrenheit)

Pronóstico Meteorológico Diario

  • Nombre de la herramienta: weather-get_daily
  • Proporciona pronósticos diarios de hasta 15 días
  • Parámetros:
    • location (obligatorio): Nombre de la ciudad o ubicación
    • days (opcional): Número de días de pronóstico (1, 5, 10 o 15; el predeterminado es 5)
    • units (opcional): "metric" (Celsius, predeterminado) o "imperial" (Fahrenheit)

Requisitos Previos

  • Node.js ≥18
  • Una clave de API de AccuWeather (configurada mediante .env o tu shell)

Configuración

  1. Clona este repositorio:

    git clone https://github.com/TimLukaHorstmann/mcp-weather.git
    cd mcp-weather
    
  2. Instala las dependencias:

    npm install
    
  3. Obtén una clave de API de AccuWeather:

  4. Crea un archivo .env con tu clave de API:

    ACCUWEATHER_API_KEY=your_api_key_here
    
  5. Compila el proyecto:

    npm run build
    

Uso con Claude Desktop

  1. Configura Claude Desktop para usar este servidor MCP:

    • Abre Claude Desktop
    • Ve a Configuración > Desarrollador > Editar Configuración
    • Agrega lo siguiente a tu claude_desktop_config.json:
    {
      "mcpServers": {
        "weather": {
          "command": "npx",
          "args": ["-y", "@timlukahorstmann/mcp-weather"],
          "env": {
            "ACCUWEATHER_API_KEY": "your_api_key_here"
          }
        }
      }
    }
    
  2. Reinicia Claude Desktop

  3. En una nueva conversación, habilita el servidor MCP haciendo clic en el ícono de enchufe y seleccionando "weather"

  4. Ahora puedes pedirle a Claude pronósticos meteorológicos, como por ejemplo:

    • "¿Cuál es el pronóstico meteorológico por hora para la ciudad de Nueva York?"
    • "Dame el pronóstico de 5 días para Londres."
    • "¿Cómo estará el clima en Tokio esta semana en Fahrenheit?"
    • "¿Lloverá en San Francisco mañana?"

Desarrollo

  • Instala las dependencias de desarrollo: npm install
  • Revisa tu código con el linter: npm run lint
  • Compila: npm run build
  • Ejecuta las pruebas: npm test
  • Inicia en modo de desarrollo: npm run dev

Contribuciones

¡Las contribuciones son bienvenidas! No dudes en enviar una Solicitud de Extracción (Pull Request).

Mejoras Futuras

Siempre estamos buscando mejorar el Servidor Meteorológico MCP. Estas son algunas características que estamos considerando para futuras versiones:

  • Pronósticos por Hora Extendidos: Más allá de 12 horas, por ejemplo, 24 o 48 horas.
  • Alertas Meteorológicas: Integración con la API de alertas meteorológicas severas de AccuWeather.
  • Autocompletado de Ubicaciones: Búsqueda de ubicaciones mejorada con sugerencias de autocompletado.
  • Datos Meteorológicos Históricos: Acceso a condiciones meteorológicas pasadas.

Si tienes ideas para otras características, ¡no dudes en abrir un problema (issue)!

Registro de Cambios

0.4.0

  • Se eliminó el requisito de sessionId de todas las herramientas, ya que no se usaba internamente para nada
  • Esto simplifica las integraciones y reduce la confusión para el uso con LLM

0.3.0 y anteriores

  • Versiones iniciales con funcionalidad básica

Licencia

Este proyecto está licenciado bajo la Licencia MIT: consulta el archivo LICENCIA para más detalles.