Istanbul MCP, İstanbul'a dair açık verileri MCP destekleyen yapay zekâ araçları, geliştirici ortamları ve ajan tabanlı iş akışları için erişilebilir hale getiren uzak bir Model Context Protocol sunucu
翻譯準備中
開發工具Python · TypeScriptGitHub @Batu1-1an自行安裝營運者未確認
試用過了嗎? 點一下就好,不需要登入。
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
安裝型專案無需部署網域也可驗證。個人儲存庫可透過 GitHub 登入驗證,組織儲存庫可使用上方的儲存庫驗證檔案。
Istanbul MCP, İstanbul'a dair açık verileri MCP destekleyen yapay zekâ araçları, geliştirici ortamları ve ajan tabanlı iş akışları için erişilebilir hale getiren uzak bir Model Context Protocol sunucusudur.
翻譯準備中
取自儲存庫 README
正在載入完整 README。
檢視完整 README ↗Istanbul MCP, İstanbul'a dair şehir verilerini Claude, ChatGPT, Codex, Cursor gibi MCP destekleyen yapay zekâ araçlarına bağlayan, salt okunur ve uzak bir Model Context Protocol sunucusudur.
https://istanbulmcp-production.up.railway.app/mcp/
İstanbul'da otopark, ulaşım, trafik, su kesintisi, baraj doluluğu, nöbetçi eczane, kütüphane ve mahalle profili gibi konularda çok sayıda kamusal veri var. Bu veriler farklı portallarda ve servislerde duruyor; yapay zekâ araçları veya ajanlar içinden doğrudan kullanmak çoğu zaman pratik değil.
Istanbul MCP bu boşluğu kapatır: MCP destekleyen her sohbet uygulaması, kod yazan ajan, araştırma iş akışı veya kendi otomasyonunuz tek bir endpoint üzerinden İstanbul verisiyle çalışabilir.
Kurulum anahtar gerektirmez: endpoint'i istemcinize ekleyin, çalışır. İstemci başına hız sınırı uygulanır; isteğe bağlı anahtar ve kota için erişim rehberine bakın.
Endpoint'i sondaki /mcp/ ile kullanın. Genel yapılandırma:
{
"mcpServers": {
"istanbul": {
"url": "https://istanbulmcp-production.up.railway.app/mcp/"
}
}
}
Bazı istemciler url yerine serverUrl ya da ek olarak "type": "http", "type": "remote" veya "transport": "http" ister. Kendi istemcinizin MCP ekranını esas alın.
codex mcp add istanbul --url https://istanbulmcp-production.up.railway.app/mcp/
codex mcp list
Manuel yapılandırma için ~/.codex/config.toml dosyasına [mcp_servers.istanbul] başlığı altında url = "https://istanbulmcp-production.up.railway.app/mcp/" ekleyin.
claude mcp add --transport http istanbul https://istanbulmcp-production.up.railway.app/mcp/
claude mcp list
Claude Desktop ile kullanım için ücretli abonelik gerekir.
İstanbul MCP, URL: https://istanbulmcp-production.up.railway.app/mcp/ChatGPT'de salt okunur custom MCP sunucusu Plus, Pro, Business, Enterprise ve Edu planlarında kullanılabilir; Free planda yoktur. Business, Enterprise ve Edu çalışma alanlarında yönetici izni gerekebilir. Kurulum için web veya desktop uygulamasını kullanın.
Business, Enterprise ve Edu için güncel Plugins ekranı Developer mode gerektirmez. Plus veya Pro kullanıyorsanız Developer mode gerekebilir:
İstanbul MCPhttps://istanbulmcp-production.up.railway.app/mcp/No authentication seçin. Sunucu public modda anahtarsız çalışır.@ yazın ve İstanbul MCP plugin'ini seçin. Sonra soruyu sorun.Notlar:
readOnlyHint taşır.MCP_API_KEYS veya MCP_AUTH_REQUIRED=true açıksa ChatGPT web bağlanamaz. Bu ekran statik Bearer anahtarı kabul etmez; sunucuda OAuth desteği yoktur. Public modu kullanın.ChatGPT desktop uygulaması ayrı bir MCP yolu sunar:
/mcp ile bağlantıyı kontrol edin.Global kurulum için ~/.cursor/mcp.json, proje bazlı kurulum için .cursor/mcp.json dosyasına genel yapılandırmayı ekleyin.
opencode.json:
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"istanbul": {
"type": "remote",
"url": "https://istanbulmcp-production.up.railway.app/mcp/"
}
}
}
~/.codeium/windsurf/mcp_config.json dosyasında genel yapılandırmayı kullanın; Windsurf url yanında serverUrl alanını da kabul eder.
devin mcp add istanbul --transport http --url https://istanbulmcp-production.up.railway.app/mcp/
devin mcp list
Config dosyası kullanıyorsanız (.devin/config.json, .devin/config.local.json veya ~/.config/devin/config.json) genel yapılandırmaya "transport": "http" ekleyin.
Kontrol edilen resmî kaynaklar: Codex · ChatGPT custom MCP · ChatGPT MCP · ChatGPT bağlantıları · Claude Code · Cursor · OpenCode · Windsurf · Devin CLI · Devin
Kurulumdan sonra yeni bir oturum açıp deneyin:
Taksim'e arabayla gideceğim. Yakındaki otoparkların boş yer sayısını, çalışma saatini ve haritadaki yerlerini gösterir misin?
Ulaşım
Kadıköy Rıhtım, Taksim, Levent gibi yerler için ulaşım özeti.Şehir hizmetleri
Su
Mahalle ve açık veri
Koordinatı olan kayıtlarda harita linki (maps_url) döner. Yalnız adresi bilinen kayıtlarda adres araması linki (maps_search_url) verilir; bu kayıtlar kesin konum gibi sunulmaz.
Üsküdar'da şu an nöbetçi eczane var mı?
Kadıköy'deki duraklardan bir sonraki planlı otobüs kalkışları ne zaman?
500T hattı hangi duraklardan geçiyor? Durakları yönlerine göre sıralı göster.
Bugün Marmaray'da veya metroda aksaklık var mı?
Taksim metro istasyonunda arızalı asansör veya yürüyen merdiven var mı?
Şişli civarında aktif su kesintisi veya İSKİ arızası var mı?
Baraj doluluk oranları şu an nasıl? En dolu 5 barajı listele.
Kadıköy'de yarın hangi pazar kuruluyor?
Levent yakınındaki EV şarj istasyonlarını listele.
Beşiktaş iskelesine en yakın İstanbulkart dolum noktası nerede?
Kadıköy Caferağa mahalle profili nedir?
İstanbul trafik yoğunluğu şu an hangi seviyede?
İBB açık veri kataloğunda müzelerle ilgili hangi veri setleri var?
data.ibb.gov.tr): katalog, İETT GTFS tarifesi, İstanbulkart, pazar, EV şarj, taksi durağı, kültür merkezi ve mahalle verileriapi.ibb.gov.tr): İSPARK, trafik, hava kalitesi, Metro İstanbul ve İETTHer sonuç standart bir yapıyla döner: ok, summary, data, freshness, sources, limits, warnings ve gerektiğinde next_queries. Sunucu salt okunurdur: rezervasyon yapmaz, kamu verisini değiştirmez, acil durum yönlendirmesi vermez ve kaynakta olmayan alanları üretmez.
Production yüzeyi 21 salt okunur araçtır: temel 16 araç, GTFS tarifesine ait 2 araç ve etkinlik katmanının 3 aracı. Daha önce yayımlanmış araç adları listede görünmese de çağrılabilir kalır; eski → yeni karşılıklar için geçiş tablosuna bakın.
| Araç | İşlev |
|---|---|
istanbul_health | Servis hazırlığı. |
istanbul_search_datasets | Konuya göre İBB katalog araması. |
istanbul_get_dataset | Veri seti metadata'sı ve kaynakları. |
istanbul_get_resource_schema | Resource kolonları. |
istanbul_query_resource | CKAN kayıtlarını güvenli filtre ve limitle getirir. |
istanbul_datastore_query | Operatörün izin verdiği resource'larda sınırlı SQL; izin listesi varsayılan boştur. SQL rehberi |
istanbul_nearby | Otopark, nöbetçi eczane, İstanbulkart, sosyal tesis, metro istasyonu, hava kalitesi, su arızası ve şehir katmanları için konum, ilçe veya harita alanı araması. |
istanbul_market_schedule | İlçe ve güne göre haftalık pazar takvimi; canlı açılış durumu değildir. |
istanbul_traffic_status | Şehir geneli trafik indeksi; yol bazlı değildir. |
istanbul_water_status | İSKİ arızaları (ilçe veya arıza numarası) ve baraj dolulukları. |
istanbul_mobility_nearby | Yer veya koordinat için ulaşım özeti; 39 ilçede ilçe geneli otopark listesi. |
istanbul_city_services_nearby | Nokta çevresinde WiFi; 39 ilçede kütüphane ve kültür merkezi adresleri. |
istanbul_neighborhood_profile | Sosyal yardım, bina stoku ve deprem senaryosu; anlık risk değildir. |
istanbul_transit_line | İETT hat bilgisi, durakları ve ana duraktan planlı kalkışlar; ETA değildir. |
istanbul_transport_disruptions | İETT, Metro İstanbul, Şehir Hatları ve Marmaray aksaklık ve duyuruları. |
istanbul_metro_accessibility_status | Metro ekipman toplamları ve arıza ayrıntıları; yolculuk erişilebilirliği garantisi değildir. |
istanbul_next_departures | Durak adı arama veya seçilen durağın planlı GTFS kalkışları; canlı ETA değildir. |
Sunucu hem eski (initialize) hem yeni (2026-07-28, server/discover) MCP protokolüyle çalışır. Ayrıca üç bilgi kaynağı (istanbul://coverage, istanbul://sources, istanbul://schema/catalog) ve dört Türkçe prompt (gunun_ozeti, mahalle_ozeti, veri_kesfi, yolculuk_plani) sunar.
Parametreler ve davranışlar: araç referansı · Protokol, prompt ve output schema ayrıntıları: MCP arayüzü · Durak ve tarife: GTFS durakları, GTFS planlı kalkışlar · Yer ve ilçe çözümleme · Statik şehir katmanları · Yanıt sözleşmesi
unavailable veya stale olarak işaretlenir; bu "veri yok" anlamına gelmez. Ayrıntılarpython3 -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"
pytest
python -m app.main
docker build -t istanbul-mcp:local .
Yerel sunucu GET /healthz, GET /readyz, GET /status ve POST /mcp/ uçlarını sunar. Odaklı test komutları, conformance ve opt-in canlı testler için geliştirme rehberine; ortam değişkenleri için .env.example dosyasına ve konfigürasyon sayfasına bakın.
Production servisi Railway üzerinde çalışır (dağıtım notları).
curl -fsS https://istanbulmcp-production.up.railway.app/healthz
curl -fsS https://istanbulmcp-production.up.railway.app/readyz
curl -fsS https://istanbulmcp-production.up.railway.app/status
Canlı endpoint 10 dakikada bir otomatik kontrol edilir; ulaşılamazsa repo sahibine issue açılır (izleme). Sunucu MCP Registry'de io.github.Batu1-1an/istanbul-mcp adıyla yayımlıdır (yayın rehberi).
Sürüm geçmişi · Veri işleme/gizlilik · Tarayıcıdan bağlantı · Destek / sorun bildirimi
Kod MIT Lisansı ile lisanslanmıştır. Bu lisans yalnızca kodu kapsar; veriler yayıncı kurumlara aittir. İBB Açık Veri Portalı verileri İBB Açık Veri Lisansı ile, diğer kaynaklar kendi kullanım koşullarıyla yayımlanır.
Istanbul MCP resmî olmayan, bağımsız bir projedir; İBB, İSKİ, İETT, Metro İstanbul, Şehir Hatları veya TCDD ile bağlantılı değildir.
Veriler gecikmeli, eksik veya hatalı olabilir. Nöbetçi eczane, su arızası ve ulaşım gibi kritik bilgileri resmî kaynaktan teyit edin.
İsteğe bağlı etkinlik katmanı istanbul_events_search, istanbul_event_detail ve
istanbul_events_plan araçlarını ekler. EVENTS_ENABLED=true ve bir kaynak
yapılandırması gerekir. Ticketmaster katalog, Biletinial doğrulanmış seans ve
teklif gözlemleri sağlar. Fiyatı bilinmeyen ücretsiz sayılmaz; günlük planlar
ulaşım süresi veya canlı bilet garantisi vermez.
Etkinlik rehberi: kullanım, ayarlar, mimari ve doğrulama. Üç araç açıkken varsayılan 16 araç 19 olur; GTFS de açıksa 21 araç listelenir.
Etkinlik canlı kabul kontrolü (geçici yerel DB, deploy yapmaz):
railway run .venv/bin/python scripts/check_events.py
0.4.0 ile Türkçe kategori adları, yayımlanmış çocuk yaş aralığı, kesin bitiş koşulu ve yalnız doğrulanmış fiyatlarla arama desteklenir. Tükenmiş seanslar varsayılan olarak dışlanır. Persona bulguları ve doğrulama.
# Ağsız kullanıcı-niyeti regresyonları
pytest tests/test_event_personas.py tests/test_events.py
# Opt-in: çalışan MCP üzerinde farklı kullanıcı soruları; raw cevap/secret kaydetmez
railway run .venv/bin/python scripts/events_persona_uat.py --output .data/events-persona-uat.json
istanbul_gtfs_snapshot_status | Yerel tarife verisinin yaşı ve takvim geçerliliği. |