MeteoSwiss Data
Proporciona informes meteorológicos, búsqueda y contenido del sitio web de MeteoSwiss con soporte multilingüe.
Documentación
🌦️ Herramientas LLM de MeteoSwiss
Datos meteorológicos suizos para asistentes de IA — impulsados por Datos Abiertos del Gobierno de MeteoSwiss (OGD), los mismos datos detrás de la aplicación y el sitio web de MeteoSwiss. Gratis, sin necesidad de clave API.
meteoswiss-mcp.ars.is — prueba el servicio alojado al instante, sin necesidad de configuración.
Este repositorio también es una respuesta práctica a una pregunta de diseño: ¿cómo deberías dar acceso a los agentes de IA a un conjunto de datos público? Implementa el mismo acceso a datos de MeteoSwiss dos veces — como una habilidad de agente (instrucciones en markdown más scripts bash, sin servidor) y como un servidor MCP (herramientas estructuradas, coincidencia difusa, caché, alojado). Los dos enfoques se comparan honestamente en el estudio de caso habilidad vs. MCP.
Una tercera pieza, meteoswiss-forecast-evals, demuestra el diseño de interfaces impulsado por evaluaciones: un conjunto de pruebas de promptfoo que mide qué tan bien 13 LLMs leen el JSON de pronóstico, lo que resolvió una decisión de diseño real: las marcas de tiempo en hora local superan a UTC, con búsquedas a nivel de hora alcanzando ~100% frente a ~0%.
Lo que ofrecen las herramientas:
- Pronósticos de varios días para ~6000 ubicaciones suizas (códigos postales, estaciones, nombres de lugares)
- Mediciones en tiempo real de ~300 estaciones (~160 de clima completo + ~140 solo de precipitación), actualizadas cada 10 minutos
- Descubrimiento de estaciones por nombre, cantón o coordenadas GPS
- Monitoreo de polen de ~15 estaciones en toda Suiza
- Series climáticas de la Red Climática Básica Nacional (NBCN), que se remontan décadas atrás
- Búsqueda y recuperación de contenido del sitio web de MeteoSwiss
Lo que demuestra este repositorio
- Una habilidad de agente — enseña a un agente a obtener datos abiertos directamente con
curl/awk/jq: ~630 líneas de markdown y bash, cero infraestructura. → packages/meteoswiss-skills - Un servidor MCP — los mismos datos como herramientas estructuradas y validadas con coincidencia difusa de estaciones, geocodificación, caché por niveles TTL, un conjunto de pruebas real, Docker y una instancia alojada. → packages/meteoswiss-mcp
- Diseño de interfaces impulsado por evaluaciones — trata la salida de la herramienta como una interfaz para un modelo de lenguaje y mide su legibilidad antes de publicarla. → packages/meteoswiss-forecast-evals
Lee la comparación: Habilidad vs. Servidor MCP: Dos formas de dar a los agentes de IA los mismos datos.
Elige tu enfoque
Ambos enfoques responden las mismas preguntas meteorológicas. Cuál instalar depende de tu agente:
| Servidor MCP | Habilidad de agente | |
|---|---|---|
| Qué es | Servidor independiente que expone 7 herramientas estructuradas vía MCP | Instrucciones en markdown + 5 scripts bash que el agente ejecuta directamente |
| Funciona con | Claude Desktop, Claude.ai, Cursor, cualquier cliente MCP | Claude Code, Cursor, cualquier agente con acceso a shell |
| Cobertura | Pronósticos, clima actual, estaciones, polen, series climáticas, búsqueda en el sitio web | Pronósticos, clima actual, estaciones, polen |
| Extras | Coincidencia difusa, geocodificación, caché, indicaciones en DE/FR/IT, JSON estructurado | Sin servidor, sin Node.js — solo curl, awk, jq |
| Tamaño | ~6.6k líneas de TypeScript, probado en CI | ~630 líneas de markdown + bash |
| Instalación | Una línea (alojado), npm o Docker | Mercado de complementos, CLI de Skills o enlace simbólico |
Comparación completa — matriz de paridad, compensaciones de ingeniería, costo de contexto, cuándo elegir cuál: docs/skill-vs-mcp.md.
Servidor MCP — inicio rápido
Usa la instancia alojada (sin instalación):
# Claude Code
claude mcp add meteoswiss https://meteoswiss-mcp.ars.is/mcp
Para Cursor, instala desde el Directorio de Cursor o agrégalo manualmente vía Configuración → MCP.
O auto-aloja con Docker:
docker run -p 3000:3000 ghcr.io/eins78/meteoswiss-mcp:latest
Consulta el README de meteoswiss-mcp para la configuración de Claude Desktop, variables de entorno y documentación completa.
Habilidad de agente — inicio rápido
Instala vía el mercado de complementos de Claude Code:
/plugin marketplace add eins78/meteoswiss-llm-tools
/plugin install meteoswiss-skills@meteoswiss-marketplace
O con la CLI de Skills:
pnpx skills add https://github.com/eins78/meteoswiss-llm-tools.git#packages/meteoswiss-skills --global --agent claude-code --all
Consulta el README de meteoswiss-skills para la instalación manual y detalles.
Herramientas disponibles (servidor MCP)
| Herramienta | Descripción |
|---|---|
meteoswissLocalForecast | Pronósticos de varios días por código postal, estación o nombre de lugar |
meteoswissCurrentWeather | Mediciones en tiempo real (temperatura, viento, humedad, presión) |
meteoswissStations | Busca en la red de estaciones por nombre, cantón o coordenadas |
meteoswissPollenData | Datos de concentración de polen de estaciones de monitoreo |
meteoswissClimateData | Series climáticas NBCN — temperatura, precipitación, sol e indicadores climáticos que se remontan décadas atrás |
search | Busca contenido del sitio web de MeteoSwiss (DE, FR, IT, EN) |
fetch | Obtiene contenido completo de las páginas de MeteoSwiss |
Preguntas de ejemplo
Funciona con ambos enfoques — solo pregunta en cualquiera de los cuatro idiomas de Suiza:
- "¿Cuál es el pronóstico del tiempo para Zúrich esta semana?"
- "Wie wird das Wetter in Bern morgen?"
- "Quelle est la météo à Genève?"
- "Che tempo fa a Lugano?"
Paquetes
| Paquete | Versión | Descripción |
|---|---|---|
meteoswiss-mcp | Servidor MCP con herramientas estructuradas, coincidencia difusa y geocodificación | |
meteoswiss-skills | 1.0.0 | Habilidad de agente — acceso HTTP directo, sin necesidad de servidor |
meteoswiss-forecast-evals | — | Conjunto de evaluaciones LLM para el formato JSON de pronóstico (independiente, no es miembro del espacio de trabajo) |
Documentación
- Estudio de caso habilidad vs. MCP — la comparación honesta de los dos enfoques
- Resultados de evaluación: comprensión del JSON de pronóstico — el barrido de hora local vs. UTC
- Guía de usuario del servidor MCP
- Índice de documentación
Desarrollo
git clone https://github.com/eins78/meteoswiss-llm-tools.git
cd meteoswiss-llm-tools
nvm use && pnpm install
Consulta el README de cada paquete para comandos específicos. El repositorio usa changesets para el versionado.
Los informes de prueba manuales en un punto específico en el tiempo (por ejemplo, pruebas de herramientas MCP en vivo) se encuentran en docs/test-reports/.
Fuente de datos
Todos los datos meteorológicos provienen de Datos Abiertos del Gobierno de MeteoSwiss (OGD) — la oferta oficial gratuita de datos de la Oficina Federal de Meteorología y Climatología de Suiza. Los mismos datos impulsan la aplicación y el sitio web de MeteoSwiss.
Licencia
CC0-1.0 — dominio público