Skip to main content
Glama

Taksi MCP Server 🚖

Türkiye'deki taksi hizmetleri için Model Context Protocol (MCP) sunucusu. BiTaksi, iTaksi, Uber ve genel taksi hizmetlerini destekler.

Özellikler ✨

  • Çoklu Sağlayıcı Desteği: BiTaksi, iTaksi, Uber ve genel taksi hizmetleri

  • Ücret Tahmini: Mesafe ve taksi türüne göre ücret hesaplama

  • Taksi Çağırma: Çeşitli taksi türlerinde yolculuk rezervasyonu

  • Canlı Takip: Yolculuk durumu ve şoför bilgileri

  • İletişim: Şoför ile direkt iletişim (arama/SMS)

  • Geçmiş: Yolculuk geçmişi görüntüleme

  • Türkçe Destek: Tam Türkçe arayüz ve mesajlar

Desteklenen Taksi Türleri 🚗

  • Standart Taksi: Normal şehir taksisi

  • Lüks Taksi: Konforlu ve geniş araç

  • Büyük Taksi: 8 kişilik geniş araç

  • Pati Taksi: Evcil hayvan dostu taksi

Kurulum 📦

Gereksinimler

  • Node.js 18.0 veya üstü

  • npm veya yarn paket yöneticisi

Kurulum Adımları

  1. Bağımlılıkları yükleyin:

npm install
  1. Ortam değişkenlerini ayarlayın:

cp .env.example .env # .env dosyasını düzenleyin
  1. Projeyi derleyin:

npm run build
  1. Sunucuyu başlatın:

npm start

Geliştirici Modu

# Watch mode ile geliştirme npm run dev

Konfigürasyon ⚙️

.env dosyasında şu ayarları yapabilirsiniz:

API Ayarları

# Test modu (API çağrıları yerine mock data) TEST_MODE=true # BiTaksi API (gelecekte kullanım için) BITAKSI_API_KEY=your_api_key BITAKSI_ENABLED=false # iTaksi API ITAKSI_API_KEY=your_api_key ITAKSI_ENABLED=false # Uber API UBER_CLIENT_ID=your_client_id UBER_CLIENT_SECRET=your_client_secret UBER_ENABLED=false

Genel Ayarlar

DEFAULT_CITY=istanbul DEFAULT_COUNTRY_CODE=TR DEFAULT_CURRENCY=TRY DEFAULT_LANGUAGE=tr # Varsayılan konum (İstanbul Taksim) DEFAULT_LATITUDE=41.0362 DEFAULT_LONGITUDE=28.9841

MCP Tools 🛠️

Sunucu aşağıdaki MCP araçlarını sağlar:

1. taksi_turleri_getir

Mevcut taksi türlerini listeler.

{ "saglayici": "bitaksi" // bitaksi, itaksi, uber, genel }

2. ucret_tahmini

İki konum arası ücret tahmini hesaplar.

{ "saglayici": "genel", "baslangic_enlem": 41.0362, "baslangic_boylam": 28.9841, "baslangic_adres": "Taksim, İstanbul", "hedef_enlem": 41.0082, "hedef_boylam": 28.9784, "hedef_adres": "Sultanahmet, İstanbul", "taksi_turu": "standart" }

3. taksi_cagir

Taksi çağırır ve yolculuk oluşturur.

{ "saglayici": "bitaksi", "baslangic_enlem": 41.0362, "baslangic_boylam": 28.9841, "hedef_enlem": 41.0082, "hedef_boylam": 28.9784, "taksi_turu": "luks", "ekstra_ozellikler": ["evcil_hayvan", "klima"] }

4. yolculuk_durumu

Aktif yolculuğun durumunu sorgular.

{ "yolculuk_id": "12345", "saglayici": "bitaksi" }

5. yolculuk_iptal

Yolculuğu iptal eder.

{ "yolculuk_id": "12345", "saglayici": "bitaksi", "iptal_nedeni": "Planlarım değişti" }

6. yolculuk_gecmisi

Geçmiş yolculukları listeler.

{ "saglayici": "genel", "limit": 10 }

7. surucu_iletisim

Şoför ile iletişim kurar.

{ "yolculuk_id": "12345", "saglayici": "bitaksi", "iletisim_turu": "sms", // arama, sms "mesaj": "5 dakika geç kalacağım" }

API Entegrasyonları 🔌

Şu Anda Desteklenen

  • Test/Mock Modu: Tam işlevsel simülasyon

  • Genel Taksi: Temel taksi işlevleri

Gelecek Entegrasyonlar

  • BiTaksi API: Henüz public API yok

  • iTaksi API: Geliştirici kaynakları araştırılıyor

  • Uber API: Türkiye desteği kontrol edilecek

Veri Yapıları 📊

Konum

interface Konum { enlem: number; // latitude boylam: number; // longitude adres?: string; // adres metni sehir?: string; // şehir bilgisi }

Yolculuk

interface Yolculuk { id: string; saglayici: 'bitaksi' | 'itaksi' | 'uber' | 'genel'; durum: 'aranıyor' | 'bulundu' | 'yolda' | 'geldi' | 'yolculukta' | 'tamamlandı' | 'iptal'; baslangic: Konum; hedef: Konum; taksiTuru: string; surucu?: SurucuBilgileri; ucret?: number; parabirimi: string; olusturulma: Date; guncelleme: Date; }

Ücret Tahmini

interface UcretTahmini { minFiyat: number; maxFiyat: number; parabirimi: string; tahminiSure: number; // dakika mesafe: number; // kilometre taksiTuru: string; }

Kullanım Örnekleri 💡

Claude ile Kullanım

Taksim'den Sultanahmet'e taksi çağır
Kadıköy'den Beyoğlu'na ücret tahmini ver
Aktif yolculuğumun durumunu kontrol et

MCP Client ile

// Taksi türlerini listele await client.callTool("taksi_turleri_getir", { saglayici: "bitaksi" }); // Ücret tahmini al await client.callTool("ucret_tahmini", { baslangic_enlem: 41.0362, baslangic_boylam: 28.9841, hedef_enlem: 41.0082, hedef_boylam: 28.9784, taksi_turu: "luks" });

Hata Yönetimi 🚨

Sunucu şu hata türlerini döndürür:

  • Eksik Parametre: Gerekli parametreler eksikse

  • API Hatası: Sağlayıcı API'sinde sorun olursa

  • Konum Hatası: Geçersiz koordinatlar

  • Yolculuk Bulunamadı: Belirtilen ID'de yolculuk yoksa

Hata Formatı

{ "durum": "hata", "hata": "Hata açıklaması", "kod": "HATA_KODU" }

Güvenlik 🔒

  • API anahtarları .env dosyasında saklanır

  • Rate limiting uygulanır

  • Konum bilgileri şifrelenir (production'da)

  • Kişisel veriler loglanmaz

Katkıda Bulunma 🤝

  1. Fork yapın

  2. Feature branch oluşturun (git checkout -b feature/yeni-ozellik)

  3. Değişikliklerinizi commit edin (git commit -am 'Yeni özellik eklendi')

  4. Branch'inizi push edin (git push origin feature/yeni-ozellik)

  5. Pull Request oluşturun

Roadmap 🗺️

  • BiTaksi API entegrasyonu

  • iTaksi API entegrasyonu

  • Uber API entegrasyonu

  • Gerçek zamanlı konum takibi

  • Push notification desteği

  • Ödeme entegrasyonu

  • Multi-language desteği

  • Mobile app entegrasyonu

Lisans 📄

MIT License - detaylar için LICENSE dosyasına bakınız.

İletişim 📞

Teşekkürler 🙏

Bu proje Model Context Protocol ve Türkiye'deki taksi sağlayıcıları sayesinde mümkün olmuştur.


Not: Bu proje henüz development aşamasındadır. Production ortamında kullanmadan önce tüm API entegrasyonlarını test edin.

-
security - not tested
F
license - not found
-
quality - not tested

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/skynet-base/taksi-mcp'

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