Skip to main content
Glama
ASXRND

MCP Weather & Accruals Server

by ASXRND
deepseek_client.py3.99 kB
#!/usr/bin/env python3 """ Главная точка входа приложения MCP сервера погоды. Запускает интерактивный чат с Deepseek для получения информации о погоде. Использует MCP сервер с инструментами для получения реальных данных из OpenWeatherMap API. Использование: python3 deepseek_client.py """ import asyncio import logging import sys from modules.config import Config from modules.deepseek_api import get_weather_response # Валидируем конфигурацию перед запуском if not Config.validate(): print("❌ Ошибка конфигурации. Проверьте файл .env") sys.exit(1) logger = logging.getLogger("WeatherApp") async def chat_with_deepseek() -> None: """ Интерактивный чат с Deepseek о погоде. Позволяет пользователю задавать вопросы о погоде на естественном языке. Deepseek автоматически вызывает инструменты для получения реальных данных о погоде из OpenWeatherMap API. """ print("\n" + "=" * 60) print("🌤️ ПОМОЩНИК ПО ПОГОДЕ - DEEPSEEK") print("=" * 60) print("\nВаш интерактивный помощник для получения информации о погоде.") print("Спрашивайте о текущей погоде, прогнозе или рекомендациях по одежде.") print("\nКоманды: 'выход' или 'exit' для завершения\n") print("=" * 60 + "\n") while True: try: user_input = input("👤 Вы: ").strip() # Проверяем команды для выхода if user_input.lower() in ["выход", "exit", "quit", "q"]: print("\n" + "=" * 60) print("👋 Спасибо за использование помощника по погоде!") print("=" * 60 + "\n") break if not user_input: continue print("\n⏳ Обработка запроса...\n") response = await get_weather_response(user_input) print(f"🤖 Deepseek:\n{response}\n") print("-" * 60 + "\n") except KeyboardInterrupt: print("\n\n" + "=" * 60) print("👋 Приложение завершено пользователем") print("=" * 60 + "\n") break except Exception as e: logger.error(f"Ошибка в цикле чата: {e}") print(f"❌ Ошибка: {e}\n") async def main(): """ Главная функция приложения. Инициализирует конфигурацию и запускает интерактивный чат с Deepseek. """ try: logger.info("🚀 Запуск приложения Weather Helper") logger.info("=" * 60) # Выводим информацию о конфигурации print(Config.get_config_summary()) # Запускаем интерактивный чат await chat_with_deepseek() logger.info("✅ Приложение завершено успешно") except Exception as e: logger.critical(f"❌ Критическая ошибка: {e}") print(f"\n❌ Критическая ошибка: {e}") sys.exit(1) if __name__ == "__main__": try: asyncio.run(main()) except KeyboardInterrupt: print("\n\n👋 Программа прервана пользователем") sys.exit(0)

Latest Blog Posts

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/ASXRND/MCP_deepseek'

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