✨ From vibe coding to vibe deployment. UBOS MCP turns ideas into infra with one message.

Learn more

Weather MCP Server

Bu proje, Model Context Protocol (MCP) kullanarak hava durumu bilgisi sağlayan bir FastAPI uygulamasıdır.

Özellikler

  • MCP Protokolü: Model Context Protocol standardına uygun
  • FastAPI: Modern, hızlı web framework
  • Hava Durumu API: wttr.in servisini kullanarak gerçek zamanlı hava durumu
  • Hata Yönetimi: Kapsamlı hata yakalama ve kullanıcı dostu mesajlar

Kurulum

  1. Bağımlılıkları yükleyin:
pip install -r requirements.txt
  1. Sunucuyu başlatın:
python main.py

Sunucu http://localhost:8000 adresinde çalışmaya başlayacaktır.

Kullanım

MCP Protokolü ile

MCP protokolü üzerinden /mcp endpoint’ini kullanın:

POST /mcp
{
    "method": "tools/call",
    "params": {
        "name": "get_weather",
        "arguments": {
            "city": "İstanbul"
        }
    }
}

Direkt API Kullanımı

Test amaçlı direkt endpoint’ler:

# GET isteği
curl http://localhost:8000/weather/İstanbul

# POST isteği
curl -X POST http://localhost:8000/weather 
  -H "Content-Type: application/json" 
  -d '{"name": "get_weather", "arguments": {"city": "İstanbul"}}'

API Endpoints

  • GET / - Sunucu bilgileri
  • GET /health - Sağlık kontrolü
  • POST /mcp - Ana MCP protokol handler
  • GET /weather/{city} - Basit hava durumu sorgusu
  • POST /weather - Detaylı hava durumu sorgusu

Yanıt Formatı

Başarılı yanıt örneği:

{
    "city": "İstanbul",
    "location": {
        "area_name": "Istanbul",
        "country": "Turkey",
        "region": "Istanbul"
    },
    "current_weather": {
        "temperature_c": "15",
        "temperature_f": "59",
        "feels_like_c": "14",
        "feels_like_f": "57",
        "humidity": "72",
        "description": "Partly cloudy",
        "wind_speed_kmh": "11",
        "wind_direction": "NW",
        "pressure": "1013",
        "visibility": "10"
    },
    "status": "success"
}

Hata yanıtı örneği:

{
    "city": "GeçersizŞehir",
    "error": "Hava durumu alınamadı: Bağlantı hatası - 404 Client Error",
    "status": "error"
}

Geliştirme

Sunucuyu geliştirme modunda çalıştırmak için:

uvicorn main:app --reload --host 0.0.0.0 --port 8000

Dosya Yapısı

  • main.py - Ana FastAPI uygulaması ve MCP sunucu
  • mcp_config.py - MCP konfigürasyonu ve weather tool implementasyonu
  • requirements.txt - Python bağımlılıkları
  • README.md - Bu dosya

Featured Templates

View More
Data Analysis
Pharmacy Admin Panel
238 1704
AI Agents
AI Video Generator
249 1348 5.0
AI Assistants
Image to text with Claude 3
150 1122
Verified Icon
AI Assistants
Speech to Text
134 1510

Start your free trial

Build your solution today. No credit card required.

Sign In

Register

Reset Password

Please enter your username or email address, you will receive a link to create a new password via email.