O
Openweathermap MCP
作者 @HelpFreedom
MCP Сервер для получения погоды через OpenWeatherMap API
创建于 10/22/2025
更新于 about 2 months ago
README
Repository documentation and setup instructions
🌤️ MCP Сервер Погоды с OpenAI
Простой MCP сервер для получения погоды через OpenWeatherMap API с использованием OpenAI GPT-4o-mini в качестве интерфейса.
📋 Что это делает?
- 🌍 Получает текущую погоду для любого города
- 📅 Показывает прогноз погоды на несколько дней
- 🤖 Использует GPT-4o-mini для естественного общения
- 🔧 Реализует протокол MCP для подключения AI к внешним данным
🚀 Быстрый старт
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:
- Зарегистрируйтесь на https://openweathermap.org
- Перейдите в раздел API Keys
- Скопируйте ключ (бесплатный план дает 1000 запросов/день)
-
OpenAI:
- Зарегистрируйтесь на https://platform.openai.com
- Создайте новый API ключ
- Пополните баланс (минимум $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"
⚠️ Важные замечания
- Не используйте
print()в server.py - это сломает STDIO транспорт - Храните
.envв безопасности - добавьте в.gitignore - Лимиты API:
- OpenWeatherMap Free: 1000 запросов/день
- OpenAI: зависит от вашего тарифа
- Стоимость OpenAI: GPT-4o-mini очень дешевая (~$0.15 за 1M токенов)
🐛 Решение проблем
Ошибка: "OPENWEATHER_API_KEY не найден"
- Проверьте, что файл
.envсоздан и содержит ключ - Убедитесь, что файл находится в той же папке, что и скрипты
Ошибка: "Не удалось получить погоду"
- Проверьте правильность написания города
- Попробуйте английское название города
Сервер не запускается
- Убедитесь, что виртуальное окружение активировано
- Проверьте, что все зависимости установлены
📚 Полезные ссылки
快速设置
此服务器的安装指南
安装包 (如果需要)
uvx openweathermap_mcp
Cursor 配置 (mcp.json)
{
"mcpServers": {
"helpfreedom-openweathermap-mcp": {
"command": "uvx",
"args": [
"openweathermap_mcp"
]
}
}
}