OpenMeteo MCP Server
Accede a datos meteorológicos globales y pronósticos usando la API de OpenMeteo, incluyendo condiciones actuales, datos históricos y búsqueda de ubicaciones.
Documentación
OpenMeteo MCP Server
Un servidor de Protocolo de Contexto de Modelo (MCP) que proporciona acceso a datos meteorológicos y pronósticos a través de la API de OpenMeteo. Este servidor permite a los asistentes de IA recuperar condiciones meteorológicas actuales, pronósticos, datos meteorológicos históricos y buscar ubicaciones en todo el mundo.
Características
- Clima actual: Obtenga condiciones meteorológicas en tiempo real, incluyendo temperatura, humedad, precipitación, viento y presión atmosférica
- Pronósticos meteorológicos: Recupere pronósticos meteorológicos detallados de hasta 16 días
- Clima histórico: Acceda a datos meteorológicos históricos para análisis y comparación
- Búsqueda de ubicaciones: Encuentre coordenadas y detalles de ciudades y ubicaciones en todo el mundo
- API gratuita: Utiliza la API gratuita de OpenMeteo sin necesidad de clave API
- Datos completos: Incluye temperatura, precipitación, viento, presión, cobertura de nubes y descripciones meteorológicas
- Formato inteligente: Informes meteorológicos legibles con emojis y organización clara
Instalación
Opción 1: Descargar el binario precompilado (recomendado)
Descargue la última versión desde GitHub:
-
Visite la página de versiones: Vaya a https://github.com/gbrigandi/mcp-server-openmeteo/releases
-
Elija su versión: Haga clic en la última versión (o en la versión específica que desee)
-
Descargue para su plataforma: En la sección "Assets", descargue el binario apropiado para su sistema:
- macOS (Apple Silicon):
mcp-server-openmeteo-aarch64-apple-darwin - macOS (Intel):
mcp-server-openmeteo-x86_64-apple-darwin - Linux (64 bits):
mcp-server-openmeteo-x86_64-unknown-linux-gnu - Windows (64 bits):
mcp-server-openmeteo-x86_64-pc-windows-msvc.exe
- macOS (Apple Silicon):
-
Hágalo ejecutable (solo macOS/Linux):
chmod +x mcp-server-openmeteo
Opción 2: Compilar desde el código fuente
Si prefiere compilar desde el código fuente o necesita la última versión de desarrollo:
Requisitos previos
- Rust 1.87 o superior
- Administrador de paquetes Cargo
Pasos de compilación
git clone https://github.com/gbrigandi/mcp-server-openmeteo
cd mcp-server-openmeteo
cargo build --release
El binario compilado estará disponible en target/release/mcp-server-openmeteo.
Uso
Uso básico
Ejecute el servidor con la configuración predeterminada:
./target/release/mcp-server-openmeteo
Variables de entorno
Puede controlar el nivel de registro mediante la variable de entorno RUST_LOG:
# Enable debug logging
RUST_LOG=debug ./target/release/mcp-server-openmeteo
# Enable info logging (default)
RUST_LOG=info ./target/release/mcp-server-openmeteo
# Disable most logging
RUST_LOG=warn ./target/release/mcp-server-openmeteo
Configuración del cliente MCP
Claude Desktop
Agregue este servidor a su archivo de configuración de Claude Desktop:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"openmeteo": {
"command": "/path/to/mcp-server-openmeteo"
}
}
}
Después de agregar la configuración:
- Guarde el archivo
- Reinicie Claude Desktop
- Las herramientas meteorológicas de OpenMeteo estarán disponibles en sus conversaciones
Herramientas disponibles
1. get_current_weather
Obtenga las condiciones meteorológicas actuales para una ubicación específica. Devuelve datos meteorológicos en tiempo real, incluyendo temperatura, humedad, precipitación, viento y condiciones atmosféricas.
Parámetros:
latitude(obligatorio): Coordenada de latitud (-90 a 90)longitude(obligatorio): Coordenada de longitud (-180 a 180)
Devuelve:
- Temperatura actual y temperatura de "sensación térmica"
- Porcentaje de humedad relativa
- Cantidad de precipitación
- Velocidad, dirección y ráfagas de viento
- Presión atmosférica (nivel medio del mar)
- Porcentaje de cobertura de nubes
- Descripción de la condición meteorológica
- Indicador de día/noche
Ejemplo:
{
"latitude": 40.7128,
"longitude": -74.0060
}
2. get_weather_forecast
Obtenga el pronóstico meteorológico para una ubicación específica. Devuelve datos de pronóstico detallados de hasta 16 días, incluyendo temperatura diaria, precipitación, viento y condiciones meteorológicas.
Parámetros:
latitude(obligatorio): Coordenada de latitud (-90 a 90)longitude(obligatorio): Coordenada de longitud (-180 a 180)days(opcional): Número de días de pronóstico (1-16, predeterminado: 7)
Devuelve:
- Temperaturas máximas y mínimas diarias
- Descripciones de condiciones meteorológicas
- Cantidades de precipitación
- Velocidades máximas del viento
- Horas de salida y puesta del sol
- Índice UV y duración de la luz diurna
Ejemplo:
{
"latitude": 40.7128,
"longitude": -74.0060,
"days": 5
}
3. get_historical_weather
Obtenga datos meteorológicos históricos para una ubicación y un rango de fechas específicos. Devuelve estadísticas meteorológicas diarias, incluyendo temperatura, precipitación y otros datos meteorológicos para análisis.
Parámetros:
latitude(obligatorio): Coordenada de latitud (-90 a 90)longitude(obligatorio): Coordenada de longitud (-180 a 180)start_date(obligatorio): Fecha de inicio en formato YYYY-MM-DDend_date(obligatorio): Fecha de fin en formato YYYY-MM-DD
Devuelve:
- Estadísticas de temperatura diaria (mín, máx, media)
- Totales y promedios de precipitación
- Datos de velocidad y dirección del viento
- Estadísticas resumidas para todo el período
- Datos diarios de muestra para los primeros 5 días
Ejemplo:
{
"latitude": 40.7128,
"longitude": -74.0060,
"start_date": "2024-01-01",
"end_date": "2024-01-31"
}
4. search_locations
Busque ubicaciones por nombre para obtener sus coordenadas y detalles. Use el formato "ciudad, país" donde el país es opcional (por ejemplo, "París, Francia" o simplemente "Tokio"). Devuelve una lista de ubicaciones coincidentes con coordenadas y otra información geográfica.
Parámetros:
query(obligatorio): Consulta de búsqueda de ubicación en formato "ciudad, país" (el país es opcional)- Ejemplos: "París, Francia", "Tokio", "Nueva York, EE. UU.", "Londres"
limit(opcional): Número máximo de resultados (1-100, predeterminado: 10)
Devuelve:
- Nombre de la ciudad/ubicación y país
- Región administrativa (estado/provincia)
- Coordenadas precisas (latitud/longitud)
- Información de zona horaria
- Datos de población (cuando estén disponibles)
Ejemplo:
{
"query": "Paris, France",
"limit": 5
}
Fuente de datos
Todos los datos meteorológicos son proporcionados por OpenMeteo, una API meteorológica gratuita que ofrece:
- Datos de alta calidad: Basados en múltiples modelos meteorológicos y observaciones
- Cobertura global: Disponibilidad de datos meteorológicos en todo el mundo
- Sin necesidad de clave API: Acceso gratuito sin registro
- Alta disponibilidad: Servicio confiable con buen tiempo de actividad
- Código abierto: Basado en modelos meteorológicos de código abierto
- Actualizaciones en tiempo real: Condiciones actuales actualizadas regularmente
- Archivo histórico: Acceso a datos meteorológicos históricos
Rendimiento
- Tiempo de espera de solicitud: 30 segundos de tiempo de espera para todas las solicitudes de API
- Solicitudes eficientes: Llamadas de API optimizadas con solo los parámetros necesarios
- Recuperación de errores: Manejo elegante de fallos temporales de la API
- Validación de coordenadas: Validación de entrada para evitar solicitudes de API no válidas
Licencia
Este proyecto está licenciado bajo la Licencia MIT; consulte el archivo LICENSE para obtener más detalles.
Contribuciones
¡Las contribuciones son bienvenidas! No dude en enviar un Pull Request. Áreas de contribución:
- Parámetros meteorológicos adicionales
- Opciones de formato mejoradas
- Optimizaciones de rendimiento
- Validación adicional
- Mejoras de documentación
Soporte
Para problemas y preguntas:
- Revise los problemas existentes en el repositorio
- Cree un nuevo problema con información detallada sobre el problema
- Incluya registros y detalles de configuración relevantes
- Proporcione coordenadas y parámetros de ejemplo que causen problemas
Registro de cambios
Versión 0.1.0
- Versión inicial con funcionalidad completa del servidor MCP
- Condiciones meteorológicas actuales con datos completos
- Pronósticos meteorológicos de hasta 16 días
- Datos meteorológicos históricos con resúmenes estadísticos
- Búsqueda de ubicaciones con geocodificación