
Weather Bot with OpenAI Agents SDK
Telegram bot using OpenAI Agents SDK and MCP Server.
What is the Weather Bot?
The Weather Bot is a Telegram bot that provides real-time weather information using OpenAI's Agents SDK and Model Context Protocol (MCP). It fetches current weather conditions for cities worldwide through natural language queries, powered by the GPT-4o-mini model.
How to use the Weather Bot?
To use the Weather Bot, simply send a message to the bot asking about the weather in any city, such as 'what's the weather in Ubud?'. The bot will respond with current weather conditions including temperature, weather conditions, and wind speed.
Key features of the Weather Bot?
- Real-time weather data using Open-Meteo API
- Natural language processing with OpenAI Agents SDK (GPT-4o-mini)
- Simple MCP server implementation for weather data retrieval
- Telegram-native message formatting
- Easy-to-use interface with simple weather queries
Use cases of the Weather Bot?
- Checking the weather before going out.
- Planning travel based on weather conditions.
- Educational purposes for learning about weather patterns.
FAQ from the Weather Bot?
- Can the Weather Bot provide weather information for any city?
Yes! The Weather Bot can fetch weather data for cities worldwide.
- Do I need an API key to use the Open-Meteo API?
No, the Open-Meteo API does not require an API key.
- How accurate is the weather information provided?
The accuracy of the weather information depends on the Open-Meteo API, which is generally reliable.
Weather Bot with OpenAI Agents SDK
A Telegram bot that provides real-time weather information using OpenAI's Agents SDK and Model Context Protocol (MCP). The bot can fetch current weather conditions for cities worldwide using natural language queries, powered by GPT-4o-mini model.
Features
- Real-time weather data using Open-Meteo API
- Natural language processing with OpenAI Agents SDK (GPT-4o-mini)
- Simple MCP server implementation for weather data retrieval
- Telegram-native message formatting
- Easy-to-use interface with simple weather queries
Technology Stack
- Python 3.11+
- OpenAI Agents SDK
- Model Context Protocol (MCP)
- python-telegram-bot
- Open-Meteo API (no API key required)
Quick Start
- Clone the repository:
git clone https://github.com/esakrissa/agents-sdk-telegram.git
cd agents-sdk-telegram
- Create and activate a virtual environment:
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
- Install dependencies:
pip install -r requirements.txt
- Create a .env file in the project root:
TELEGRAM_BOT_TOKEN=your_bot_token_here
OPENAI_API_KEY=your_openai_api_key_here
- Run the bot:
python main.py
Usage
Simply send a message to the bot asking about weather in any city:
what's the weather in Ubud?
The bot will respond with current weather conditions including:
- Temperature
- Weather conditions
- Wind speed
Architecture
OpenAI Agents SDK Integration
The bot uses OpenAI's Agents SDK with GPT-4o-mini model to process natural language queries and generate human-like responses. The Agent is configured with specific instructions for handling weather-related queries and maintaining conversation context.
Model Context Protocol (MCP)
The project implements a simple MCP server (weather_mcp.py
) that provides the get_weather
tool. This demonstrates how to:
- Create custom MCP tools
- Handle tool requests and responses
- Integrate external APIs (Open-Meteo) with MCP
License
MIT © Esa Krissa