Serveur météo MCP

npm versionlicensenode versionissuesweekly downloads

Un serveur Model Context Protocol (MCP) qui fournit des prévisions météorologiques horaires et quotidiennes en utilisant l'API AccuWeather.


Démarrage rapide

Vous avez besoin d'une clé API AccuWeather (niveau gratuit disponible).
Inscrivez-vous ici et créez une application pour obtenir votre clé.

Exportez votre clé API en tant que variable d'environnement :

export ACCUWEATHER_API_KEY=votre_clé_api_ici

Lancez ensuite le serveur MCP Weather directement avec :

npx -y @timlukahorstmann/mcp-weather

Ou, pour un accès HTTP/REST via 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="$ACUWEATHER_API_KEY"

Exemple de configuration du serveur MCP

Pour l'intégration avec Claude Desktop ou d'autres clients compatibles MCP, ajoutez ceci à votre configuration (par exemple claude_desktop_config.json) :

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

Vue d'ensemble

Ce serveur MCP permet aux grands modèles de langage (comme Claude) d'accéder aux données météorologiques en temps réel. Lorsqu'il est intégré à un LLM, il permet au modèle de :

  • D'obtenir des prévisions météorologiques précises et actualisées
  • Fournir des données météorologiques horaires pour les 12 prochaines heures
  • D'accéder aux prévisions météorologiques quotidiennes pour une période allant jusqu'à 15 jours
  • D'afficher les données en unités métriques (°C) et impériales (°F)
  • Visualiser la température, les conditions, les informations sur les précipitations et d'autres détails météorologiques

Outils disponibles

Prévisions météorologiques horaires

  • Nom de l'outil : weather-get_hourly
  • Fournit des prévisions horaires pour les 12 prochaines heures
  • Paramètres
    • lieu (obligatoire) : Ville ou nom du lieu
    • unités (facultatif) : "métrique" (Celsius, par défaut) ou "impérial" (Fahrenheit)

Prévisions météorologiques quotidiennes

  • Nom de l'outil : weather-get_daily
  • Fournit des prévisions quotidiennes pour un maximum de 15 jours
  • Paramètres
    • lieu (obligatoire) : Ville ou nom du lieu
    • jours (facultatif) : Nombre de jours de prévision (1, 5, 10 ou 15 ; 5 par défaut)
    • unités (facultatif) : "métrique" (Celsius, par défaut) ou "impérial" (Fahrenheit)

Conditions préalables

  • Node.js ≥18
  • Une clé API AccuWeather (définie via .env ou votre shell)

Mise en place

  1. Clonez ce dépôt :

    git clone https://github.com/TimLukaHorstmann/mcp-weather.git cd mcp-weather
  2. Installer les dépendances :

    npm install
  3. Obtenez une clé API AccuWeather :

    • S'inscrire à AccuWeather API
    • Créer une nouvelle application et obtenir une clé API
  4. Créez un fichier .env avec votre clé API :

    ACCUWEATHER_API_KEY=votre_clé_d'API_ici
  5. Construire le projet :

    npm run build

Utilisation avec Claude Desktop

  1. Configurez Claude Desktop pour utiliser ce serveur MCP :

    • Ouvrir Claude Desktop
    • Allez dans Paramètres > Développeur > Modifier la configuration
    • Ajoutez les éléments suivants à votre fichier claude_desktop_config.json:
    { "mcpServers" : { "weather" : { "command" : "npx", "args" : ["-y", "@timlukahorstmann/mcp-weather"], "env" : {"ACCUWEATHER_API_KEY" : "your_api_key_here" } } } }
  2. Redémarrer Claude Desktop

  3. Dans une nouvelle conversation, activez le serveur MCP en cliquant sur l'icône de la prise et en sélectionnant "weather"

  4. Vous pouvez maintenant demander à Claude des prévisions météorologiques, comme par exemple :

    • "Quelles sont les prévisions météorologiques à l'heure pour la ville de New York ?"
    • "Donnez-moi les prévisions à 5 jours pour Londres"
    • "Quel temps fera-t-il à Tokyo cette semaine en degrés Fahrenheit ?"
    • "Va-t-il pleuvoir à San Francisco demain ?"

Développement

  • Installer les dépendances : npm install
  • Linting de votre code : npm run lint
  • Construire : npm run build
  • Exécuter les tests : npm test
  • Démarrer en mode dev : npm run dev

Contribuer

Les contributions sont les bienvenues ! N'hésitez pas à soumettre une Pull Request.

Améliorations futures

Nous cherchons toujours à améliorer le serveur météo MCP. Voici quelques fonctionnalités que nous envisageons pour les prochaines versions :

  • Prévisions horaires étendues : Au-delà de 12 heures, par exemple 24 ou 48 heures.
  • Alertes météo : Intégration avec l'API d'AccuWeather pour les alertes de mauvais temps.
  • Autocomplétion des lieux : Amélioration de la recherche de lieux grâce à des suggestions d'autocomplétion.
  • Données météorologiques historiques : Accès aux conditions météorologiques passées.

Si vous avez des idées pour d'autres fonctionnalités, n'hésitez pas à ouvrir un problème !

Changelog

0.4.0

  • Suppression de l'exigence du sessionId pour tous les outils car il n'était pas utilisé pour quoi que ce soit en interne
  • Cela simplifie les intégrations et réduit la confusion pour l'utilisation de LLM

0.3.0 et antérieures

  • Version initiale avec des fonctionnalités de base

Licence d'utilisation

Ce projet est sous licence MIT - voir le fichier LICENSE pour plus de détails.

Liés dans Service en nuage - MCP Servers sécurisés

ServeurRésuméActions
Google Admin MCPVoir
Serveur MCP PlayFabVoir
CoSenseServeur MCP pour cosenseVoir
API pour la publicité sur les produits AmazonUn service Model Context Protocol (MCP) pour l'intégration de l'API Product Advertising d'Amazon. Ce...Voir
Google AnalyticsVoir
Serveur MCP de la NASAVoir