Enables deployment to Streamlit Cloud directly from GitHub repositories for easy hosting and updates
Allows deployment of the weather chat assistant with a Procfile configuration
Provides visualization capabilities for the application architecture in the documentation
Serves as the foundation for the MCP server implementation and client interactions
Offers direct deployment of the weather chat assistant from GitHub repositories
Supports automatic builds and deployment of the weather chat assistant from GitHub repositories
Powers the interactive chat interface and provides hosting through Streamlit Cloud for the weather assistant
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Weather Chat Assistantwhat's the weather like in Tokyo right now?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Weather Chat Assistant 🌤️
A modern weather chat interface built with Streamlit and powered by the Model Context Protocol (MCP). Get real-time weather information and forecasts for any location worldwide through a friendly chat interface.
Features
🌍 Global Weather Data: Get weather for any city worldwide
☀️ Current Weather: Real-time temperature, conditions, humidity, and wind data
📅 Weather Forecasts: Up to 3-day weather predictions
💬 Chat Interface: Natural language queries like "What's the weather in London?"
🎨 Modern UI: Beautiful, responsive Streamlit interface
🔧 MCP Integration: Built using Model Context Protocol architecture
Related MCP server: Said MCP
Quick Start
Option 1: Direct Streamlit Deployment
Clone or download this repository
Install dependencies:
pip install -r requirements.txtRun the Streamlit app:
streamlit run streamlit_app.pyOpen your browser to the URL shown (usually http://localhost:8501)
Option 2: Deploy to Streamlit Cloud
Fork this repository to your GitHub account
Go to Streamlit Cloud
Deploy by connecting your GitHub repository
Set the main file as
streamlit_app.py
The app will automatically deploy and be available at your Streamlit Cloud URL!
MCP Server (Advanced Usage)
For developers interested in the MCP server component:
Setup MCP Server
Navigate to the MCP server directory:
cd weather-mcp-serverInstall MCP dependencies:
pip install -r requirements.txtRun the MCP server:
python weather_mcp_server.pyTest the server (in another terminal):
python -c " import asyncio from mcp_client import WeatherMCPClient async def test(): client = WeatherMCPClient() if await client.connect(): result = await client.get_weather('London') print(result) await client.disconnect() asyncio.run(test()) "
Usage Examples
Once the app is running, try these example queries:
Current Weather:
"What's the weather in London?"
"Temperature in Tokyo"
"Weather for New York"
Weather Forecasts:
"Show me the forecast for Paris"
"3-day forecast for Sydney"
"Weather forecast for Berlin for 2 days"
API & Data Source
Weather Data: Powered by wttr.in - a free weather service
No API Key Required: Uses a public weather service
Global Coverage: Weather data for cities worldwide
Real-time Updates: Current conditions and forecasts
Architecture
graph TD
A[User Input] --> B[Streamlit App]
B --> C[Message Parser]
C --> D[Weather API Client]
D --> E[wttr.in API]
E --> F[Weather Data]
F --> G[Formatted Response]
G --> H[Chat Interface]
I[MCP Server] --> J[Weather Tools]
J --> K[get_weather]
J --> L[get_forecast]Components
Streamlit App (
streamlit_app.py): Main chat interfaceMCP Server (
weather-mcp-server/weather_mcp_server.py): Weather tools serverMCP Client (
weather-mcp-server/mcp_client.py): Client for MCP communicationWeather API: Direct integration with wttr.in weather service
File Structure
weather-chat-assistant/
├── streamlit_app.py # Main Streamlit application
├── requirements.txt # Streamlit dependencies
├── README.md # This file
└── weather-mcp-server/ # MCP server components
├── weather_mcp_server.py # MCP server with weather tools
├── mcp_client.py # MCP client for communication
└── requirements.txt # MCP server dependenciesDeployment Options
1. Streamlit Cloud (Recommended)
✅ Free hosting
✅ Automatic deployment from GitHub
✅ Custom domain support
✅ Easy updates via Git push
2. Local Development
✅ Full control
✅ Instant feedback
✅ Easy debugging
3. Other Platforms
Heroku: Add
Procfilewithweb: streamlit run streamlit_app.py --server.port=$PORTRailway: Direct deployment from GitHub
Render: Automatic builds from repository
Troubleshooting
Common Issues
"Module not found" errors:
pip install -r requirements.txtNetwork timeouts:
Check internet connection
Try different location names
Wait a moment and retry
Streamlit port conflicts:
streamlit run streamlit_app.py --server.port 8502
Debug Mode
To enable detailed logging, set the environment variable:
export PYTHONPATH=.
python -c "import logging; logging.basicConfig(level=logging.DEBUG)"
streamlit run streamlit_app.pyContributing
Fork the repository
Create a feature branch
Make your changes
Test thoroughly
Submit a pull request
License
This project is open source and available under the MIT License.
Support
📧 Issues: Open a GitHub issue for bugs or feature requests
💬 Discussions: Use GitHub Discussions for questions
📖 Documentation: Check this README and code comments
Built with ❤️ using Streamlit and MCP
Get weather information the modern way - just ask! 🌤️
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.