Skip to main content
Glama

Weather MCP Server

by IAcademico

🌀️ Weather Server - MCP Implementation (Node.js)

🧩 Servidor MCP de Clima e Historial – VersiΓ³n Final

Este proyecto implementa un servidor MCP (Model Context Protocol) en Node.js que permite a modelos de lenguaje (como Claude o GPT) obtener informaciΓ³n climΓ‘tica en tiempo real y consultar un historial local de bΓΊsquedas, utilizando APIs abiertas y almacenamiento local en JSON.


🌐 1. ¿Qué es el MCP (Model Context Protocol)?

El Model Context Protocol (MCP) es un protocolo abierto desarrollado por Anthropic y la comunidad de IA para conectar modelos de lenguaje con fuentes de informaciΓ³n externas y herramientas locales de manera segura y estructurada.

En tΓ©rminos simples:

El MCP permite que un modelo de IA hable con tu aplicaciΓ³n, acceda a datos o ejecute funciones, sin exponer directamente tu cΓ³digo ni tus APIs privadas.


βš™οΈ 2. CΓ³mo funciona el MCP

Un MCP Server es una aplicaciΓ³n que expone:

  • πŸ› οΈ Tools (herramientas) β†’ Acciones que el modelo puede ejecutar (por ejemplo: get-weather, get-history).

  • πŸ“š Resources (recursos) β†’ Archivos o datos a los que el modelo puede acceder (por ejemplo: weather-codes.json).

  • πŸ”” Events (opcional) β†’ Notificaciones o flujos de datos en tiempo real.

El modelo de IA actΓΊa como cliente MCP, que se comunica con tu servidor usando un canal seguro (en este caso, stdio, o entrada/salida estΓ‘ndar).


🧩 3. Descripción del proyecto (main.ts)

El archivo main.ts define un servidor MCP en Node.js que ofrece dos herramientas y un recurso:


πŸ› οΈ Herramienta 1: get-weather

PropΓ³sito: Obtener el clima actual de una ciudad.

Flujo:

  1. Busca la ciudad en la Geocoding API de Open Meteo para obtener coordenadas.

  2. Consulta los datos del clima actual en la Weather API de Open Meteo.

  3. Guarda la consulta (ciudad, coordenadas, temperatura, fecha) en un archivo local history.json.

  4. Devuelve al modelo una respuesta simplificada con temperatura y humedad.

πŸ“„ Ejemplo de respuesta:

{ "city_searched": "Santiago", "current_temperature_c": 22.5, "relative_humidity_percent": 48, "weather_code": 1 } 🧠 **Arquitectura conceptual** β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ Modelo de IA (Cliente) β”‚ β”‚ (Claude, GPT, etc.) β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ JSON (via STDIO / MCP) β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ Tu Servidor MCP (Node) β”‚ β”‚ β”œβ”€β”€ Tool: get-weather β”‚ β”‚ β”œβ”€β”€ Tool: get-history β”‚ β”‚ └── Resource: weather-codes β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ APIs externas (OpenMeteo)β”‚ β”‚ Archivos locales (.json) β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ πŸ“¦ **InstalaciΓ³n y ejecuciΓ³n** # Clonar el repositorio git clone https://github.com/IAcademico/weather-mcp-server.git cd weather-mcp-server # Instalar dependencias npm install # Ejecutar el servidor MCP npm run start πŸ“ **Estructura del proyecto** πŸ“¦ weather-mcp-server ┣ πŸ“‚ .vscode/ ┣ πŸ“‚ node_modules/ ┣ πŸ“‚ project_scanners/ ┣ πŸ“œ main.ts ┣ πŸ“œ history.json ┣ πŸ“œ weather-codes.json β”— πŸ“œ README.md
-
security - not tested
F
license - not found
-
quality - not tested

local-only server

The server can only run on the client's local machine because it depends on local resources.

Enables real-time weather information retrieval and local search history management using Open Meteo APIs. Allows users to get current weather data for any city and access their weather query history through natural language.

  1. 🧩 Servidor MCP de Clima e Historial – VersiΓ³n Final
    1. 🌐 1. ¿Qué es el MCP (Model Context Protocol)?
      1. βš™οΈ 2. CΓ³mo funciona el MCP
        1. 🧩 3. Descripción del proyecto (main.ts)
          1. πŸ› οΈ Herramienta 1: get-weather

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

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