Skip to main content
Glama
JackKuo666

Weather-MCP-Server

by JackKuo666

Servidor MCP meteorológico

Este es un servidor de Protocolo de Contexto de Modelo (MCP) que proporciona información meteorológica mediante la API del Servicio Meteorológico Nacional (NWS).

Características

  • Reciba alertas meteorológicas para un estado de EE. UU.

  • Obtener el pronóstico del tiempo para una ubicación específica (usando latitud y longitud)

Related MCP server: Weather MCP Server

Requisitos

  • Python 3.10+

  • FastMCP

  • httpx

Instalación

  1. Clonar este repositorio

  2. Configurar un entorno virtual:

    python -m venv .venv
    source .venv/bin/activate  # On Windows, use `.venv\Scripts\activate`
  3. Instale los paquetes necesarios usando uv:

    uv add "mcp[cli]" httpx

Configuración

El servidor utiliza un archivo de configuración config.py con las siguientes configuraciones:

  • NWS_API_BASE : La URL base para la API del Servicio Meteorológico Nacional

  • USER_AGENT : La cadena de agente de usuario que se utiliza al realizar solicitudes a la API de NWS

  • LOG_LEVEL : El nivel de registro (por ejemplo, "INFO", "DEBUG")

  • LOG_FORMAT : La cadena de formato para los mensajes de registro

  • REQUEST_TIMEOUT : El tiempo de espera para las solicitudes de API en segundos

Puede modificar estas configuraciones en el archivo config.py para personalizar el comportamiento del servidor.

Uso

Ejecutar el servidor de forma independiente

Para ejecutar el servidor de forma independiente:

  1. Activar el entorno virtual si aún no está activado:

    source .venv/bin/activate  # On Windows, use `.venv\Scripts\activate`
  2. Ejecutar el servidor:

    python weather.py

Uso con Cline

Se ha añadido el servidor Weather MCP a la configuración de Cline. Para usarlo en Cline:

  1. Asegúrese de que Cline esté configurado y funcionando correctamente.

  2. El servidor meteorológico MCP estará disponible como una herramienta llamada "clima".

  3. Puede utilizar las siguientes herramientas dentro de Cline:

    a. get_alerts(state: str) : recibe alertas meteorológicas para un estado de EE. UU. (usa un código de estado de dos letras, p. ej., "CA" para California) b. get_forecast(latitude: float, longitude: float) : obtiene el pronóstico del tiempo para una ubicación específica

Ejemplo de uso en Cline:

# Get alerts for California
result = await mcp.call_tool("weather.get_alerts", state="CA")
print(result)

# Get forecast for San Francisco (approximate coordinates)
result = await mcp.call_tool("weather.get_forecast", latitude=37.7749, longitude=-122.4194)
print(result)

Nota: La sintaxis exacta para llamar a las herramientas MCP puede variar según la configuración de Cline. Consulte la documentación de Cline para obtener las instrucciones de uso más actualizadas.

Manejo y registro de errores

El servidor incluye una gestión de errores mejorada para las solicitudes de API y el registro. Si se produce un error durante una solicitud, el servidor lo registrará y mostrará el mensaje correspondiente. Los registros se imprimen en la consola con el nivel y el formato configurados.

Pruebas

Pruebas unitarias

Para ejecutar las pruebas unitarias:

python -m unittest test_weather.py

Estas pruebas cubren la funcionalidad básica de las herramientas get_alerts y get_forecast .

Pruebas manuales

Para probar el servidor manualmente, puede usar el cliente MCP para llamar a las herramientas proporcionadas. Aquí hay algunos comandos de ejemplo:

# Get alerts for California
result = await mcp.call_tool("get_alerts", state="CA")
print(result)

# Get forecast for San Francisco (approximate coordinates)
result = await mcp.call_tool("get_forecast", latitude=37.7749, longitude=-122.4194)
print(result)

Contribuyendo

¡Agradecemos sus contribuciones! No dude en enviar una solicitud de incorporación de cambios.

Licencia

Este proyecto es de código abierto y está disponible bajo la licencia MIT .

F
license - not found
Not graded
quality - not tested
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    B
    quality
    D
    maintenance
    A Model Context Protocol server that provides tools to fetch weather alerts for US states and forecasts based on latitude/longitude coordinates using the US National Weather Service API.
    2
    76
    1
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    A Model Context Protocol server that enables AI models to fetch weather alerts and detailed forecasts for US locations using the National Weather Service API.
    76
    GPL 3.0
  • A
    license
    Not graded
    quality
    D
    maintenance
    Provides weather forecasts and active alerts for US locations using the National Weather Service API. It supports both local stdio and remote HTTP/SSE transport modes for flexible integration with MCP clients.
    76
    GPL 3.0

View all related MCP servers

Related MCP Connectors

  • NOAA and ECMWF weather forecast MCP for discovery, validation, and GribStream OAuth queries.

  • OpenWeather MCP — wraps the OpenWeatherMap API (openweathermap.org)

  • WeatherAPI.com MCP — wraps WeatherAPI.com (api.weatherapi.com)

View all MCP Connectors

Latest Blog Posts

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/JackKuo666/Weather-MCP-Server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server