Skip to main content
Glama
HelpFreedom

OpenWeatherMap_MCP

by HelpFreedom

🌤️ MCP Сервер Погоды с OpenAI

Простой MCP сервер для получения погоды через OpenWeatherMap API с использованием OpenAI GPT-4o-mini в качестве интерфейса.

📋 Что это делает?

  • 🌍 Получает текущую погоду для любого города

  • 📅 Показывает прогноз погоды на несколько дней

  • 🤖 Использует GPT-4o-mini для естественного общения

  • 🔧 Реализует протокол MCP для подключения AI к внешним данным

Related MCP server: Weather Agent MCP Server

🚀 Быстрый старт

1. Установка зависимостей

# Создайте виртуальное окружение
python3 -m venv venv

# Активируйте его
# На macOS/Linux:
source venv/bin/activate
# На Windows:
venv\Scripts\activate

# Установите зависимости
pip3 install -r requirements.txt

2. Настройка API ключей

Создайте файл .env в корне проекта:

# API ключ OpenWeatherMap (бесплатный)
# Получите на: https://openweathermap.org/api
OPENWEATHER_API_KEY=ваш_ключ_здесь

# API ключ OpenAI
# Получите на: https://platform.openai.com/api-keys
OPENAI_API_KEY=ваш_ключ_здесь

Как получить ключи:

  • OpenWeatherMap:

    1. Зарегистрируйтесь на https://openweathermap.org

    2. Перейдите в раздел API Keys

    3. Скопируйте ключ (бесплатный план дает 1000 запросов/день)

  • OpenAI:

    1. Зарегистрируйтесь на https://platform.openai.com

    2. Создайте новый API ключ

    3. Пополните баланс (минимум $5)

3. Запуск

# Просто запустите клиент
python3 client.py

💬 Примеры использования

После запуска просто спрашивайте о погоде на естественном языке:

👤 Вы: Какая погода в Москве?
🤖 Ассистент: [Показывает текущую погоду в Москве]

👤 Вы: А какой прогноз на 5 дней для Санкт-Петербурга?
🤖 Ассистент: [Показывает прогноз на 5 дней]

👤 Вы: Что лучше надеть в Лондоне сегодня?
🤖 Ассистент: [Проверяет погоду и дает рекомендации]

🔧 Тестирование только сервера

Если хотите протестировать сервер без клиента:

# Используйте MCP Inspector
uv run mcp dev server.py

# Или установите в Claude Desktop
uv run mcp install server.py --name "Weather Service"

📁 Структура проекта

weather-mcp-server/
├── server.py          # MCP сервер с инструментами погоды
├── client.py          # Клиент с OpenAI и mcp-use
├── .env              # API ключи (не добавляйте в Git!)
├── requirements.txt   # Python зависимости
└── README.md         # Эта инструкция

🛠️ Доступные инструменты

get_current_weather

Получает текущую погоду для города

Параметры:

  • city (обязательный): Название города

  • units (опционально): "metric" или "imperial"

get_forecast

Получает прогноз погоды на несколько дней

Параметры:

  • city (обязательный): Название города

  • days (опционально): Количество дней (1-5)

  • units (опционально): "metric" или "imperial"

⚠️ Важные замечания

  1. Не используйте print() в server.py - это сломает STDIO транспорт

  2. Храните .env в безопасности - добавьте в .gitignore

  3. Лимиты API:

    • OpenWeatherMap Free: 1000 запросов/день

    • OpenAI: зависит от вашего тарифа

  4. Стоимость OpenAI: GPT-4o-mini очень дешевая (~$0.15 за 1M токенов)

🐛 Решение проблем

Ошибка: "OPENWEATHER_API_KEY не найден"

  • Проверьте, что файл .env создан и содержит ключ

  • Убедитесь, что файл находится в той же папке, что и скрипты

Ошибка: "Не удалось получить погоду"

  • Проверьте правильность написания города

  • Попробуйте английское название города

Сервер не запускается

  • Убедитесь, что виртуальное окружение активировано

  • Проверьте, что все зависимости установлены

📚 Полезные ссылки

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to fetch current weather conditions and forecasts for any city using the Open-Meteo API. Provides temperature, precipitation, and hourly forecast data through natural language queries.
    -
  • F
    license
    A
    quality
    B
    maintenance
    Provides current weather and forecast data for any city via OpenWeatherMap. Can be used with Ollama or Claude Desktop for natural-language weather queries.
    2
    -