
mcp-turkiye
io.github.BerkantACUNPublished by GitHub account BerkantACUNv0.8.0Updated Oct 25, 2026
Türkiye kamu verisi: TCMB/EVDS, mevzuat, RG, deprem, MGM, eczane, otopark, metro, hal, haber
Overview
A local MCP server that gives an assistant live Turkish public data: central-bank rates and statistics, earthquakes, weather, legislation, city services and ID-
- What you can do
- Fetch central-bank FX bulletins and EVDS statistics (topic tree, series, observations, headline indicators such as inflation and policy rate). Look up Borsa İstanbul daily prices, lira crypto prices, AFAD and Kandilli earthquake lists, MGM weather, forecasts and warnings, fuel prices, Istanbul traffic, air quality, metro and İSPARK parking, İzmir pharmacies, buses and wholesale prices. Search open-data portals, the Official Gazette and legislation, including single-article text. Check public holidays, business days, the ÖSYM exam calendar, official annual figures, province and district profiles, and AA/TRT headlines. Validate Turkish ID, tax and IBAN numbers offline.
- When to use it
- Useful when you need current or historical Turkish public data with a cited source and fetch time, such as exchange rates, inflation, earthquakes, weather warnings, legislation text or city services, without visiting each institution's site.
- Requirements
- Local process run with npx; Node.js 20 or newer. No account or key needed except for the five EVDS tools, which need a free personal TCMB EVDS key in the EVDS_API_KEY environment variable. Network access to the public sources.
Installation
In SourceWeft
- Open mcp-turkiye in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
mcp-turkiye
Türkiye'nin kamu verisi, tek MCP sunucusunda. Claude, Cursor, VS Code, Codex ve MCP konuşan her asistan için: TCMB döviz kurları, TCMB EVDS istatistikleri (enflasyon, faiz, 40 binden fazla seri), BIST günlük fiyatlar, kripto TL fiyatları, AFAD ve Kandilli deprem katalogları, MGM hava durumu ve uyarıları, akaryakıt fiyatları, İstanbul anlık trafik indeksi, nöbetçi eczaneler (İstanbul, İzmir), İSPARK otopark doluluğu, İstanbul hava kalitesi, Metro İstanbul hat/istasyon/duyuruları, İzmir ESHOT canlı otobüs ve hal fiyatları, İBB/İzmir/Konya/Gaziantep açık veri portalları, Resmî Gazete fihristi ve metinleri, mevzuat.gov.tr'de kanun/yönetmelik arama ve madde madde güncel metin, resmî tatiller, ÖSYM sınav takvimi, resmî parametreler (asgari ücret, SGK taban/tavan), 81 il ve 973 ilçenin nüfus/yüzölçümü/plaka bilgisi, AA ve TRT haber başlıkları ve TCKN / VKN / IBAN biçim doğrulama — her yanıt kaynağı ve alınma zamanıyla birlikte.
Turkey's public data as one MCP server: central-bank FX rates, the central bank's EVDS statistics service (inflation, rates, 40,000+ series), Borsa İstanbul daily prices, crypto prices in lira, the national and Kandilli earthquake catalogues, state weather service observations, forecasts and warnings, district-level fuel prices, Istanbul's live traffic index, on-duty pharmacies (Istanbul, İzmir), İSPARK car-park occupancy, Istanbul air quality, Istanbul metro lines/stations/announcements, İzmir live buses and wholesale food prices, the Istanbul, İzmir, Konya and Gaziantep open-data portals (search, datasets, DataStore rows), the Official Gazette's daily index and article texts, consolidated legislation search and article-level text from mevzuat.gov.tr, public holidays, the national exam calendar, official annual figures (minimum wage, social-security floor/ceiling), province and district profiles, AA/TRT headlines and offline ID/tax/IBAN checksum validation. Every answer carries its source and fetch time.
[CI] [npm] [license: MIT] [sources]
Bağımsız projedir. mcp-turkiye hiçbir kamu kurumunun resmî hizmeti değildir. MIT lisansı yalnızca kodu kapsar; her veri kaynağının kendi kullanım şartı vardır (SOURCES.md) ve sunucunun kullanımı Kabul Edilebilir Kullanım politikasına tabidir.
Kurulum
Node.js 20+ yeterli; kurulacak başka bir şey yok. Anahtar yalnızca TCMB EVDS araçları için gerekir (ücretsiz, aşağıda); diğer her şey anahtarsız çalışır.
Claude Code
Claude Desktop — claude_desktop_config.json:
Cursor / VS Code — .cursor/mcp.json ya da .vscode/mcp.json:
Cline — MCP ayarlarında aynı mcpServers girdisi; Cline'a kurulumu kendisi yaptırmak için adım adım yönerge: llms-install.md.
Sonra asistanınıza Türkçe sorun:
"Bugünkü TCMB dolar satış kuru ne, hangi bültenden?" "Yıllık enflasyon kaç, politika faizi ne, son açıklanan ay hangisi?" "Son üç günde 4'ten büyük deprem oldu mu?" "Kadıköy'de hava nasıl, hafta sonu yağmur var mı?" "Bugün için meteorolojik uyarı var mı, Ankara'yı kapsıyor mu?" "Kandilli'ye göre son 24 saatte 3'ten büyük kaç deprem oldu?" "KPSS sonuçları ne zaman açıklanacak, ALES/3 başvurusu ne zaman?" "Bornova'da motorin kaç lira?" "İBB açık veride otopark verisi var mı, tablosunu göster." "Bugün Resmî Gazete'de hangi yönetmelikler çıktı, ilkini özetle." "KVKK'nın 6. maddesi ne diyor, özel nitelikli veri ne?" "2026 asgari ücret net kaç lira, SGK tavanı ne, hangi kanuna göre?" "İş Kanunu'nda ihbar süreleri hangi maddede, kaç hafta?" "THYAO son bir ayda ne yaptı, BIST 100'e göre?" "Yıllık enflasyon son 8 ayda nasıl seyretti?" (EVDS anahtarıyla) "İstanbul'da şu an trafik nasıl?" "29 Ekim 2026 hangi güne geliyor, iş günü mü?" "TR33 0006 1005 1978 6457 8413 26 geçerli bir IBAN mı, hangi banka?"
Uzak sunucu (Docker)
Her makineye kurmak yerine sunucuyu bir kez buluta koyup istemcileri URL ile bağlayabilirsiniz. Her sürümde imaj ghcr.io/berkantacun/mcp-turkiye adresine yayınlanır; yerleşik Streamable HTTP giriş noktası (dist/http.js) aynı araçları ve aynı zarfı /mcp yolunda sunar. Durumsuzdur (oturum kimliği yok), bu yüzden birden çok kopya arkasında da çalışır.
Docker olmadan: npm run build && HOST=127.0.0.1 PORT=8080 node dist/http.js (yerelde yalnızca kendi makinenizden erişilsin diye 127.0.0.1).
GET /healthanahtarsız200döner ve hız sınırına sayılmaz; sağlık yoklaması için.- 1 MB'tan büyük istek gövdesi
413alır;SIGTERM'de sunucu yeni bağlantı almayı bırakır, süren istekleri bitirir (en fazla 10 sn). - Herkese açık bir uçta anahtarsız çalıştırmayın: sunucu sizin adınıza kamu kurumlarına istek atan açık bir vekil olur.
- Hız sınırı bellek içidir ve kopya başınadır; birden çok kopyada toplam sınır kopya sayısıyla çarpılır.
- Konya açık veri portalı Türkiye dışındaki IP'leri reddeder; yurtdışı bölgedeki bir bulutta
acikveri_*araçları Konya için hata döner, diğer kaynaklar çalışır (Azure Container Apps, Germany West Central'da denendi).
claude.ai / Claude Desktop'a uzak sunucu olarak bağlama
Claude Desktop'ta tek makine için yukarıdaki yerel kurulum (npx) yeterlidir. Uzak bağlayıcı, sunucuyu claude.ai'de (web, mobil) ya da her makineye kurmadan kullanmak içindir. Bu proje herkese açık bir uç nokta işletmez; önce yukarıdaki imajla kendi sunucunuzu kurmanız gerekir.
Önkoşullar (Anthropic belgesi):
- Sunucu HTTPS ile genel internetten erişilebilir olmalı. Bağlantı sizin makinenizden değil, Anthropic'in sunucularından kurulur; Claude Desktop'ta da böyledir. Anthropic'in çıkış aralığı
160.79.104.0/21'dir (IP adresleri); güvenlik duvarınızda bu aralığa izin verin. - Adres
https://<alan-adınız>/mcpbiçimindedir; aktarım Streamable HTTP'dir.
Ekleme:
- Free, Pro, Max: Customize → Connectors → Add custom connector, adı ve URL'yi girin.
- Team, Enterprise: Sahip, Organization settings → Connectors → Add → Custom → Web ile ekler; üyeler Customize → Connectors'ta Connect der.
- Sohbette + → Connectors menüsünden bağlayıcıyı açıp kapatabilirsiniz.
Anahtar (MCP_TURKIYE_API_KEY):
- Ekleme penceresinde Request headers bölümü varsa: kimlik doğrulamada No sign-in seçin, başlık olarak listeden
x-api-key'i seçip değere anahtarı olduğu gibi yazın. Bu özellik beta ve yalnızca bazı kuruluşlarda açık. - Bölüm yoksa Claude
X-API-Keygönderemez ve anahtarlı sunucu her isteğe401döner. Anahtarı kapatmak sunucuyu açık bir vekile çevirir (yukarıdaki uyarı). Bu durumda Claude Desktop'ta yerel kurulumu kullanın. Anahtarsız çalıştırmaya karar verirseniz en azından güvenlik duvarında yalnızca160.79.104.0/21'e izin verin; bu aralık tüm Claude kullanıcılarının bağlayıcı trafiğidir, URL'yi bilen başka bir Claude kullanıcısı yine bağlanabilir. - Kimlik doğrulama ayarları eklendikten sonra değiştirilemez. Anahtarı değiştirdiğinizde bağlayıcıyı silip yeniden ekleyin.
Bilmeniz gerekenler:
- Claude'dan gelen bütün istekler Anthropic'in çıkış adreslerinden gelir, dolayısıyla IP başına hız sınırı bu adreslerde paylaşılır. Çok kullanıcılı bir kuruluşta
MCP_TURKIYE_RATE_LIMIT'i yükseltmeniz gerekebilir. Sunucu bir ters vekilin arkasındaysaTRUST_PROXY=1verin, yoksa bütün istekler vekilin adresinden gelmiş sayılır. - claude.ai ve Desktop'ta bir araç çağrısı en fazla 240 saniye sürebilir, bir araç sonucu yaklaşık 150.000 karakterle sınırlıdır (teknik sınırlar).
- Yalnızca kendi makinenizde çalışan (
127.0.0.1,localhost) bir sunucu claude.ai'ye bağlanamaz: Anthropic'in sunucuları ona ulaşamaz. Claude Code ise bağlantıyı kendi makinenizden kurar; yerel sunucu için yukarıdakiclaude mcp add --transport httpkomutunu kullanın.
Araçlar
* EVDS araçları ücretsiz bir kişisel anahtar ister — bkz. TCMB EVDS anahtarı. Anahtar yoksa bu beş araç nereden alınacağını söyleyen bir hata döner, diğerleri etkilenmez.
Doğrulama araçları yalnızca biçim doğrular: kontrol basamakları hesaplanır, hiçbir kuruma sorulmaz, numara makineden çıkmaz. "Geçerli" bir numaranın gerçek bir kişiye ya da kuruma ait olduğu anlamına gelmez; her yanıt bunu açıkça söyler.
Hazır sorular (prompt)
İstemcinizde slash komutu ya da menü olarak görünür:
TCMB EVDS anahtarı
EVDS, Merkez Bankası'nın istatistik servisidir (TÜFE, politika faizi, kurlar, konut fiyat endeksi, ödemeler dengesi, anketler — 40 binden fazla seri) ve ücretsiz bir kişisel anahtar ister:
- https://evds3.tcmb.gov.tr → Benim Sayfam → Kayıt (e-posta doğrulaması).
- Giriş yapınca kullanıcı adının altındaki Profilim'e tıkla.
- Sayfanın altındaki API Key Kopyala butonuna bas.
Anahtarı MCP yapılandırmasında ortam değişkeni olarak ver:
Anahtar yalnızca EVDS isteklerinin key başlığında kullanılır; hiçbir yanıtta, günlükte ya da URL'de yer almaz. EVDS bir istekte en fazla 150 gözlem verir; daha uzun aralıklar için birden çok çağrı gerekir.
Her yanıt bir zarf içinde gelir
kaynak verinin geldiği kurum ve tam URL, alindi verinin çekildiği an. Bir kur ya da deprem listesi tarihsiz sunulursa "zamansız gerçek" gibi okunur; zarf bunu engeller. Kaynak yanıt vermezse araç hata döner — tahmini bir değer asla üretilmez, hangi kurumun yanıt vermediği söylenir.
Tasarım kararları
- Her yanıt canlı. Pakette gömülü veri yoktur (tatil takvimi, plaka tablosu ve kaynağıyla gömülü resmî parametreler dışında); her araç çağrıldığı anda kurumdan çeker. Önbellek yalnızca kurumu korumak için ve kısadır: trafik indeksi 1 dk, deprem 1 dk, kur 5 dk, hava 10 dk, akaryakıt 30 dk;
alindialanı verinin tam olarak ne zaman alındığını söyler. - Anahtar yok, kayıt yok. Bütün kaynaklar kamuya açık ve anahtarsız. Ücretsiz anahtar isteyen kaynaklar (TCMB EVDS gibi) eklendiğinde isteğe bağlı olacak; anahtarsız çalışan araçlar anahtarsız kalır.
- Kamu sunucularını yormaz. Her istek zaman aşımlı, 5xx'te bir kez yeniden denenir, 4xx'te denenmez; aynı URL kısa süre önbellekte tutulur. Dünkü bülten değişmez, bir gün saklanır; bugünkü 5 dakika.
- Kaynak bozulursa biz öğreniriz. Her kaynağın gerçek uç noktasına karşı haftalık sözleşme testi koşar (
npm run test:live); format değişince CI kırmızıya döner, kullanıcının asistanı yanlış cevap vermeden. - Kişisel veri işlenmez. NVI kimlik doğrulama, e-Nabız, e-Devlet gibi giriş ya da kişisel veri gerektiren hiçbir kaynak yoktur ve eklenmeyecektir.
- Kendi ilacımız. Bu repodaki örnek istemci yapılandırması her CI'da guardmcp ile taranır.
Yol haritası
Sonraki adaylar: İETT hat/durak/sefer (SOAP), Ankara/İzmir baraj doluluk, TFF puan durumu, EPDK elektrik tarifeleri, GİB vergi takvimi. Diyanet namaz vakitleri resmî API anahtarı gerektirdiğinden beklemede. Bir kaynak eklemek bir klasör eklemektir: CONTRIBUTING.md.
Geliştirme
English
Turkey's public data for AI agents, in one MCP server. Install with npx -y mcp-turkiye (Node 20+, no keys except for the optional EVDS tools). Forty-four tools today: central-bank FX bulletins (all currencies or one, today or any past date), live crypto prices in lira from BtcTurk, the central bank's EVDS statistics (topic tree, data groups, series and observations with formulas such as year-on-year change, plus headline indicators by name — inflation, PPI, policy rate, FX, house-price index, real effective exchange rate; needs a free EVDS_API_KEY), Borsa İstanbul daily price history, AFAD earthquake catalogue queries plus Kandilli Observatory's independent list, MGM current conditions and 5-day forecasts for any province or district and its active severe-weather warnings, Opet fuel pump prices per district, Istanbul's live traffic index, today's on-duty pharmacies in Istanbul and İzmir, live İSPARK car-park occupancy (nearest-first by coordinate), Istanbul air-quality stations with AQI and pollutant readings, Istanbul metro lines, stations and service announcements, İzmir's live ESHOT buses and daily wholesale produce/fish prices, CKAN open-data search/dataset/DataStore access for Istanbul, İzmir, Konya and Gaziantep, the Official Gazette's daily index and article text, legislation search plus consolidated full text and single-article lookup from mevzuat.gov.tr, public holidays with Diyanet's religious-holiday dates, business-day checks, ÖSYM's national exam calendar (university entrance, civil-service, graduate and language exams), official annual figures (minimum wage and social-security floor/ceiling, each with its Resmî Gazete issue or statute), offline province and district profiles (population, area, plate and area codes, regions), latest headlines from AA and TRT by category, and offline checksum validation of national ID numbers, tax numbers and IBANs plus province ↔ plate-code lookup. Every answer is an envelope with the source institution, the exact URL and the fetch time; a source that does not answer produces a tool error, never a guessed value. Tool descriptions are bilingual so English-speaking models use them correctly. For remote hosting, the Docker image ghcr.io/berkantacun/mcp-turkiye runs the built-in stateless Streamable HTTP entry (node dist/http.js) at /mcp with /health; set MCP_TURKIYE_API_KEY so every request needs an X-API-Key header, and requests are rate-limited per IP (60/min by default). Data licences: SOURCES.md. Acceptable use: ACCEPTABLE_USE.md.
Lisans
Kod: MIT. Veri: her kaynağın kendi şartları, SOURCES.md.
Source: README.md at commit 68836ba
Tools
0Version history
4- v0.8.0LatestSep 22, 2026
- v0.7.0Sep 17, 2026
- v0.4.0Sep 16, 2026
- v0.3.0Sep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts